Banking : domaine event-sourced (@octant/banking) #31
Labels
No labels
bug
enhancement
pr-split
question
security
transaction-matcher
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
momsse/octant#31
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Créer le domaine event-sourced Banking (
@octant/banking,packages/domain/banking) sur le modèle depackages/domain/authentication.Périmètre / livrables
AccountingPeriod,Bank,BankAccount,BankTransaction(*.aggregate.ts: evolve + decide)..estorm(BankAdded,BankAccountAdded/ConfigurationUpdated/Removed,BankTransactionDetected,TransactionsDetectionCompleted,BankLastTransactionCheckUpdated,BankTransactionCreated/Removed,AccountingPeriodCreated,SupportingDocumentAttached/Removed— selon décision #30).BigDecimal/entier minor units, IBAN…),*.state.ts,*.errors.ts.<entity>.fixtures.ts+ tests Given/When/Then.SupportedBanks,AccountingPeriods,BankAccounts,BankTransactions,SupportingDocuments).Respecter la « Domain package layout » et toutes les conventions du
CLAUDE.md(Effect, Duration, noas, typed errors, spans).Dépendances
@octant/event-sourcing,@octant/testing.Référence :
docs/event-storming/transaction-matcher.md+ le modèletransaction-matcher.estorm.En cours sur la branche
feat/banking-domain(PR #93, draft).Fait (typecheck + oxlint + oxfmt + 21 tests vitest verts) : package
@octant/banking+ les 4 agrégats event-sourced —Bank,AccountingPeriod,BankAccount(Create/Configure/Remove/Synchronise/UpdateLastTransactionCheck),BankTransaction(Create/Remove +SupportingDocumenten value object sur la transaction, cf. décision #30). Value objects partagésMoney/DetectedTransaction.Reste dans ce ticket : les types de read models (
SupportedBanks,AccountingPeriods,BankAccounts,BankTransactions,SupportingDocuments) + query ports. L'intégration BankApi (#32) et l'infra Postgres/projections (#33) sont hors périmètre.Les 4 agrégats event-sourced (
Bank,AccountingPeriod,BankAccount,BankTransaction+ value objectsMoney/DetectedTransaction/SupportingDocument) sont mergés via #93 (CI verte, retours de review traités).Reste de ce ticket : les types de read models (
SupportedBanks,AccountingPeriods,BankAccounts,BankTransactions,SupportingDocuments) + query ports. Ils seront livrés avec #33 (infra Postgres / projections), là où ils sont matérialisés et consommés — j'ai laissé ce ticket ouvert pour les suivre.Livré par #93 (mergée) — domaine @octant/banking complet (agrégats, fixtures, tests GWT).