Maintenance #337
stängdMaintenance #135: Produktionshårdning och slutregression
Driftsätt avgränsad gästpilot med verifierad återgång
100%
Beskrivning
Syfte: driftsätt den avgränsade kontantbaserade gästpiloten från #329 med exakt verifierad release, minsta funktionsyta och dokumenterad återgång.
Definition of Done:
- Exakt pushad SHA på main byggs i isolerad CI; releaseartefakt och SHA-256 dokumenteras.
- Produktionspreflight verifierar TLS, hemligheter, databasanslutning, schema/migrationer, diskutrymme, filrättigheter och återgångsläge utan att exponera hemligheter.
- Databas samt APP_KEY/private storage säkerhetskopieras krypterat och kan återläsas enligt #156/#157/#330 innan releaseväxling.
- Databas- och privatlagringstimers aktiveras endast med uttryckligt godkännande i produktionssteget och deras första körning samt felindikering verifieras.
- Releaseväxling och eventuella migrationer genomförs atomiskt med namngiven rollbackpunkt.
- Effektiva feature flags läses tillbaka: endast kontant gästköp i pilotscope är aktivt; konto-, klippkorts-, deltagar-, SMS-, Swish- och gallringsflöden utanför scope är avstängda.
- HTTPS, åtkomstskydd, privata sökvägar, assets, kiosk/kategori, QR, varukorg, kontantgranskning och administrativ rapport röktestas utan verkligt köp eller personuppgifter.
- Loggning, tjänstestatus, diskutrymme och backupfel kontrolleras efter växling; resultat och användarens pilotgodkännande dokumenteras.
Utanför scope: verkliga testköp, verkliga personuppgifter, konton, klippkort, deltagarinsamling, LOK-stödsbedömning, SMS, Swish och funktionsexpansion. Varje produktionsändring kräver uttryckligt stegvis godkännande.
Acceptanskriterier
PASS kräver exakt CI-verifierad SHA, krypterad backup och återgångspunkt före växling, uttryckligen godkänd backupaktivering, cash-only pilotflaggor, godkända säkerhets-/hälsokontroller samt dokumenterat användargodkännande utan verkliga köp eller personuppgifter.
Testresultat
PASS: exakt CI-release och rollbackpunkt, krypterade återläsningstestade backuper, produktion/TLS/flaggor, adminrapport/CSV, fullständigt manuellt röktest, driftkontroll samt aktiverade och förstakörda backup-timers utan fel. Piloten godkänd av användaren.
CA Uppdaterad av Codex API för 9 dagar sedan
- Relaterar till Maintenance #157: Inför daglig operativ backup med 30 dagars lagring tillagd
CA Uppdaterad av Codex API för 9 dagar sedan
- Relaterar till Maintenance #329: Fastställ omfattning och grindar för första pilotreleasen tillagd
CA Uppdaterad av Codex API för 9 dagar sedan
- Relaterar till Maintenance #336: Kör slutregression för exakt kandidat till avgränsad gästpilot tillagd
CA Uppdaterad av Codex API för 9 dagar sedan
Läsande produktionspreflight påbörjad. Första steget inventerar befintliga leveransverktyg och läser endast release-, schema-, lagrings-, backup- och tjänstestatus. Ingen releaseväxling, migration, konfigurationsändring, backupkörning eller timeraktivering ingår.
CA Uppdaterad av Codex API för 9 dagar sedan
Skrivskyddad produktionspreflight verifierad: aktiv release 0e6c6ce, schema 019 utan fel, verifierad DB-TLS, Apache/PHP-FPM aktiva, skyddade konfigurations- och backupfiler samt 14 GB ledigt. Exakt kandidat 17aa9ce passerade isolerad CI (89/670 och 197/3577, Vite PASS), artifact SHA-256 6047b02c397bcf625b10d6661ae81e3225cf92159e7782c5aa2b0855b50428e0. Granskningsbart #337-paket är lokalt förberett med låst 019->023-migration, minsta GRANT för kontanträttelser, färska backup/restore-grindar, releasespecifik cash-only-konfiguration, automatisk appåtergång och dokumenterat manuellt slutröktest. Lokala kontroller: 6 Python-tester PASS, Python-kompilering PASS, PHP syntax PASS och Bash syntax PASS. Ingen produktionsändring, migrering, flaggändring eller timeraktivering är utförd. Ändringarna är ännu inte committade.
CA Uppdaterad av Codex API för 9 dagar sedan
Driftsättningsunderlaget är committat på main som 315e0be (Prepare restricted guest pilot deployment), exakt sju filer. Arbetskopian är ren och main ligger en commit före origin/main. Push och all produktionskörning återstår och kräver separata godkännanden.
CA Uppdaterad av Codex API för 9 dagar sedan
Commit 315e0be är pushad och verifierad som origin/main. Privat inaktivt distributionspaket skapat på Remembrance i /home/bj/.local/share/foreningskiosk-pilot-337 med supportscripts från 315e0be och releaseartefakt 17aa9ce/6047b02c.... Paketkontroll: 6 Python-tester PASS, Bash-syntax PASS och release.sha256 PASS. Ingen produktionsväg, databas, tjänst, flagga eller timer ändrades. Nästa grind är sudo --check mot produktionsdatabasen.
CA Uppdaterad av Codex API för 9 dagar sedan
Webserverns skyddade vhost SHA-256 är oförändrad: 9d853f513539d0ed34bd866ac8c764266b9c7e58df0c6cbbc2564341e20eaa64. Det checksummade distributionsarkivet överfördes till Webserver; SHA-256 f868ee50f52f6caf11e1b0adf713fa806fcb870a890951ad6ff2e28d1ba0fa51 matchade. Efter uppackning passerade 6 Python-tester, Bash-syntax och release.sha256. Ingen produktionsväg eller tjänst ändrades ännu.
CA Uppdaterad av Codex API för 9 dagar sedan
Första --prepare-försöket stoppade säkert eftersom tjänstekontot inte kunde traversera bj:s privata sökväg till PHP-kontrollen. Endast den inaktiva releasekatalogen skapades; current, databas, flaggor och tjänster var oförändrade. Orsaken rättades i commit 87d8ec8 genom PHP via stdin, pushades och överfördes med verifierad fixarkivhash 4e41d9e7.... Omkörningen PASS: exakt release 17aa9ce, produktionssäkerhet, verifierad DB-TLS, routes, avstängda pilotflaggor, Apache- och PHP-FPM-syntax. Releasen är förberedd men inaktiv; inga databas-, flagg-, tjänst-, timer- eller testdataändringar gjordes.
CA Uppdaterad av Codex API för 9 dagar sedan
Färsk produktionsdatabasbackup PASS 2026-09-22T21:37:54Z: krypterad snapshot 20e30bacbdddeb53b3943c37eeed40319bc3dbe401a365663a174d766c8efe63, repositorykontroll och 30-dagars retention genomförda. Samma snapshot återlästes 21:38:45Z i isolerad nätverkslös MariaDB med matchande schemametadata; dump SHA-256 b839a222cecad8e09c36ba7c279d77775392d9aca09c1c98e20689f9e1ff7025. Källdatabasen var oförändrad. Migration har ännu inte körts.
CA Uppdaterad av Codex API för 9 dagar sedan
Godkänd produktionsmigration genomförd: schema 019 -> 023 PASS mot exakt kandidatkälla. Minsta appgrant för cash_purchase_corrections verifierad som SELECT,INSERT. Rollbackcheckpoint med schema-definition och logg finns i /var/lib/foreningskiosk-deployments/guest-pilot-337-schema019-17aa9ce... och pekar på verifierad backup 20e30bacbddd.... Ingen apprelease, feature flag eller backup-timer ändrades.
CA Uppdaterad av Codex API för 9 dagar sedan
Produktionsgrind verifierad på Webbserver 2026-09-22: krypterad APP_KEY/private-storage-backup skapades med snapshot bf19b637cf975797446e89b37f03ba229f6b4fc890e046977999529188b6d8f3 och 30-dagars retention. Samma snapshot återlästes isolerat utanför live-sökvägar; APP_KEY och samtliga 0 privata filer matchade, live storage var oförändrad och ingen felmarkör fanns. Releaseväxling är ännu inte utförd och backup-timern är inte aktiverad.
CA Uppdaterad av Codex API för 9 dagar sedan
Produktionsaktivering genomförd 2026-09-23: exakt release 17aa9ce1eed7a6f266b447eba70dff0af2924679 aktiverades atomiskt efter färska databas- och privatlagringsbevis. Effektiv produktionskonfiguration, verifierad databaskryptering och cash-only-flaggor godkändes. HTTPS/Basic Auth, /up, startsida, kiosk, varukorg, admininloggning, skyddade adminvägar, privata sökvägar samt publicerade assets verifierades med förväntade HTTP-statusar. Ingen verklig försäljning, persondata, konto-, kort-, deltagar-, SMS-, Swish-, gallringsfunktion eller backuptimer skapades eller aktiverades. Manuella autentiserade rapport/QR- och fysiska mobiltester återstår före pilotgodkännande.
CA Uppdaterad av Codex API för 9 dagar sedan
Efterkontroll efter releaseväxling: current och RELEASE pekar på 17aa9ce1eed7a6f266b447eba70dff0af2924679, med föregående release 0e6c6ce0048283211d6603e2afb214e6f1f142d8 dokumenterad. Apache och PHP-FPM är active. Privatlagringstimern är fortsatt disabled/inactive. Diskanvändning 40 %, 14 GB ledigt. Systemjournalen hade inga poster med warning eller högre sedan aktiveringen, Laravel-logg har ännu inte skapats och inga backup-failure-markörer hittades.
CA Uppdaterad av Codex API för 8 dagar sedan
Administrationsdelen av produktionsröktestet är nu godkänd: #338 stängd efter verifierat första systemadministratörskonto, HTTPS-inloggning, QR-/rapportåtkomst och säker utloggning; #339 stängd efter minsta deltagarläsrätt, fungerande rapport och CSV i Excel. Kvar i #337 är fysisk mobilrökning av kiosk/kategori, kategori-/artikel-QR, kamera/EAN, varukorg och kontantgranskning utan köp, därefter slutlig driftkontroll och separat beslut om backup-timers före pilotgodkännande.
CA Uppdaterad av Codex API för 8 dagar sedan
Alla blockerande underärenden är nu stängda: #338 produktionsadministratör, #339 rapportbehörighet och #340 kategori-QR i intern skanner. Aktiv release är 1af180a6bb935ec5d7ca2f2b6338dadabf003b9a och automatisk aktiveringskontroll PASS. Kvar för pilotgodkännande: (1) kort slutröktest på aktuell release utan köp/persondata: kiosk/kategorifilter, artikel-QR, kamera/EAN, varukorg och kontantgranskning fram till men inte inklusive bekräftelse; (2) efterkontroll av current/RELEASE, Apache/PHP-FPM, journal/applikationslogg, diskutrymme och backup-failure-markörer; (3) uttryckligt beslut om aktivering av databas- och privatlagringsbackup-timers före verklig pilotdata; (4) dokumenterat användargodkännande och därefter statusflöde till Closed.
CA Uppdaterad av Codex API för 8 dagar sedan
Användaren godkände det manuella slutröktestet på aktiv produktion 1af180a: samtliga överenskomna steg fungerade som tänkt. Testet omfattade kiosk/kategori inklusive Övrigt, QR/EAN-skanning och upprepad skanning, varukorg, antal/spara/totalsumma samt kontantgranskning utan köpbekräftelse; testvarukorgen städades enligt checklistan. Kvar före pilotgodkännande är slutlig driftkontroll och uttryckligt beslut om backup-timrarna.
CA Uppdaterad av Codex API för 8 dagar sedan
Slutlig Webserver-kontroll PASS efter röktest: current/RELEASE 1af180a, checkpoint visar previous 1600353, Apache och PHP-FPM active, 14 GB ledigt (41 % använt), inga journalposter warning+, ingen Laravel-fellogg och inga backup-failure-markörer. Privatlagringstimern är disabled/inactive. Skrivskyddad remembrance-kontroll: databasbackuptimern disabled/inactive, backupservicens senaste Result=success och ExecMainStatus=0, MariaDB running med RestartCount=0 samt 25 GB ledigt. Nästa grind är uttryckligt beslut om att aktivera båda timers före verklig pilotdata.
CA Uppdaterad av Codex API för 8 dagar sedan
Användaren har uttryckligen godkänt aktivering av både databasbackup-timern på remembrance och privatlagringsbackup-timern på Webserver. Aktivering och första verifierade körning görs sekventiellt för att undvika samtidig restic-repositorylåsning. Resultat, success/failure-markörer och nästa körtid ska verifieras innan pilotgodkännande.
CA Uppdaterad av Codex API för 8 dagar sedan
Databasbackup aktiverad på remembrance efter uttryckligt godkännande. Timer enabled/active; första körningen Result=success, ExecMainStatus=0 och tjänsten åter inactive. Krypterad snapshot 6ab7cf4900207ee3f342cc2903dabce10bcd8aee5068bba112ed8fcf8199a8ea skapad 2026-09-23T20:19:26Z med keep-within-daily-30d. Ingen failure-markör. Nästa körning schemalagd 2026-09-24 cirka 02:15. Repositorykörningen är avslutad före aktivering på Webserver.
CA Uppdaterad av Codex API för 8 dagar sedan
Privatlagringsbackup aktiverad på Webserver efter uttryckligt godkännande. Timer enabled/active; första körningen Result=success, ExecMainStatus=0 och tjänsten åter inactive. Krypterad snapshot 16816d91f5675854ad718d12a9055ced5a239e61504c25d229a44e6b0849e6aa skapad 2026-09-23T20:22:27Z med keep-within-daily-30d. Ingen failure-markör. Nästa körning schemalagd 2026-09-24 cirka 04:47. Båda produktionsbackuperna är nu aktiva och verifierade. Samtliga tekniska DoD-punkter för #337 är uppfyllda; endast uttryckligt pilotgodkännande och statusflöde återstår.
CA Uppdaterad av Codex API för 8 dagar sedan
- Testresultat uppdaterad (skillnader)
Användaren har uttryckligen godkänt den avgränsade gästpiloten. Slutläge: release 1af180a aktiv med rollback till 1600353; cash-only pilotflaggor och schema 023 verifierade; HTTPS, åtkomstskydd, privata sökvägar, assets, administration, rapport/CSV, QR, kiosk, kategori, kamera/EAN, varukorg och kontantgranskning godkända utan verkligt köp eller persondata. Databas- och privatlagringsbackup är enabled/active, första körningar lyckades med 30 dagars retention och inga failure-markörer. Definition of Done är uppfylld.