docs: record T-Bank cache boundary evidence

This commit is contained in:
2026-09-01 05:57:05 +03:00
parent 3d2bc1eac4
commit 598dfb2bdb
+52
View File
@@ -7,6 +7,58 @@ delivery commits, точные verification commands с наблюдёнными
итог independent read-only review. Записи добавляются после archive и являются
неизменяемой историей поставки.
## 2026-09-01-harden-tbank-connection-cache-boundary
**Change:** harden-tbank-connection-cache-boundary (schema `wealth-ledger-sdd`)
**Archive path:** `specs/openspec/changes/archive/2026-09-01-harden-tbank-connection-cache-boundary`
**Specs sync:** Requirement `Frontend сохраняет когерентность кэша T-Bank
connection` обновлён в main spec `frontend-query-coherence`; post-archive strict
validation подтвердил `23 passed, 0 failed`.
### Delivery Map
| Area | Status | Outcome |
| --- | --- | --- |
| frontend | affected | Successful T-Bank connection mutation коммитит status и сбрасывает весь generated brokerage query subtree без reuse предыдущей connection boundary. |
| backend | affected | Portfolio, Account Ledger и производные Income caches допускают hit, fallback и late completion reuse только внутри opaque generation текущей persisted connection. |
| specs | affected | Approved change заархивирован, а пересмотренный Requirement синхронизирован в canonical main specs. |
| docs | affected | As-built connection, Portfolio, Account Ledger и domain glossary описывают generation isolation, frontend reset, current-generation snapshot и отдельный logout cleanup. |
### Delivery commits
| Repo | Commit | Subject |
| --- | --- | --- |
| frontend | `175727bc93876f950280d0ad35515a6d4acffbaf` | fix(tbank): reset connection-derived query cache |
| backend | `19fe7e75d59792e9c6d6b702ab192fa2d5ccc936` | fix(tbank): isolate caches by connection generation |
| specs (archive/sync) | `0386b6b26fa06014182736d1773eb2e48c0293dc` | docs(specs): archive T-Bank cache boundary change |
| docs (as-built) | `3d2bc1eac4add7cc3316c97d4d02a78fe91620d5` | docs: document T-Bank cache generation boundary |
| docs (evidence) | current evidence commit | docs: record T-Bank cache boundary evidence |
### Verification
| Command (repo) | Наблюдённый результат |
| --- | --- |
| `npm run verify` (frontend, Node 22, pre-archive) | pass; strict TypeScript, Biome, 22 Vitest files / 91 tests, Knip, dependency-cruiser и production build. |
| `npm run verify` (backend, Node 22, pre-archive) | pass; lint, application/test typecheck, 25 Jest suites / 99 tests и build. |
| `npm run verify` (docs, Node 22, pre-archive) | pass; 39 Markdown files, 0 issues, `git diff --check` clean. |
| `openspec validate harden-tbank-connection-cache-boundary --type change --strict --store wealth-ledger-specs` (specs, Node 22, pre-archive) | pass; completed change valid. |
| `openspec archive harden-tbank-connection-cache-boundary --yes --store wealth-ledger-specs` (specs, Node 22) | pass; all Tasks complete, `frontend-query-coherence` synced, change archived as `2026-09-01-harden-tbank-connection-cache-boundary`. |
| `openspec validate --specs --strict --store wealth-ledger-specs` (specs, Node 22, post-archive) | pass; `23 passed, 0 failed`. |
Все Tasks были завершены до archive. Semantic verification подтвердила
successful create/replace/delete как общую frontend/backend cache boundary:
status коммитится сразу, cached и late completions предыдущей generation не
обслуживают новый consumer, failed mutation и current-generation background
snapshot сохраняются, а logout независимо очищает session cache. Storage schema,
endpoints и OpenAPI contract не изменились.
### Independent read-only review
Verdict: **PASS**. Critical findings — `0`, Important findings — `0`.
Validation No. 1 подтвердила Requirement, Design и Tasks на итоговом
frontend/backend/docs scope без blocking implementation или specification
findings.
## 2026-08-28-portfolio-income-analytics
**Change:** portfolio-income-analytics (schema `wealth-ledger-sdd`)