Accountability principle (ADR-0050) + archived AI council (ADR-0051) #2
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "docs/accountability-council"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Carries the old
pr60branch (accountability principle + AI review council) onto the Forgejomain. The principle stays. The council is archived, because the services it was built on went away with the GitHub account.Consensus impact
Could this behave differently on two honest nodes given the same inputs? No. This PR changes docs only (no Rust).
Specification and decision record
docs/specification/section. (None applies: process and philosophy docs only.)Checks
No Rust is changed, so the cargo checks don't apply. These doc checks were run locally, since the server has no CI:
python3 scripts/site.py check: passpython3 scripts/check-doc-links.py: passpython3 scripts/check-spec-citations.py: passpython3 scripts/version.py check: passNotes
What lands
docs/PHILOSOPHY.md: project philosophy, including the accountability principle in its refined form (f85a699).docs/adr/0050-accountability-by-construction.md: ADR-0050. Unchanged from pr60.docs/adr/0051-ai-council-first-class.md: the council ADR. Renumbered from 0049 and marked Superseded.docs/architecture/ai-council/*: the council design docs (registry, status model, degraded operation, provenance, costs, incidents), kept as the record. The README has an archive note.What was archived vs removed, and why
CONTRIBUTING.md#review-process.docs/architecture/ai-council/.github/workflows/ai-council.ymlscripts/ai-council/health.py,liveness.pyADR renumbering
pr59 (M6 BFT consensus) and pr60 both created an
ADR-0049. pr59's ADR-0049 (BFT locking protocol,3f2b7e5) was written first, on 2026-10-09. pr60's council ADR (d5ca451) came on 2026-10-10. So the BFT ADR keeps 0049 and the council ADR becomes 0051. 0050 is already taken by Accountability by Construction. The ADR header records the old number.Review history (from the original PR #60 on GitHub)
395f42e: zizmor fixes on the council workflow (permissions: contents: read,persist-credentials: false). Turn-2 failure policy indegraded-operation.mdcorrected to matchreview-relay.yml. Site rebuilt.24a6893(round 2): registry turn-2failure_policyaligned with the relay.health.pyFULL now requires every member AVAILABLE, a lead that is UNAVAILABLE gives STOPPED, and the timestamp is relabeled as report generation time. The validator requires all mandatory roles. Fixed ahealth.sh→health.pyreference and the override label name (consensus-override). Clarified the costs/incident procedure.ff02012: the turn-4 live verifier is advisory (required: false), so it was removed from the validator's required roles.c573e10(round 3): policy and code aligned (a turn-1 UNAVAILABLE is policy, not enforced by code).liveness.pyactually loads the registry and surfaces API errors. Provenance uses the registry at the reviewed commit.f85a699: adopted Claude's refinement of the accountability principle in PHILOSOPHY.md and ADR-0050: covers "misbehavior" (broader than equivocation), works "from the messages alone", and "cost always exceeds the gain".Several of these fixes (zizmor, the validator,
health.py,liveness.py) touched files that this merge removes. They're listed here so the record stays complete.Merge
8f52976mergesmain(the Forgejo migration, PR #1) into the pr60 branch.site/index.htmlwas resolved by regenerating it on the merged tree (scripts/site.py build).Prompts
Operator prompt, verbatim, for the session that produced this PR and its sibling. Redactions are marked inline.
Review relay
N/A. The GitHub review relay was removed in the Forgejo migration. Review follows
CONTRIBUTING.md#review-process.🤖 Generated with Claude Code
Broader than equivocation ('misbehavior'), explicit self-containment ('from the messages alone'), names the mechanism ('cost always exceeds the gain'). Updated in PHILOSOPHY.md and ADR-0050.- Resolve site/index.html by regenerating it on the merged tree. - Renumber the council ADR 0049 -> 0051: ADR-0049 is the BFT locking protocol from the M6 branch, written first (2026-10-09 vs 2026-10-10). - Mark ADR-0051 superseded by the Forgejo migration: the council (CodeRabbit, Devin, Greptile, the GitHub review relay) was removed with the account. Its docs stay as the record; README carries an archive note. - Remove .github/workflows/ai-council.yml (no CI on the server) and scripts/ai-council/{health,liveness}.py (they read GitHub PR activity). - PHILOSOPHY.md and ADR-0050 (Accountability by Construction) unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>