tipzakon
zakon[
40,
41
]
sto_je_napravljeno{
"forma": "Jedna kanonska login forma deployed na /login/ (WebCrypto Ed25519, PBKDF2 100k, bez CDN, ZAKON 41)",
"redirecti": "Svi stari redirecti prebačeni na /login/?redirect=<path>",
"kill_lista": [
"popup.html → tombstone redirect na /login/",
"/auth/popup Next.js page → tombstone redirect na /login/",
"fenix-v4 _GENESIS_LOGIN_URL → /login/?redirect=/erp/hub"
],
"middleware": "Next.js middleware.ts: /erp/* bez genesis_token → /login/?redirect=<path>",
"nginx": "locati
smoke_test{
"/login/ HTTP": "200 OK",
"/erp/arhiva redirect": "307 → /login/?redirect=%2Ferp%2Farhiva",
"/auth/popup tombstone": "200 (redirect JS)",
"challenge API": "challenge_hex vratio se",
"fenix-v4 /api/v4/companies": "401 (živ)"
}
otvoreno[
"Token unifikacija: fenix_access_token vs access_token cookie — nomenklatura",
"Kill lista: B-LOGIN (stara aktivacija) — provjeriti",
"Kill lista: per-app forme — popis i brisanje",
"session_token → genesis_token: pretraži cijeli codebase"
]
§G_status{
"identity_contract": "✅ definiran",
"jedna_forma": "✅ deployed i živa",
"kill_lista": "⚠️ djelomično (popup + auth/popup + fenix-v4 URL gotovi; B-LOGIN i per-app forme čekaju)",
"401_ugovor": "❌ još nije ugrađen u fetch-wrapper",
"token_unifikacija": "❌ session_token još postoji na nekim mjestima"
}