Obligation closure
A task that declares obligations reaches the outcome completed only when each one is established by the tool or has evidence, and that evidence still describes the tree or the commit it was taken over.
blocking A violation stops the command with exit 10.
The chain
A rule is enforced only when every link below holds. majordomus doctor resolves each one from the source on every run; this page shows what it resolved.
- 1 Declared majordomus.obligation-closure
- 2 Validator mj_validate_obligations
- 3 Runs under check, finish
- 4 On violation exit 10
- 5 Proved by test/cases/103_obligations.sh
- 6 Run by CI .github/workflows/validate.yml
Where it runs
- majordomus checkIs the current task still consistent with its policy, its scope and this checkout?
- majordomus finishEvaluate the finish contract and refuse the outcome if any line of it is unmet.
A repository selects this line of the finish contract by naming obligations_met in verification.finish_requires. A requirement the policy names that no doctrine defines is reported and refuses.
What it lets us promise
Read it here
majordomus doctrine show majordomus.obligation-closure
majordomus check --rule majordomus.obligation-closure