AI Initiative logoAI Initiative
Reading room / Manthan

D-303 — Cross-doc consistency audit

D-303 — Cross-doc consistency audit. Covers Methodology; Domain-separation tags; Scope strings (hyphenated identifiers); Stale SPEC §9.x citations (post-migration).

Historical audit / evidence record
This is the retained source text, not a new validation of its claims. Numerical results and comparative claims require the accompanying source review before public reuse.

Read the connected case study or article →

Not explicitly stated in source · Date not established

Provenance, authorship and editorial notes

D-303 — Cross-doc consistency audit

Id

manthan-herald-protocol-audits-cross-doc-consistency

Project

Manthan

Source path

manthan/herald-protocol/audits/cross-doc-consistency.md

Source sha256

2bc579c894231cb560e559d3db12ca25367c64a7fd338c53d5dd89900e60685d

Local copy sha256

2bc579c894231cb560e559d3db12ca25367c64a7fd338c53d5dd89900e60685d

Repo head

3a94084024a3434cef331fecac91c2c3b43f0313

Date
Not recorded
Date basis

Original publication date not established; Git revision date retained separately.

Author

Not explicitly stated in source

Author basis

Unknown; Git committer not substituted for document author.

Last source commit

8b75d1b0157c20a0a463f0e31008ef9f73099beb

Last source commit date

2026-06-08T07:40:14Z

Document status

Historical audit / evidence record

Summary

D-303 — Cross-doc consistency audit. Covers Methodology; Domain-separation tags; Scope strings (hyphenated identifiers); Stale SPEC §9.x citations (post-migration).

Topics
  • Adversarial review and case studies
  • Methodology
  • Domain-separation tags
  • Scope strings (hyphenated identifiers)
Theme

Adversarial review and case studies

Priority

reference

Related ids
  • manthan-herald-protocol-audits-manthan-cohort1-postmortem
Evidence concerns
  • Recovered source text is preserved verbatim. Assertions, comparisons, commands and results belong to its original context; they were not re-executed or externally re-verified during this corpus review.
  • Historical record: current deployment, task completion and test status must not be inferred from this date-bound document.
Word count

1402

Bytes

9962

Source relative

herald-protocol/audits/cross-doc-consistency.md

Remote mirror

manthan/herald-protocol/audits/cross-doc-consistency.md

Full text preserved

True

D-303 — Cross-doc consistency audit

Status: PASS, with three residuals patched in this audit. SPEC, EXT, CHARTER, and THREATS are now mutually consistent on identifier conventions, citation targets, version suffixes, and registry references. Two known gap-flag annotations remain (intentional, not drift).

This audit is the consolidation pass after D-302 (per-attack matrix), D-306 (citation drift in THREATS — primary pass), D-308 (domain-separation tag versioning), D-311 (scope-string unification), D-314 (reserved-sigil hygiene). It catches what those scoped audits missed and confirms canon coherence.


Methodology

Three sweeps:

