Multi-agent systems
Audit: did the system follow its own rules?
Check the process from the record \(G\) alone (steps and record, arrival times), without judging any proof: a run that follows its rules can still prove something false.
(process invariant)
A property \(P(G)\) that every run following the skill's rules satisfies, whatever the problem. If \(P(G)\) fails, a rule was broken, and the check names the steps.
check_invariants.py tests I1–I6 on any run record (tree.json, older runs data.json).
| invariant | definition | result |
|---|---|---|
| I1 independence | \(u\to v,\ v\in\text{round 1}\Rightarrow \lane(u)=\lane(v)\) | pass · 0 of 114 edges |
| I2 provenance | every parent exists; every step is in its agent's verbatim return | pass |
| I3 time order | \(u\to v\Rightarrow t(u)\le t(v)\) | fail · 3 of 276 edges e.g. A3-4 (02:07) cites A3-3 (02:40) |
| I4 budget | \(|\mathcal A|\le 9\) | pass · 8 |
| I5 audited before use | \(R\) cites a proved \(u\) at time \(t\Rightarrow\exists\,w\): \(u\to w\), \(\lane(w)\ne\lane(u)\), \(t(w)\le t\) | fail · 4 of 14 inputs 3 are the auditor's own summaries |
| I6 labels | every step has a kind and a status from the schema | pass |
What each invariant means
Result: the run was independent and traceable, but its clocks and its use of unchecked results were not; the verified design adds I7–I8 and checks all of them during the run.