Přeskočit na obsah

Dostupné

Doménový model

Model je napsaný dřív než příjem dat záměrně. Rozhodnutí, co je platný stav a co platná hodnota, se dělá jednou — a je levnější ho udělat, dokud v databázi nic není.

Umístění
src/progresus_isir/domain/ — claim, classification, provenance, identifiers, assertions (jednotlivá tvrzení pohledávky, která člověk kontroluje a schvaluje, ADR 0017) a creditor_names (shoda jména věřitele z přihlášky se jménem v ARES)
Stavy
10, s výslovnou tabulkou povolených přechodů a odvozenou množinou koncových
Klasifikace
tristate: ano / ne / neznámo
Kontroly
ruff, mypy --strict a jednotkové testy v just quality

Stavy nesou české právní názvy

Hodnoty jsou prihlasena, zjistena, poprena, poprena_castecne, incidencni_spor, odmitnuta, vzata_zpet a dál až po rizeni_skonceno. Anglické ekvivalenty se nevymýšlejí, protože ztrácejí přesnost: popřena není totéž co odmítnuta, to je jiný výsledek podle jiného paragrafu.

Přechod, který není v tabulce, vyhodí výjimku, místo aby se tiše ignoroval. Přechod, který rejstřík provedl a model o něm neví, je nová informace o zdroji — a jediná užitečná reakce je všimnout si jí.

# Životní cyklus dílčí pohledávky. Stavy dílčí pohledávky a povolené přechody přesně podle doménového modelu; jiný přechod model odmítne. Určená pohledávka se vrací mezi zjištěné, u neurčené popření trvá. Čárkovaně zpětvzetí a skončení řízení. Postoupení podle §18 je samostatná událost: mění věřitele, stav nechává být. Každý přechod nese datum a zdrojový dokument.

Barva uzlu je stav položky na roadmapě: Plánováno

Funkce nad stavy, ne metody na objektu

Přechod je funkce dvou stavů, ne metoda měnitelného objektu. Stav pohledávky žije v append-only seznamu událostí a tohle je pravidlo, které projektor aplikuje při jeho přehrávání.

Tenhle tvar je přímý důsledek volby event sourcingu. Model, který by držel měnitelný objekt, by přehrání logu udělal nepohodlným a tím i vzácným.

IČO se kontroluje, ne důvěřuje

IČO se normalizuje a ověřuje standardním českým mod-11 schématem: váhy 8 až 2 nad prvními sedmi číslicemi. Nestojí to nic a odmítne to celou třídu chyb OCR dřív, než se z nich stane špatně spárovaný věřitel.

Provenience je součástí typu, ne komentářem u něj — hodnotu bez dokumentu a stránky v modelu nejde sestrojit.

Kde to v repozitáři žije

  • src/progresus_isir/domain/ — stavový automat, klasifikace, provenience, identifikátory, tvrzení ke kontrole a porovnání jmen věřitelů
  • docs/DATA-MODEL.md — entity a stavový automat dílčí pohledávky
  • .claude/adr/0006-partial-claim-as-the-unit.md — proč je jednotkou dílčí pohledávka, ne přihláška

Souvisí

Zpět na sekci Roadmapa