Repository navigation
docs: single-source normative rules with marked canonical copies (refs #64) - #66
Conversation
Umbrella issue #64, PR 2 of 4. The verification trio and the wire-protocol prohibitions were restated across AGENTS.md, CONTRIBUTING.md, and docs/README.md with no canonical home — duplicated normative text drifts, and readers of different files would follow different rules. - Marker convention: <!-- CANONICAL id=... --> at each rule's single home; <!-- CANONICAL-COPY source=... id=... --> around safety-critical verbatim copies (identical modulo leading indentation; edit both or neither). scripts/check-docs.sh (PR 4) will enforce the copies mechanically. - Canonical homes: the verify trio lives in AGENTS.md (copies in CONTRIBUTING.md and docs/README.md); the Hash64/score wire-protocol rule lives in docs/hashring.md §6 and the ChunkKey rule in docs/chunk.md §6 (copies in AGENTS.md, kept because an agent must not miss them). - New 'Authority and canonical sources' section in AGENTS.md: precedence order (design-assumptions > package docs > AGENTS.md > CONTRIBUTING.md) plus the newest-accepted-ADR tiebreak; CONTRIBUTING.md points at it. Refs #64
|
@copilot please review. Focus on: marker-format consistency (ids/sources pairing), whether the copy blocks truly match their canonical sources (modulo indentation), and the precedence clause's clarity. Do NOT push commits; post review comments only. |
Review finding: the marker IDs/sources pair correctly, and all three copy blocks match their canonical bodies after indentation normalization. The precedence clause is ambiguous for |
Copilot review on PR #66: the clause enumerated every normative document except docs/README.md itself, leaving its rank undefined. It slots between design-assumptions.md and the package documents, as the documentation policy whose template governs them.
|
@copilot fixed: docs/README.md now explicitly ranks between design-assumptions.md and the package documents (the policy whose template governs them). Please re-review. |
Re-review complete: the precedence clause now explicitly ranks |
Refs #64
What
PR 2 of 4 under #64: gives every normative rule exactly one canonical home and makes the remaining duplicates explicit, machine-checkable copies. Audience separation is preserved — AGENTS.md for agents, CONTRIBUTING.md for community, docs/README.md for readers; only the normative text is single-sourced.
Changes
scripts/check-docs.shin PR 4):<!-- CANONICAL id="..." -->at a rule's single home;<!-- CANONICAL-COPY source="..." id="..." -->around safety-critical verbatim copies — identical modulo leading indentation, edit both or neither.AGENTS.md(marked copies in CONTRIBUTING.md and docs/README.md, so each audience still sees the commands in place);docs/hashring.md§6; the ChunkKey rule →docs/chunk.md§6 (marked copies in AGENTS.md — safety-critical redundancy an agent must not miss, now explicitly labeled).design-assumptions.md > package docs > AGENTS.md > CONTRIBUTING.md, with the newest-accepted-ADR tiebreak from PR docs: establish the Architecture Decision Record system (+3 backfills) (refs #64) #65; CONTRIBUTING.md points at it.Deliberately out of scope: marking every shared paragraph (the golden-value rule etc.) — the precedence clause covers unmarked duplication; over-marking would ossify prose.
Verification
Docs-only.
go vet ./...clean;go test ./... -race -count=113/13 PASS.