fix: make SQLite migrations and e2e reproducible
This commit is contained in:
@@ -36,18 +36,15 @@ Unit specs colocated в `src/**/*.spec.ts`; HTTP/integration — `test/`.
|
||||
Полный `npm run verify` включает lint, оба typecheck, Jest и build.
|
||||
`npm run test:openapi-contract` — отдельный required check при wire contract change.
|
||||
|
||||
`npm run test:e2e` существует, но известный Prisma migration blocker описан в
|
||||
[ограничении сквозной проверки](../../../docs/development/verification.md#известное-ограничение-сквозной-проверки) и WL-P2-05
|
||||
[registry](../../../docs/development/audit-remediation.md). Скрипт использует
|
||||
фиксированную `/tmp/wealth-ledger-e2e.db`; не запускай его конкурентно как
|
||||
независимые DB tests. Для isolation выбери отдельную test DB и runner configuration.
|
||||
Если задаче нужна HTTP/DB proof, установи применимость blocker и выполни доступную
|
||||
изолированную проверку. Не объявляй покрытым то, что до tests не запустилось;
|
||||
сохрани точный failure и оставшуюся проверку. Unit/Swagger success не заменяет e2e.
|
||||
|
||||
Для auth/cards DB-инвариантов используйте `npm run test:sqlite`: отдельная
|
||||
временная база на suite, migrations с `RUST_LOG=info`, configured HTTP и реальная
|
||||
Prisma. Для schema/data changes дополнительно `npm run test:durability -- <baseline>`.
|
||||
Матрица рисков и подготовка совместимой предыдущей сборки —
|
||||
`npm run test:e2e` запускает все HTTP suites через изолированный SQLite runner;
|
||||
`npm run test:sqlite` — только auth/cards. Каждая suite получает новую временную
|
||||
базу со штатными migrations. Прямой Jest без runner отклоняется до DB-запросов.
|
||||
`prisma.config.ts` исключает влияние унаследованного `RUST_LOG=warn/error`,
|
||||
вызывающего ошибку fresh migration на Prisma 7.9.1. Подробности и регрессия запуска —
|
||||
[Backend README](../../README.md#реальная-sqlite-и-сохранность-данных).
|
||||
Эти проверки не снимают ограничение общего `test:e2e` автоматически.
|
||||
HTTP suites требуют разрешения открывать локальные порты. Ошибка sandbox
|
||||
не считается успешным тестом; повторите проверку в подходящем окружении.
|
||||
|
||||
Для schema/data changes дополнительно `npm run test:durability -- <baseline>`.
|
||||
Матрица рисков и подготовка совместимой предыдущей сборки — в том же README.
|
||||
Mock Prisma не заменяет доказательство реальной DB concurrency.
|
||||
|
||||
Reference in New Issue
Block a user