1. Identifier-convention sweep — domain-separation tags (herald.<name>.vN), scope strings (tool_sandbox etc.), reserved-sigil format. Confirmed all clean post-D-308/D-311/D-314.
2. Citation-target sweep — [SPEC §X], [EXT §X], [CHARTER §X], [THREATS §X] resolve to existing sections. Found and fixed residuals D-306 missed in CHARTER and THREATS (see §3 below).
3. Suffix-orphan sweep — -amended, -hardened, -extended placeholder suffixes. Found and fixed three remaining hits in THREATS (compound citations missed by D-306's two-pass perl substitution).

Greps used (re-runnable):

# Domain-separation tags
grep -nE 'herald\.[a-z_]+\.v[0-9]' SPEC.md EXT.md THREATS.md | grep -vE '\.v1'

# Scope strings (hyphenated identifiers)
grep -nE '"(tool|conduit|human|herald)-(sandbox|receipt|approval|lineage)"' \
  SPEC.md EXT.md CHARTER.md THREATS.md

# Stale SPEC §9.x citations (post-migration)
grep -nE 'SPEC §9\.' SPEC.md EXT.md CHARTER.md THREATS.md

# Suffix orphans
grep -nE '\-amended|\-hardened|\-extended' SPEC.md EXT.md CHARTER.md THREATS.md

Findings and fixes

F-1 — Stale [SPEC §9.x] references in CHARTER and THREATS

D-306 patched THREATS.md but did not include CHARTER.md in scope. Seven CHARTER references and one residual THREATS reference cited [SPEC §9.x], where SPEC §9 was migrated out (cultural framing → CHARTER, protocol shape → EXT) during the v0.1→v0.2 amendment.

Fixes applied (in-place):

FileLineBefore (stale)After (corrected)
THREATS.md98[SPEC §9.7, §4.2 quorum][EXT §3.3, SPEC §4.2 quorum] (quorum protocol shape lives in EXT §3.3 threshold attestations)
CHARTER.md106(cf. [SPEC §9.8] stigmergy channels; this Charter renames them)(the term stigmergy channels lived briefly in earlier-draft SPEC §9.8; this Charter renames them) (reframed as historical provenance, not active citation)
CHARTER.md570Visible in the agent passport ([SPEC §9.9], promoted here)Visible in the agent passport (the term lived briefly in earlier-draft SPEC §9.9; this Charter promotes the concept here)
CHARTER.md655dispute-resolution dockets ([SPEC §9.4] The Court)dispute-resolution dockets (The Court — concept lived in earlier-draft SPEC §9.4; protocol shape forthcoming in EXT, cultural framing here)
CHARTER.md698[SPEC §9.2] covers ghost-mode (private)Ghost-mode (private) lived in earlier-draft SPEC §9.2 and is now a Charter concept
CHARTER.md704[SPEC §9.5] frames the Bestiary as a spam blocklist[EXT §8] specifies the Bestiary as a list of signed entries with mandatory due process (correct target; Bestiary protocol shape is normatively in EXT §8)
CHARTER.md858([SPEC §9.12], promoted here)(Concept from earlier-draft SPEC §9.12, promoted to this Charter)
CHARTER.md937[SPEC §9.5] (Bestiary); reframes as taxonomy[EXT §8] (Bestiary protocol shape); reframes as cultural taxonomy

Why the rephrasing-as-historical pattern. Several of these citations were not just stale references but conceptual provenance ("this Charter renames X, which used to be in SPEC §9.x"). Rather than redirecting them to non-existent CHARTER subsections (which would create a new phantom anchor), I reframed them as historical-provenance prose. The SPEC §9.x string remains as a historical pointer, not an active citation, so verifiers and readers don't try to resolve it.

The two cases where redirection was clean (THREATS §quorum → EXT §3.3; CHARTER §6.6 Bestiary table → EXT §8) were redirected. The five cases where the concept's protocol shape doesn't yet exist (stigmergy, agent passport, The Court, ghost-mode, Naming Office) were rephrased as historical.

F-2 — Compound -hardened suffixes in THREATS

D-306's first-pass substitution covered [EXT §X-hardened] bare forms but missed compound forms like [EXT §X, §Y-hardened, §Z-hardened]. Three sites remained:

LineBeforeAfter
THREATS.md:298[EXT §2.4 / §3.4-amended; recommendation 10][EXT §1 / §5.5; recommendation 10]
THREATS.md:455[EXT §1, §9.6-hardened, §9.1-hardened; recommendations 5, 6][EXT §1, §9.6, §9.1; recommendations 5, 6]
THREATS.md:518[EXT §1, §9.6-hardened, §9.1-hardened][EXT §1, §9.6, §9.1]

Note: line 298 also had two stale section numbers: §2.4 was the v0.1 location for state-transition receipts; §3.4-amended was the placeholder. The corrected target is EXT §1 (state-transition envelopes — birth/molt/deprecation) and §5.5 (mandatory conduit-receipt rule for state transitions).

F-3 — -hardened in SPEC.md (false positive — not a citation)

SPEC.md:457 reads "v0.2: security-hardened core, charter-aware, EXT/CHARTER/THREATS companion docs". The -hardened here is English compound ("security-hardened" as adjective), not a citation suffix. No fix applied.

Confirmed clean

After F-1, F-2, F-3 review, the following invariants hold across all four documents:

InvariantPre-D-303Post-D-303
Domain-separation tags use .v1 (D-308)✓✓
Scope strings underscored (tool_sandbox etc., D-311)✓✓
Reserved-sigil registry as canonical source (D-314 + T-016)✓✓
No [SPEC §9.x] active citations✗ (8 hits)✓
No -amended / -hardened / -extended citation suffixes✗ (3 hits)✓
THREATS citations resolve to existing SPEC/EXT/CHARTER sections (per D-306)partial✓
CHARTER citations resolve to existing sections✗✓
Refusal reason-code field references the registry (D-310)✓✓

Intentional residuals (not drift)

Two gap: annotations in THREATS are intentional flags, not drift:

These are correct: they explicitly acknowledge gaps the protocol does not yet address. They're documentation-of-incompleteness, not citation errors.

What I did NOT find

Verification

$ grep -nE 'SPEC §9\.' SPEC.md EXT.md CHARTER.md THREATS.md
CHARTER.md: (5 historical-provenance hits, all rephrased)
# 0 active citations

$ grep -nE '\-amended|\-hardened|\-extended' THREATS.md
# 0 hits

$ grep -nE 'herald\.[a-z_]+\.v[0-9]' SPEC.md EXT.md THREATS.md | grep -vE '\.v1'
# 0 hits

$ grep -nE '"(tool|conduit|human|herald)-(sandbox|receipt|approval|lineage)"' SPEC.md EXT.md CHARTER.md THREATS.md
# 0 hits

All consistency-sweep greps return clean.

Recommendations for cohort-2

1. Fold this audit's grep set into manthan/bin/ as manthan/bin/consistency-check. Periodic re-runs catch drift. Estimated effort: 20 minutes.
2. Add a lint-check to the submit pipeline (or the coordinator) that runs the four greps and warns if any return non-empty. Prevents new drift from being introduced silently.
3. The two intentional gap: annotations (T-021 renderer rule, graded recordability) are now visible. T-021 is in flight; graded recordability needs a future R-task or D-task. Surface as a TODO row.
4. CHARTER §6.x and §6.6 still reference SPEC §9.x as historical provenance. This is acceptable, but a future copy-edit pass could remove the historical pointers entirely once readers are unlikely to encounter the v0.1 numbering in any artefact.

Closes

Surfaced follow-on tasks

Time

~30 minutes (3 sweeps + 11 fixes + audit doc).


— D-303, completed by driver-claude, 2026-05-05.

Continue exploring