Číslo bez zdroje není údaj
Provenience není metadata navíc. Je to podmínka, bez které se hodnota do projekce nedostane — protože všechny tři otázky, které o číslu v tomhle produktu někdo položí, jsou otázky na jeho původ.
- Co hodnota nese
- dokument, stránka, metoda extrakce, skóre spolehlivosti
- Kdy se zapíše
- jen když je provenience úplná a skóre nad prahem
- Stav
- vynucené v typovaném doménovém modelu; pipeline, která ho plní, je plánovaná
Tři otázky, které přijdou
První je žádost subjektu údajů: jaké údaje o mně máte a odkud. Odpověď „z insolvenčního rejstříku“ není odpověď; odpověď je konkrétní dokument v konkrétním řízení.
Druhá je spor o částku. Analytik tvrdí 4,2 milionu, protistrana 3,8. Bez odkazu na stranu dokumentu je to hádka dvou tabulek.
Třetí je nejčastější a nejnebezpečnější: proč se ta metrika minulý měsíc změnila. Bez provenience je jediná dostupná odpověď „asi se něco přepočítalo“, a od toho okamžiku už číslům nikdo nevěří.
Proto je to podmínka zápisu, ne pole navíc
Kdyby byla provenience volitelná, byla by vyplněná tam, kde to bylo snadné, a chyběla by přesně tam, kde na ní záleží — u hodnot, které se dolovaly z nekvalitního skenu.
V doménovém modelu je proto součástí typu, ne komentářem u něj. Hodnota bez dokumentu a stránky není „hodnota s chybějícím metadatem“; taková hodnota v modelu nejde sestrojit.
Co z toho plyne pro provoz
- Dokumenty se ukládají podle SHA-256 svých bajtů, takže odkaz na zdroj přežije i opakované stažení téhož PDF.
- Oprava dřívějšího údaje je nová událost s vlastní proveniencí, ne přepis toho, co bylo zapsáno dřív.
- Údaj, který nelze dohledat ke zdroji, se považuje za chybu systému — ne za data s nižší kvalitou.
Kde to v repozitáři žije
docs/DATA-MODEL.md— entity, stavový automat a provenience jako povinná součást zápisudocs/EXTRACTION.md— stádia pipeline, práh spolehlivosti a cache výsledkůsrc/progresus_isir/domain/— typovaný model, ve kterém je provenience vynucená
Souvisí
Nevědět je lepší než hádat
Extrakce ze skenů se občas splete. Systém proto ví, co neví: pod prahem spolehlivosti hodnota nejde do databáze, ale k člověku. Chybějící údaj je opravitelný, sebevědomě nesprávný ne.
Detail
Confidence je plnohodnotné pole, ne řádek v logu
Každá vytěžená hodnota nese skóre spolehlivosti, použitou metodu a stránku dokumentu. Pod prahem nejde do projekce, ale do fronty lidské kontroly — u vysokých nominálů je práh přísnější.
Detail