Maintenance #420
öppenFeatures #293: Rensa utgångna personfält i purchase_participants
Maintenance #416: Fastställ och fånga LOK-referensår för deltagarsnapshot
Leverera LOK-klassificering och granskningsflöde till produktion
70%
Beskrivning
Mål: leverera den redan verifierade LOK-klassificeringen och den tenantavgränsade granskningsvyn från exakt commit c4aa6e1 till produktion med återställningsskydd.
Definition of Done:
- Leveranspaketet binds till exakt commit c4aa6e1 och dess interna kontrollsummor verifieras på Webserver.
- En färsk krypterad databasbackup tas och provåterställs isolerat innan någon produktionsmigrering.
- Aktivt schema och release verifieras, alla väntande migrationer till och med 028 granskas och schema 028 installeras endast efter separat godkännande.
- Releasen förbereds inaktivt och verifierar produktionssäkerhet, databas-TLS, schema, tenantbehörighet, LOK-rutter, vy och byggda tillgångar utan att ändra current-länk eller tjänster.
- Produktionsaktivering sker först efter separat godkännande och följs av hälsa, autentisering, tenantisolering, LOK-vy och skyddade sökvägar samt dokumenterad rollbackpunkt.
- Ingen deltagaruppgift, klassificering, testtransaktion eller annan verksamhetsdata skapas eller skrivs ut under leveransen.
Utanför scope: rättelseflödet i #419, historisk backfill, automatisk gallring, ändring av rättsligt beslut och behandling av verkliga deltagarvärden. Verifieringsmiljö: produktionsdatabasen på remembrance och inaktiv/aktiv release på Webserver.
Acceptanskriterier
Exakt c4aa6e1 levereras med provåterställd backup, schema 028, inaktiv kontroll, separat migrations- och aktiveringsgodkännande samt verifierad tenantisolering och rollback.
Testresultat
PASS 2026-09-30: CI c4aa6e1 status passed och artefakt SHA-256 fe5bf3ffbe42 verifierad skrivskyddat på remembrance; 19 relevanta Python-leveranstester; Python-kompilering; PHP-lint; Git Bash syntax; byggd LOK-CSS och oförändrade scannerfiler verifierade. Linux-specifika test-web-release.py och test-mobile-activation.py kan inte importeras i Windows (pwd/fcntl) och ska köras på leveransvärden efter commit. Ingen produktionsändring.
PASS 2026-09-30: användaren bekräftar att samtliga tre manuella acceptanspunkter fungerade som tänkt. testorgadmin-777 ser LOK-länk och tom granskningsvy i egen testförening på desktop och mobil utan horisontell rullning. Samma konto nekas 403 för förening 1. testadmin-777 utan föreningsmedlemskap nekas också 403. Godkänd produktionsaktivering av c4aa6e167090573c7b59b9948190ff5a0f629fa4 slutfördes 2026-09-30T14:41:47Z med schema 028, kontrollerat rootbevis och appkontots nollradsprov. Automatiska efterkontroller och Apache/PHP-FPM passerade. Föregående release: 882a9c6e43f013d5e4a648b7ad8b838a01873540. Leveransens Definition of Done uppfylld; inga nya deltagardata eller funktionsflaggor aktiveras genom detta avslut. Rättelse, backfill och gallring ligger utanför ärendets scope.
CA Uppdaterad av Codex API för en dag sedan
- Status ändrad från New till In progress
- % Klart ändrad från 0 till 40
Produktionsleveransen har startats. Första steget är att bygga och verifiera ett reproducerbart leveranspaket bundet till exakt commit c4aa6e1; ingen produktionsanslutning eller ändring görs i detta steg.
CA Uppdaterad av Codex API för en dag sedan
- Testresultat uppdaterad (skillnader)
Lokalt leveransstöd färdigt för commitgranskning: wrapper för exakt c4aa6e1, skrivskyddad releasekontroll och separat schema 025→028-skript med färsk backup-/återställningsspärr. Ingen produktionsändring gjord.
CA Uppdaterad av Codex API för en dag sedan
Supportcommit 157f466 skapad på main: Add LOK participant review delivery refs #420. Committen innehåller endast fem leverans-, preflight-, test- och databasuppgraderingsfiler. 19 relevanta tester, Python-kompilering, PHP-lint och Bash-syntaxkontroll har passerat. Ingen push eller produktionsändring har gjorts.
CA Uppdaterad av Codex API för en dag sedan
Leveranspaket skapat på remembrance och verifierat på Webserver: foreningskiosk-lok-participant-review-420-157f466.tar.gz, SHA-256 d126d556821128a65eadb08afe0463a1fc576685d49e84cd39c874382d84c00e. Paketet binder support 157f466 till release c4aa6e1; yttre/inre manifest, releaseartefakt, 14 Linux-tester, Python-kompilering, PHP-lint och Bash-syntax passerade. Databaspreflighten kräver root på remembrance och har inte körts; ingen backup, migrering, releaseförberedelse eller produktionsändring har gjorts.
CA Uppdaterad av Codex API för en dag sedan
Färsk krypterad databasbackup och isolerad provåterställning passerade på remembrance; återställningssnapshot 737a52f5b98b. Källdatabasen var oförändrad. Schema-preflighten startade inte eftersom det avsiktligt 0644-satta Bash-skriptet anropades direkt i stället för via bash; ingen migrering eller annan databasändring gjordes.
CA Uppdaterad av Codex API för en dag sedan
PASS på remembrance: exakt CI-källa c4aa6e1, aktivt schema 025, väntande migrationer 026–028 och Flyway-validering verifierade skrivskyddat. Färsk återställningspunkt är snapshot 737a52f5b98b. Ingen databasändring utfördes; separat godkännande inväntas för produktionsmigrering till schema 028.
CA Uppdaterad av Codex API för en dag sedan
Godkänd produktionsmigrering genomförd på remembrance: schema 025 -> 028 verifierat efter provåterställd backup 737a52f5b98b. Rollbackkontrollpunkt: /var/lib/foreningskiosk-deployments/lok-participant-review-420-schema025-c4aa6e167090573c7b59b9948190ff5a0f629fa4. Ingen apprelease, feature flag, grant eller verksamhetsrad ändrades. Nästa steg är inaktiv releaseförberedelse på Webserver.
CA Uppdaterad av Codex API för en dag sedan
Inaktiv release c4aa6e1 installerades på Webserver men preflight stoppade säkert vid kontrollsteget 'database TLS and schema 028'; current-länk, Apache, credentials och databas var oförändrade. Ett separat skrivskyddat diagnosverktyg med checksumma 66d0ad93c5df har syntaxverifierats och lagts 0600 i den privata leveranskatalogen. Verktyget redovisar endast schema-/TLS-resultat och antal, aldrig deltagarvärden eller hemligheter.
CA Uppdaterad av Codex API för en dag sedan
Root cause confirmed: Webserverns begränsade applikationskonto saknar avsiktligt SELECT på flyway_schema_history. Flyway-historiken är redan verifierad som root av databasuppgraderingen på remembrance; releasepreflighten ska verifiera TLS och de faktiska schema-028-objekten utan utökade grants. Lokal korrigering tar bort endast historiktabellsfrågan och behåller kontroller av 14 kolumner, index, FK, triggers, noll backfill, tenant-rutter och byggda tillgångar. 9 relevanta tester, diff-check och PHP-lint passerar. Ingen ny grant eller produktionsändring.
CA Uppdaterad av Codex API för en dag sedan
Commit 964ae6c pushad till origin/main och CI passerade. Rent R2-paket skapat från support 964ae6c och apprelease c4aa6e1: foreningskiosk-lok-participant-review-420-964ae6c-r2.tar.gz, SHA-256 6209a4edb558361fb55af6eb15ab47cfecd388ab62e4c1f1268b233eae4106b4. Paketet är överfört och fullständigt verifierat på Webserver: manifest, 14 Linux-tester, Python-kompilering, PHP-lint, Bash-syntax och releaseartefakt PASS. Ingen aktivering gjord.
CA Uppdaterad av Codex API för en dag sedan
Diagnos bekräftade att DB-kontot saknar SELECT på purchase_participants, medan schemaobjekt i information_schema och artikeltabellen är läsbara. Releasepreflighten verifierar fortsatt kolumner, index, FK, triggers och artiklarnas metadata, men utelämnar nu direkt radräkning i den skyddade deltagartabellen. Frånvaron av historisk backfill är verifierad av root under schema-028-migreringen på remembrance. 9 relevanta tester, PHP-lint och diff-check passerar; ingen DB-grant eller produktionsändring.
CA Uppdaterad av Codex API för en dag sedan
DB-diagnos bekräftade nekad direktläsning av purchase_participants för appkontot. Preflighten korrigerades för att inte fråga den tabellen; schema-028 migreringsskriptet verifierade noll backfill under root-körningen. Commit 9cc9931 pushad, CI passed. R3-paket SHA-256 ff5f2e56c799d86db4badb522457d89d9e27f879942808198b1a6d09c71978ae verifierat på Webserver: 14 Linux-tester, PHP-lint, Python-kompilering och Bash-syntax PASS. Inaktiv releaseförberedelse behöver köras från interaktiv SSH-terminal då sudo kräver lösenordsinmatning; ännu inte utförd.
CA Uppdaterad av Codex API för en dag sedan
R3-preflight stannar fortfarande före artikelräkningen. Tidigare diagnos verifierade att metadatafrågor kunde köras men inte att förväntade objekt faktiskt var synliga; tidigare slutsats om fullständigt verifierade schemaobjekt korrigeras här. Befintligt produktionsgrantskript ger endast SELECT på sju äldre deltagarkolumner, medan LOK-vyn använder nya metadata och klassificeringskoden SELECT *. Samlad skrivskyddad diagnos upplagd i R3-katalogen (SHA-256 293f09d6d027ed98a5676e3ab4b9ccd9671247ae90aae960e08b992723059fd4). Den skriver ut varje schemavillkor och nollraders läsprober med enbart SQLSTATE/felkod vid nekad läsning. PHP-lint passerar. Produktionsbehörigheter behöver bekräftas före fortsatt leverans; ingen behörighet ändrad.
CA Uppdaterad av Codex API för en dag sedan
- Blockerad av Maintenance #421: Begränsa produktionsbehörigheter för LOK-granskning och klassificering tillagd
CA Uppdaterad av Codex API för en dag sedan
Senaste skrivskyddade produktionsdiagnosen: TLSv1.3 och samtliga elva schema_checks passerar. Befintliga rapportkolumner kan läsas; LOK-läsning nekas med 1143 och klassificeringens SELECT * med 1142. Fyra triggerkroppsmarkörer är false. Samma MariaDB-avbild har nu provats nätverkslöst med samtliga migrationer: begränsat appkonto ser två triggernamn men ACTION_STATEMENT är NULL; root ser definitioner som exakt matchar migration 028. Produktionsdefinitionerna måste verifieras som DBA innan preflight ändras. #421 blockerar leveransen. Ingen produktionsändring eller aktivering gjord.
CA Uppdaterad av Codex API för en dag sedan
Releasekontrollen är nu förberedd lokalt för att kräva rootägt 0600-kontrollbevis från DBA-kontrollen i #421, bundet till c4aa6e1, schema 028 och exakta triggerhashar, högst sex timmar gammalt. Triggernamn/händelser kontrolleras fortfarande med appkontot, men inte de skyddade kropparna. Samma PHP-kontroll provar appkontots exakta kolumnrättigheter och tillåtna/nekade nollradsoperationer. 5 leveranstester och 3 migrationstester PASS, PHP-lint PASS; den riktiga PHP-behörighetskontrollen verifierad isolerat före/efter GRANT och efter REVOKE. Produktionsrelease förblir inaktiv. Ingen ny migrering behövs för denna åtgärd.
CA Uppdaterad av Codex API för en dag sedan
Supportpaket foreningskiosk-lok-access-421-842c982 är staged och manifestverifierat på Webserver via bok. Fem paketerade leveranstester och native PHP-lint PASS. current verifierad oförändrad på 882a9c6e43f013d5e4a648b7ad8b838a01873540. Ingen --prepare/--apply körd; inväntar separat godkänd och verifierad behörighetsändring i #421 samt överföring av rootägt kontrollbevis.
CA Uppdaterad av Codex API för en dag sedan
Efter godkänd GRANT i #421 har lok-access-evidence.json överförts till paketets stagingkatalog på Webserver, 0600. SHA-256 4d14ae1c337c14c0931b14fe69d930f353405553203c798570b5f9cff2be8996 verifierat mot remembrance. Paketets validate_evidence PASS för exakt release/schema/grants/triggerhashar och färsk tid 2026-09-30T14:31:53.220022+00:00. Användaren får nu samlad sudo-körning för rootägd installation av bevis och --prepare. Ingen aktivering är gjord eller inkluderad.
CA Uppdaterad av Codex API för en dag sedan
Användaren rapporterar lyckad inaktiv releaseförberedelse på Webserver 2026-09-30 16:35:44 CEST för c4aa6e167090573c7b59b9948190ff5a0f629fa4. Bevisets kontrollsumma, färskt rootägt trigger-/behörighetsbevis, appkontots schema 028 och nollradsprov, TLS, routes, auktorisering, responsiva assets samt Apache/PHP-FPM-syntax passerade. Ingen current-länk, konfiguration, flagga, tjänst, databasrad eller timer ändrades. #421 är löst. #420 kvarstår: separat godkänd produktionsaktivering samt autentiserad manuell desktop-/mobil- och föreningsavgränsningskontroll.
CA Uppdaterad av Codex API för en dag sedan
Användaren godkände 2026-09-30 produktionsaktivering av c4aa6e167090573c7b59b9948190ff5a0f629fa4 på Webserver efter lyckad inaktiv preflight. Samlad, värdavgränsad körning lämnas för paket 842c982 med --apply och verifiering av aktiv release och tjänster. Sudo och mobiltest-lösenord matas endast i användarens terminal. Ingen aktivering utförd av assistenten; inväntar körresultat och därefter autentiserad manuell kontroll. Inga nya schema-, grant- eller flaggändringar ingår.
CA Uppdaterad av Codex API för en dag sedan
Användarens produktionslogg bekräftar aktivering 2026-09-30T14:41:47Z på Webserver av c4aa6e167090573c7b59b9948190ff5a0f629fa4, tidigare 882a9c6e43f013d5e4a648b7ad8b838a01873540. Manifest, färskt rootägt grant-/triggerbevis, appkontots nollradsprov, schema 028, TLS, releasekontroll och syntax passerade. Atomärt releasebyte och PHP-FPM reload genomförda; Apache och PHP-FPM active. HTTPS, autentisering, LOK-rutter, skyddade sökvägar och assets passerade. Ingen databasrad, konfiguration, flagga, personuppgift, köp eller backuptimer ändrad av aktiveringen. Automatisk releaseåterställning finns i leveransskriptet; tidigare release dokumenterad. Kvar innan avslut: autentiserad manuell kontroll av LOK-länk/tom vy på desktop och mobil samt 403 för annan förening och systemadmin utan föreningsmedlemskap. HTTP 302-proven bevisar inte den inloggade användarupplevelsen.
CA Uppdaterad av Codex API för en dag sedan
- Status ändrad från In progress till Resolved
- % Klart ändrad från 40 till 70
- Testresultat uppdaterad (skillnader)
PASS 2026-09-30: användaren bekräftar att samtliga tre manuella acceptanspunkter fungerade som tänkt. testorgadmin-777 ser LOK-länk och tom granskningsvy i egen testförening på desktop och mobil utan horisontell rullning. Samma konto nekas 403 för förening 1. testadmin-777 utan föreningsmedlemskap nekas också 403. Godkänd produktionsaktivering av c4aa6e167090573c7b59b9948190ff5a0f629fa4 slutfördes 2026-09-30T14:41:47Z med schema 028, kontrollerat rootbevis och appkontots nollradsprov. Automatiska efterkontroller och Apache/PHP-FPM passerade. Föregående release: 882a9c6e43f013d5e4a648b7ad8b838a01873540. Leveransens Definition of Done uppfylld; inga nya deltagardata eller funktionsflaggor aktiveras genom detta avslut. Rättelse, backfill och gallring ligger utanför ärendets scope.