Projekt

Allmänt

Profil

Handlingar

Features #231

stängd
CA CA

Features #178: Samordning: generiska föreningsspecifika klippkort

Features #186: Avräkna klipp atomärt för valda deltagare

Lås och omvalidera kontoägarens kort inför bekräftelse

Features #231: Lås och omvalidera kontoägarens kort inför bekräftelse

Tillagd av Codex API för 21 dagar sedan. Uppdaterad för 10 dagar sedan.

Status:
Closed
Prioritet:
Normal
Tilldelad:
Kategori:
Säkerhet och test
Startdatum:
2026-09-10
Deadline:
% Klart:

100%

Beräknad tid:
Risknivå:
Normal
Driftsättningspåverkan:
Ingen
Berörd miljö:
Ej tillämpligt
Regression krävs:
Nej
Reported by:
Benny Jensen

Beskrivning

Utöka kortvalet med en transaktionskrävande låst bekräftelsekontroll. Kontrollera aktivt konto, aktiv förening/artikel, aktiverad artikelregel, ägarskap, rätt korttyp, giltighet efter eventuell låsväntan och tillräckligt saldo. Jämför valt kort samt kort- och regelrevision mot tidigare förslag; förändring kräver ny granskning och får inte tyst byta till kontantbetalning eller annat kort. Inaktiv korttyp hindrar inte befintliga kort. Verifiera isolerad MariaDB och separata processer för blockerade behörighets-/saldoändringar. Scope: backendkontroll, inga avdrag, HTTP/UI, deltagarregister, delning, driftsättning eller nya DB-rättigheter. Kontrollen bevisar inte deltagarbehörighet; den ingår i kommande bekräftelseflöde.


Acceptanskriterier

Låst kontroll får endast anropas i en öppen transaktion. Färska värden och revisioner kontrolleras med ägar-/föreningsisolering; lås hålls till anroparens commit/rollback. CI visar nekad stale/obehörig/utgången kontroll och samtidighet utan saldoskrivningar.


Testresultat

PASS: låst omvalidering, stale revision, fel ägare/förening, utgångstid och samtidiga lås verifierades i isolerad MariaDB för b01e879 (92 integrationstester/1856 assertions i ursprunglig leverans). Aktuell regressions-CI 7b03fc0: 88 grundtester/663 assertions, 190 MariaDB-tester/3453 assertions och Vite-build PASS.

CA Uppdaterad av Codex API för 21 dagar sedan Handlingar #1

  • Status ändrad från New till In progress
  • % Klart ändrad från 0 till 40

CA Uppdaterad av Codex API för 21 dagar sedan Handlingar #2

Implementerat CardSelection::lockForConfirmation i befintlig transaktion. Konto/förening/artikel/regel/kort/ägare låses och färska värden kontrolleras. Avvikande kort, kortrevision eller regelrevision kräver ny granskning, inte tyst byte av kort/betalning. Giltighet kontrolleras även efter låsväntan. Inaktiv korttyp tillåter fortsatt nyttjande av befintliga kort. MariaDB 1020 från inaktuell snapshot nekas som ändrade villkor; anroparen måste låta transaktionen återställas. CI PASSED b01e8797f7ecf2839b80523f6f503967b3d97bfc, aY9dNh: 83 unit/612 assertions och 92 integration/1856 assertions. Sex separata processer för konto/förening/artikel/regel/ägare/saldo blockerades under lås; efter rollback kunde provskrivningen genomföras och återställas. Ingen saldoskrivning av kontrollen, ingen driftsättning. Se docs/architecture/card-confirmation-locks-231.md.

CA Uppdaterad av Codex API för 21 dagar sedan Handlingar #3

  • Status ändrad från In progress till Resolved
  • % Klart ändrad från 40 till 70

CA Uppdaterad av Codex API för 21 dagar sedan Handlingar #4

  • Status ändrad från Resolved till Verification
  • % Klart ändrad från 70 till 80

CA Uppdaterad av Codex API för 10 dagar sedan Handlingar #5

Verifieringsbevis granskat mot docs/architecture/card-confirmation-locks-231.md och aktuell full CI. Ingen ny kod eller driftändring behövdes.

CA Uppdaterad av Codex API för 10 dagar sedan Handlingar #6

  • Status ändrad från Verification till Ready for deploy
  • % Klart ändrad från 80 till 90

CA Uppdaterad av Codex API för 10 dagar sedan Handlingar #7

  • Status ändrad från Ready for deploy till Done
  • % Klart ändrad från 90 till 100

CA Uppdaterad av Codex API för 10 dagar sedan Handlingar #8

  • Status ändrad från Done till Closed
Handlingar

Finns även som: PDF Atom