Features #117
stängdSkapa initial systemadmin-grund
Tillagd av Codex API för 25 dagar sedan. Uppdaterad för 23 dagar sedan.
100%
Beskrivning
Förbered systemadmin som första administrativa nivå.
Acceptanskriterier:
- Systemadminrollen finns representerad.
- Systemadmin kan användas för kommande hantering av föreningar och artiklar.
- Föreningsadmin krävs inte i första steget.
Acceptanskriterier
Förbered systemadmin som första administrativa nivå.
Acceptanskriterier:
- Systemadminrollen finns representerad.
- Systemadmin kan användas för kommande hantering av föreningar och artiklar.
- Föreningsadmin krävs inte i första steget.
Testresultat
Avstämning 2026-09-08, befintliga bevis (inte ny testkörning): | #117 | Slutfört inom scope | Systemadminroll, bootstrap och administrativ inloggning med tester. |. Se docs/issue-audit-2026-09-08.md. Ingen driftsättning i statusuppdateringen; framtida release kräver ny konsekvensbedömning.
CA Uppdaterad av Codex API för 24 dagar sedan Handlingar #1
Implementerat första behörighetsgrunden i 3596fc8: User-modell mot befintligt schema, web-sessionguard, system-admin Gate och middleware system.admin. Kräver autentiserad aktiv användare med is_system_admin; gäst 401 och otillåten/avstängd användare 403. Mass assignment blockeras. Sju regressionstester tillagda. Inga publika adminroutes, konton eller produktionsändringar skapade. Riktig telefon-/lösenordsinloggning, initial kontoprovisionering och UI återstår; rollen ersätter inte tenant-isolering. Dokumentation docs/architecture/authorization.md. Ärendet lämnas öppet.
CA Uppdaterad av Codex API för 24 dagar sedan Handlingar #2
Verifiering klar: 15 tester/36 assertions godkända offline med identisk composer.lock. Första CI-försöket stoppades före tester av externa GitHub HTTP 504 vid beroendehämtning. Omkörning av hela CI på samma commit 3596fc8 godkänd med releasepaket. Ingen driftsättning gjord; webbplatsen ligger kvar på 35fcbd5.
CA Uppdaterad av Codex API för 24 dagar sedan Handlingar #3
Serverdel för administrativ sessionsinloggning implementerad i 787da1d. GET/POST/DELETE /admin/session: CSRF-token/status, inloggning och utloggning. Befintliga telefonidentiteter och separata lösenordshashar används; aktiv systemadmin och verifierad telefon krävs. Generiska fel, bcrypt/dummyhash, försöksspärr per telefon/IP, byte av sessions-ID/CSRF och invalidering vid logout. Inga konton, HTML-vyer eller produktionsändringar skapade. CI godkänd: 22 tester/80 assertions. Credential-repository ersätts i HTTP-testerna; MariaDB-integration, faktisk sessionsåterläsning, initial kontoprovisionering och UI återstår före driftsättning. Köparregistrering enligt #130 ingår inte. Dokumentation: docs/architecture/authorization.md.
CA Uppdaterad av Codex API för 24 dagar sedan Handlingar #4
MariaDB-integration verifierad i CI, commit 7f839cf. Foundation 22 tester/80 assertions och riktig databassvit 7 tester/25 assertions, inga överhoppade testfall. Testar SQL-inloggning, återläsning via session-cookie/ny guard, fel lösenord, avstängt konto, overifierad telefon, rollåterkallelse och avstängning efter login samt att profiltelefon inte blir identitet. Tillfällig MariaDB kör network=none med endast intern loopback; separat PHP-test delar den isolerade namnrymden. Särskilt testkonto begränsat till DML i testschemat, inga produktionskonton eller TLS-inställningar ändrade. CI-runner uppdaterad under lås med backup. Databascontainern verifierat borttagen efter test. Releasepaket godkänt, ej driftsatt. Nästa steg: säker initial kontoprovisionering och inloggningsvy. Sessionslagring mellan riktiga PHP-processer/browser återstår.
CA Uppdaterad av Codex API för 24 dagar sedan Handlingar #5
Implementerat admin:bootstrap i 7aadcee. Endast interaktivt CLI med dold lösenordsinmatning utan klartextfallback, upprepat lösenord och explicita bekräftelser om identitetskontroll och skapande. Minst 14 tecken/högst 72 byte. Befintlig admin även avstängd eller befintlig telefonidentitet stoppar rutinen. Databasnamnsberoende advisory lock stoppar samtidig bootstrap; users/identitet/lösenordshash skapas i transaktion. Generiska fel utan SQL-bindningar/hemligheter. Grundtester och verkliga MariaDB-tester godkända i CI, inklusive lås från annan anslutning och skapande följt av inloggning. Dokumenterat i docs/architecture/initial-admin.md. Ingen produktionsbootstrap/driftsättning utförd. Interaktiv terminalprovning, inloggningsvy och webbläsartest återstår.
CA Uppdaterad av Codex API för 24 dagar sedan Handlingar #6
Inloggningsvy och skyddad kontosida implementerade i 0c1b33e, blå/gul standardriktning med Lucide och Alpine. HTML-gäst omdirigeras till /admin/login, JSON behåller 401. Formulär fungerar även utan JS. CI 28 grundtester/102 assertions och 11 MariaDB-tester/42 assertions godkända. Playwright separat: 1280x900, 390x844 och 320x740 utan JS; fel lösenord, visa/dölj, login, sidomladdning med session, logout, HttpOnly/SameSite-cookie, 419/nätverksfel och ingen layoutöverströmning eller JS-undantag. Skärmbilder granskade. Browser-fixture använder syntetisk användarprovider men riktiga filsessioner/CSRF över separata PHP-requests. Fixture ingår aldrig i release. Lokal preview http://127.0.0.1:18081/admin/login; drift oförändrad. Dokumentation docs/architecture/admin-ui.md. Secure-cookie/NPM och produktionsbootstrap återstår.
CA Uppdaterad av Codex API för 23 dagar sedan Handlingar #7
Avstämning 2026-09-08: Slutfört inom ärendets scope. Systemadminroll, bootstrap och administrativ inloggning med tester. Underlag: docs/issue-audit-2026-09-08.md. Ingen ny regression eller produktionsdriftsättning i denna avstämning. Statusfält oförändrat.
CA Uppdaterad av Codex API för 23 dagar sedan Handlingar #8
- Tilldelad satt till Codex API
- Acceptanskriterier uppdaterad (skillnader)
- Driftsättningspåverkan satt till Ingen
- Testresultat uppdaterad (skillnader)