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 --stricta jednotkové testy vjust 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í.
%% title: Životní cyklus dílčí pohledávky
%% caption: 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.
flowchart TD
P(["Přihlášena<br/>lhůta §173"])
subgraph R["Přezkum"]
Z["Zjištěna"]
PC["Popřena částečně"]
PP["Popřena zcela"]
end
S["Incidenční spor<br/>oddíl C"]
O["Odmítnuta<br/>§185"]
V["Vzata zpět<br/>§184"]
UC["Uspokojena částečně<br/>částka i % nominálu"]
U["Uspokojena<br/>částka i % nominálu"]
K(["Řízení skončeno"])
P --> Z
P --> PC
P --> PP
P --> O
P --> V
PC --> S
PP --> S
S -- "určena" --> Z
S -- "neurčena: popření trvá" --> PP
S -- "neurčena: popření trvá" --> PC
Z --> UC
Z --> U
PC -- "zjištěná část" --> UC
PC -- "zjištěná část" --> U
UC -- "další plnění" --> UC
UC --> U
U --> K
Z -.-> V
PC -.-> V
PP -.-> V
S -.-> V
Z -.-> K
PC -.-> K
PP -.-> K
S -.-> K
UC -.-> K
T>"Postoupení §18<br/>mění věřitele, ne stav"]
T -.- P
T -.- Z
T -.- S
click P href "/product/dilci-pohledavka" "Jednotkou je dílčí pohledávka"
click Z href "/product/klasifikace-pohledavek" "Klasifikace a výsledek přezkumu"
click S href "/roadmap/incidencni-spory" "Incidenční spory"
click U href "/roadmap/rozvrhy-a-vyteznosti" "Rozvrhy a výtěžnosti"
click T href "/product/sekundarni-trh-postoupeni" "Sekundární trh a postoupení podle §18"
click K href "/product/zivotni-cyklus-pohledavky" "Životní cyklus pohledávky"
class S st-planned
class U st-planned
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í
Jednotkou je dílčí pohledávka
Jedna přihláška zabírá jednu pozici v oddílu P a může obsahovat několik dílčích pohledávek s různou výší, právním důvodem, zajištěním — a hlavně různým výsledkem přezkumu. Model postavený na přihlášce ztratí přesně tu informaci, kvůli které produkt existuje.
Detail
Životní cyklus pohledávky
Systém drží aktuální stav každé dílčí pohledávky i kompletní historii přechodů — od přihlášení přes přezkum a incidenční spor až po uspokojení a skončení řízení. U každého přechodu je datum a zdrojový dokument, ze kterého vyplývá.
Detail
Číslo bez zdroje není údaj
Každá vytěžená hodnota je dohledatelná ke konkrétnímu dokumentu a stránce. Bez toho nelze odpovědět na žádost subjektu údajů, na spor o částku ani na otázku, proč se metrika změnila. Provenience proto podmiňuje samotný zápis.
Detail