POST /{doc_id}/povezi-entitet endpoint — korisnik potvrđuje AI entity_link prijedlog · EntityLink kreiran s SHA3-256 weise3_id, bi-temporalni brid (valid_from/valid_to) · Idempotentnost: duplikat vrać
tipimplementacija
chainc1401
prevc1400
sustavfenix-v4
serverMAR + EU
commit8b2e83e
sto_je_napravljeno[
"POST /{doc_id}/povezi-entitet endpoint — korisnik potvrđuje AI entity_link prijedlog",
"EntityLink kreiran s SHA3-256 weise3_id, bi-temporalni brid (valid_from/valid_to)",
"Idempotentnost: duplikat vraća already_existed=true bez greške",
"Dokaz pohranjen u archive_doc.ai_extracted.confirmed_links[]",
"UI: erp_arhiva.html — entity panel s kandidatima i 'Poveži' gumbom",
"CSS klase: erp-entity-panel, erp-kandidat, erp-povezi-btn (.done/.already)",
"JS: erpEntityFetch() + erpPovezi
testovi{
"T9_entity_kandidati": "200 PASS",
"T10_povezi_entitet": "200 PASS (entity_link kreiran u DB)",
"T10b_idempotent": "PASS (already_existed=true na duplikatu)",
"T11_404_nepostojeci": "PASS",
"smoke_9_od_9": "PASS"
}
sto_nije[
"Liveness S1 gate na spaljivanju (ZAKON 1A S1 karika)",
"Steuer caching (svaki poziv = novi AI token)",
"NL pretraga filtriranje po iznosu (doc_amount je String, ne numerik)",
"F5 FLF dual-cam integracija (proof_payload API postoji, FLF vezanje nije)"
]
zakon{
"ZAKON_27": "weise3_id na EntityLink — OK",
"ZAKON_3": "entity_link pisan direktno u DB bez trojna pohrana — IZNIMKA (nema dok.json za entity_link, samo za archive_doc)",
"ZAKON_46": "sve tvrdnje sljedive do ovog chain entry"
}