{"id":"c1215","filename":"c1215_zakon43_krunica_hash_karta.dok.json","weise3_id":"","tip":"implementacija","naziv":"ZAKON 43 — Karta 6 krunica_hash formata + kanon preporuka","kreator":"Ivan Brtan (Opus + CC)","datum":"2026-05-31","snippet":"","status":"DUG, ne pozar. read_temporal() vjerojatno nema zivog pozivaca — mora se provjeriti izravnim pozivom na serveru prije ijedne izmjene.","prev_weise3":"","bunker_l":"#00d4ff","full":{"tip":"implementacija","naziv":"ZAKON 43 — Karta 6 krunica_hash formata + kanon preporuka","redni":"c1215","datum":"2026-05-31","autor":"Ivan Brtan (Opus + CC)","sesija":"files22 — ZAKON43_krunica_hash_karta.md asimilacija","problem":"Pojam krunica_hash postoji u produkciji u SEST nekompatibilnih oblika pod istim imenom. Tri su goli string-pointeri (ne hashevi). Nijedan ne nosi verzijsku oznaku.","sest_formata":{"V1":{"konstrukt":"KRUNICA::{w3id}::FENIX2026","gdje":"kanal/, archive/, global_archiver, ai_knjizenje_task, intent_router, schema_dokarh (~15 mjesta)","tip":"string-pointer","detektira_tamper":false,"komentar":"Pointer ostaje isti cak i kad se podatak iza njega promijeni — DISKVALIFIKACIJA za zapis istine"},"V2":{"konstrukt":"sha3_256(KRUNICA::{ct_b64}::{clan_ids}::FENIX2026)","gdje":"atom_adresiran.py","tip":"pravi hash SHA3","detektira_tamper":true},"V3":{"konstrukt":"KRUNICA::BON::{kod}::{iznos}::{datum}::FENIX2026","gdje":"bon/service.py","tip":"string-pointer (djelomicno sadrzi podatke)","detektira_tamper":"djelomicno"},"V4":{"konstrukt":"D1::KRUNICA::{entity}::{creator}::{grain}::{zavjet}::FENIX2026","gdje":"chainblock/service.py","tip":"string-pointer","detektira_tamper":"djelomicno"},"V5":{"konstrukt":"sha256(FraktalToken.serialize())","gdje":"eho4.py / TPRG header","tip":"pravi hash SHA256","detektira_tamper":true,"komentar":"Krivi algoritam — reader.py koristi SHA3-256"},"V6":{"konstrukt":"SHA3_256(seal || window || node || role)","gdje":"ocekuje genesis/eho/eho4/reader.py","tip":"pravi hash SHA3","detektira_tamper":true,"jedini_pravi_verifikator":true}},"konzumenti":{"qr_print.html_174":"Cita V5 — samo PRIKAZE u QR preview-u. Ne verificira.","chat.html_1963":"Validira SAMO startsWith('KRUNICA::') — prolaze V1/V3/V4, padaju V2/V5/V6","genesis_eho_reader.py":"JEDINI STVARNI VERIFIKATOR — hmac.compare_digest(expected, atom.krunica_hash) → TAMPER alarm"},"dokazano_vs_pretpostavljeno":{"dokazano":["Svih 6 formata postoji u kodu (potvrdjeno grepom)","qr_print.html cita V5 samo za prikaz, ne verificira","chat.html validira samo prefiks string, ne hash","reader.py ocekuje V6 i radi compare_digest s TAMPER alarmom","DokArh zapisi za reader.py: grep vratio PRAZNO (vjerojatno nema živih pozivaca)"],"nedokazano":"read_temporal() biva pozvan u zivom putu produkcije. Susret pisaca V1 i citaca V6 u istom lancu. 'Sustav vraca False na sve Krunica provjere' = NEDOKAZANO, prazni DokArh sugerira suprotno."},"kanon_preporuka":{"format":"SHA3-256 nad kanonskim sadrzajem, verzijski prefiks KH3::{sha3hex}","razlog":"V6 je jedini format koji se stvarno verificira i jedini vezan na puni sadrzaj. V2 je srodan (SHA3, vezan na sadrzaj). String-pointeri (V1/V3/V4) su diskvalificirani.","migracija":"NE DIRATI postojece zapise. Uvesti KH3:: prefiks za SVE NOVE krunica_hasheve. reader.py dobiva granu po verziji: prefiks → biranje konstrukta. Neoznacena verzija = legacy V1 (string pointer) BEZ TAMPER alarma.","sjeme_zakon":"Staro zivi, novo raste pored. Krunica se prosiruje, ne mijenja."},"status":"DUG, ne pozar. read_temporal() vjerojatno nema zivog pozivaca — mora se provjeriti izravnim pozivom na serveru prije ijedne izmjene.","zakoni":["ZAKON 43 (Krunica omniprisustvo)","ZAKON 32 (svaki fix ima chain entry)"]}}