test: replace metadata sleeps with upstream start barriers (WealthLedger/backend#63) #102

Merged
codex-bot merged 1 commits from test/63-barriers-metadata-operations into develop 2026-10-15 14:46:10 +03:00
Owner

Refs #63

Что изменено

  • tbank-metadata-persistence: три delay перед конкурентными действиями (coalescing, delete/replace, credentials failure) заменены на сигнал started из мока upstream; два delay перед проверками удалены, так как не давали доказательства (settled() уже ждёт, а проверка «не вызывалось» не требует ожидания). Остался только delay внутри settled() (опрос с верхней границей).
  • tbank-operations-sync: один кейс (overlapping atomic groups) переведён на сигнал started.

Что проверено

  • Мутанты: в operations-sync кейс forced visible period падает без delay (порядок history→screen реально зависит от записи в БД). Поэтому он оставлен с delay, а не заменён на state(running): барьер состояния изменил результат теста, и такой порядок требует отдельного разбора.
  • npm run verify: 40 suites, 268 tests, зелёные. npm run test:e2e: 21/21 suites зелёные.

Ограничения (#63 НЕ закрывается)

  • В operations-sync осталось ~14 delay. Они не эквивалентны барьеру: каждый требует разбора того, на что именно он полагается (как показал кейс forced visible). Механическая замена не допустима.
  • Не сделано: catalog (конкурирующий producer), portfolio.service.spec, rollback fault после первого Portfolio write, доказательство claimed-fence в publish.
  • Поэтому PR не использует Closes.
Refs #63 ## Что изменено - `tbank-metadata-persistence`: три `delay` перед конкурентными действиями (coalescing, delete/replace, credentials failure) заменены на сигнал `started` из мока upstream; два `delay` перед проверками удалены, так как не давали доказательства (`settled()` уже ждёт, а проверка «не вызывалось» не требует ожидания). Остался только `delay` внутри `settled()` (опрос с верхней границей). - `tbank-operations-sync`: один кейс (overlapping atomic groups) переведён на сигнал `started`. ## Что проверено - Мутанты: в `operations-sync` кейс `forced visible period` падает без `delay` (порядок history→screen реально зависит от записи в БД). Поэтому он оставлен с `delay`, а не заменён на `state(running)`: барьер состояния изменил результат теста, и такой порядок требует отдельного разбора. - `npm run verify`: 40 suites, 268 tests, зелёные. `npm run test:e2e`: 21/21 suites зелёные. ## Ограничения (#63 НЕ закрывается) - В `operations-sync` осталось ~14 `delay`. Они не эквивалентны барьеру: каждый требует разбора того, на что именно он полагается (как показал кейс forced visible). Механическая замена не допустима. - Не сделано: `catalog` (конкурирующий producer), `portfolio.service.spec`, rollback fault после первого Portfolio write, доказательство `claimed`-fence в `publish`. - Поэтому PR не использует `Closes`.
codex-bot added 1 commit 2026-10-15 14:20:03 +03:00
test: replace metadata sleeps with upstream start barriers (WealthLedger/backend#63)
Backend verify / commits (pull_request) Successful in 59s
Backend verify / security (pull_request) Successful in 14s
Backend verify / verify (pull_request) Successful in 5m23s
898e85184c
codex-bot merged commit ec6d9a2639 into develop 2026-10-15 14:46:10 +03:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: WealthLedger/backend#102