43 lines
2.8 KiB
Markdown
43 lines
2.8 KiB
Markdown
## Why
|
||
|
||
В workspace четыре независимых Git-репозитория, но нет единого
|
||
воспроизводимого verdict локальной проверки. Backend `lint` изменяет исходные
|
||
файлы, backend e2e останавливается на настройке Prisma до Jest, для тестового
|
||
TypeScript нет исполнимого gate, а committed frontend OpenAPI snapshot не
|
||
сверяется с runtime-документом. Из-за этого агент может получить зелёный либо
|
||
неполный результат, не узнав об изменении исходников или дрейфе
|
||
межрепозиторного контракта.
|
||
|
||
## What Changes
|
||
|
||
- Разделить backend lint-проверку и явный auto-fix, добавить отдельные
|
||
TypeScript gates для приложения и тестов.
|
||
- Добавить сверку runtime OpenAPI с committed snapshot: она поднимает
|
||
детерминированный локальный backend, canonicalize оба полных документа во
|
||
временном хранилище, сравнивает SHA-256 и показывает diff при дрейфе, не
|
||
вызывая `openapi:sync`.
|
||
- Унифицировать local bootstrap frontend и backend на Node 22 и `npm ci`,
|
||
документировать конкретные gates и обновить scoped agent instructions.
|
||
- Обновить audit remediation registry: этот change станет единственным active
|
||
remediation для WL-P1-05, WL-P2-06, WL-P2-09 и WL-P2-11; WL-P2-05 и
|
||
WL-P2-13 будут явно отложены до стабильного Prisma migration gate.
|
||
|
||
## Capabilities
|
||
|
||
### Modified Capabilities
|
||
|
||
- `project-foundation`: Выравнивает требования к runtime/bootstrap приложений и
|
||
локальные agent verification instructions frontend и backend.
|
||
- `api-contract-generation`: Требует явной локальной runtime сверки между
|
||
backend OpenAPI и committed frontend snapshot.
|
||
|
||
## Impact
|
||
|
||
Затронуты `backend`, `frontend`, `specs` и `docs`. Изменятся backend package
|
||
scripts, TypeScript-конфигурации, local runtime metadata и документация;
|
||
generated frontend snapshot и offline-поведение `npm run verify` не изменятся.
|
||
Небольшая read-only runtime-contract команда в `specs/scripts` не имеет
|
||
manifest, сохранённых hashes, кэша, plug-in system или fixture test harness.
|
||
Не вводятся изменения пользовательского HTTP-контракта, persisted production
|
||
data, внешний сетевой доступ или T-Bank credentials.
|