1.9 KiB
1.9 KiB
align-domain-model-and-money-contract — Implementation Summary
Semantic Verification
Date: 2026-08-25
Checked areas:
- Future Cash Event contract: backend
UpcomingEventDtonow exposes nullableprojectedAmountas canonical Money{ currency, value }; old event-levelamountandcurrencyfields were removed from the runtime OpenAPI schema and generated frontend types. - Money semantics: coupon, dividend and maturity events return Money in the
source currency when currency and amount are known; offer and source events
without currency return
null, not zero or an invented currency. - Account access semantics: Upcoming Events still resolves account-scoped data through the existing current T-Bank connection access boundary; inaccessible accounts still short-circuit without reading upstream portfolio/events.
- Portfolio terminology: runtime Portfolio behavior was not changed; docs and specs now distinguish Portfolio Snapshot, Portfolio Position, Currency Instrument Position and Cash Balance without altering route names or storage.
- Frontend contract consumption: event page, account overview recent events,
hooks, fixtures and generated schema now consume
projectedAmountdirectly and keep the existing «Сумма неизвестна» UI fornull. - Docs as-built state: glossary and affected feature/system docs describe the delivered Money contract and current-connection account accessibility without copying Proposal, Design or Tasks as a parallel SDD artifact.
- Non-goals: routes, supported account types, token lifecycle, T-Bank upstream sources, cache TTLs, sorting, durable storage and broad module structure were not changed.
Conclusion:
The implementation matches the approved Proposal, Delta Specs and Design. The only public API contract break is the intended Future Cash Event projected amount change from separate nullable amount/currency fields to nullable Money.