Features #225
stängdFeatures #178: Samordning: generiska föreningsspecifika klippkort
Features #183: Utfärda klippkort vid registrerat köp
Utfärda kort atomärt från kontots kontantköp
100%
Beskrivning
DoD: bakom avstängd flagga utfärdar CashPurchases ett kort per enhet med kontoägare och första saldopost i samma transaktion. Låsta offertvillkor ingår i granskningsfingerprint. Återförsök ger inga dubbletter; ändrade villkor kräver ny granskning; ogiltig giltighet och gästägande avvisas. Fel mitt i utfärdande återställer även kontantköpet. MariaDB-integrationstester med syntetiska data krävs. Exkluderar katalog/varukorgsupplåsning, UI, nya acceptansrättigheter och aktivering; dessa följer i separat delärende under #183.
Acceptanskriterier
Atomärt kort+ägare+saldo/köp, låsta villkor, återförsök och rollback verifierade isolerat. Default avstängd.
Testresultat
PASS 2026-09-21: atomärt utfärdande, två enheter/två kort, snapshots, idempotens, behörighet och full rollback verifierade. Isolerad MariaDB-CI 1638102: 185 tester/3391 assertions.
CA Uppdaterad av Codex API för 21 dagar sedan
Verifierat och pushat 62b90ba55e8edc59f72a8d14f28a74c54f449eac. CI .56vFc4 PASS: 83 tester/612 assertions + 79 MariaDB-tester/1689 assertions = 162 tester. Två enheter ger två kort/ägare/startposter; expiry vid årsdagen och null; ändrade villkor, flagga/offer/type, gäster, annan ägare/förening samt fel efter första saldoposten verifierade. Hela köpet rullas tillbaka vid fel, återförsök skapar inte fler kort. Dokumentation docs/architecture/card-issuance-225.md. Ingen acceptansleverans, flaggan är default avstängd och katalog/varukorgsspärrar finns kvar. #226 köparflöde och #227 aktivering/parallell HTTP-verifiering återstår.
CA Uppdaterad av Codex API för 10 dagar sedan
- Testresultat uppdaterad (skillnader)
Slutgranskning 2026-09-21: implementation och acceptanskriterier återverifierade mot aktuella tester. Två köpta enheter skapar två separata kort med rätt ägare, källa, snapshots, giltighet och första saldopost. Återförsök bevarar originalvillkor utan dubbletter; ändrade villkor kräver ny granskning; fel efter första saldoposten återställer köp, kort, ägare och poster. Aktuell isolerad CI för commit 1638102cf16e380b2cfb66d55fd1d185827b185f passerade 185 MariaDB-integrationstester/3391 assertions.