feat(ldd): реестр утверждений, evidence gate и runtime-проверки

This commit is contained in:
2026-10-27 21:46:07 +03:00
parent 0ac75bcd5c
commit 4130a1af2f
8 changed files with 1400 additions and 1 deletions

View File

@@ -52,7 +52,10 @@ progress `:8083`, web `:8090`. Интерфейс: `http://localhost:8090`.
```bash
./gradlew ktlintCheck detekt test # линтеры (строгий режим) + тесты
./gradlew evidenceCheck # LDD: P0-claims должны иметь зелёные свидетельства
./gradlew ktlintFormat # автоформат Kotlin
./scripts/ldd-runtime.sh # runtime-smoke полного стека на одноразовой БД
./scripts/ldd-migration-upgrade.sh # upgrade с master-схемы
```
- `ktlint` отвечает за формат, `detekt` — за качество (сложность, вложенность, ошибки).
@@ -61,7 +64,10 @@ progress `:8083`, web `:8090`. Интерфейс: `http://localhost:8090`.
- Gradle daemon фиксируется на JDK 21 (`gradle/gradle-daemon-jvm.properties`): detekt 1.23
не работает на JDK 25.
- Тестовая инфраструктура — `libs:test-support` (JUnit 5, MockK, Testcontainers `postgres:18`).
- CI merge gate — `.gitlab-ci.yml`: `./gradlew --no-daemon test ktlintCheck detekt`
- **LDD** — реестр проверяемых утверждений `docs/evidence/claims.json`;
P0 без зелёного теста валит `./gradlew evidenceCheck`. Runtime- и
migration-свидетельства — отдельные скрипты из `scripts/`.
- CI merge gate — `.gitlab-ci.yml`: `./gradlew --no-daemon test ktlintCheck detekt evidenceCheck`
на push/MR. Runner должен разрешать privileged `docker:dind` для Testcontainers.
## Запуск в Docker (для сервера)