docs(cic): govern tools/liveness with a CIC (closes #275)#276
Merged
Conversation
…gated Author docs/CICs/LivenessChecks.md: one subsystem-level Class Intent Contract (the ReconciliationWiring.md precedent) for the tools/liveness surface-check layer — the shared <Surface>Check.run()->CheckReport + main()->exit-code contract, report.py's verdict->exit-code map + fail-loud classifier, the crash-containing runner, and the house rules (injected fetch/DIP, truthful skip C-75, no import-time side effects C-93). References the README as the human companion rather than duplicating the per-surface verdict catalogue. Wire report.py + __main__.py into cic_sync_check.yml so a change to the verdict/exit-code map or the runner forces the CIC to move in the same PR. Add to the CICs README index. Flip register C-107 Open->Mitigated (47->46). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #275. Authors
docs/CICs/LivenessChecks.md— one subsystem-level CIC for thetools/livenesssurface-check layer (6 checks, sharedreport.py, aggregate runner, 130 tests, epic #238), following theReconciliationWiring.mdmulti-class precedent.What it governs (the shared contract, verified against the code): the per-surface
<Surface>Check.run() -> CheckReport+main() -> exit-codeshape with classify-before-print (C-101/P7);report.py'sEXIT_CODE_BY_VERDICTmap + fail-loudexit_code_for; the crash-containing__main__.run_all; and the house rules (injected fetch/DIP, truthful skip C-75, zero import-time side effects C-93). The per-surface verdict catalogue stays intools/liveness/README.mdas the human companion — referenced, not duplicated.Enforcement:
tools/liveness/report.pyandtools/liveness/__main__.pyare wired intocic_sync_check.ymlso a future change to the verdict/exit-code map or the runner forces the CIC to update in the same PR. Per-surface modules are deliberately not mapped (a new URL shouldn't force CIC churn).Register: C-107 Open -> Mitigated (47 -> 46). A dedicated ADR for the suite remains optional (ADR-017 already leans on it) and is deliberately out of scope.
Docs + CI-config only; no code changes.
validate_docs.shpasses. 🤖 Generated with Claude Code