188. A rule's proof of effect is a recorded refusal of its violation, not the presence of its wiring
Kontext
ADR 0048 makes a rule declare its enforcement mode, and rules/mod.rs reads proof from named, present, recorded cases. Doctor's wiring check greps for a dispatch string. The 2026-10-08 audit showed a validator changed to "|| exit 0" passing doctor, and a rule backed only by happy-path cases reading proven.
Rozhodnutí
A blocking rule is satisfied only by a passing recorded run of a case that shows its violation refused, and that case names the rule with a '# majordomus-refutes:
Zamítnuté alternativy
- A separate "rules self-check" command and engine (a second engine; rule project.no-new-nouns)
- Doctor running every validator on every commit (rule project.blocking-checks-cheap)
- Counting the named test as proof regardless of what it asserts
Důsledky
Most blocking rules start in a ratcheted refusal-not-shown list; the list only shrinks. RuleProof gains one field. Case 18 remains the proof that the wiring verifier works.
Sources
Promoted on 2026-10-18 from the owner's ChatGPT project (workspace chatgpt-majordomus, issue I3100). The owner has not accepted it; it is proposed for the owner's decision.
chatgpt-majordomus:c115#1chatgpt-majordomus:c115#4chatgpt-majordomus:c129#3chatgpt-majordomus:c139#1chatgpt-majordomus:c193#1chatgpt-majordomus:c207#6chatgpt-majordomus:c214#2chatgpt-majordomus:c259#6chatgpt-majordomus:c109#7chatgpt-majordomus:c130#13chatgpt-majordomus:c135#1chatgpt-majordomus:c139#5chatgpt-majordomus:c144#7chatgpt-majordomus:c217#5chatgpt-majordomus:c241#4chatgpt-majordomus:c269#5chatgpt-majordomus:c193#0