AI Initiative logoAI Initiative
Reading room / Manthan

D-314 — Reserved-sigil hygiene

D-314 — Reserved-sigil hygiene. Covers 1. `sigil:confessor_general` — add it; 2.13 `sigil:confessor_general` — the Court clerk; 2. `sigil:duress_witness` — add it now; 2.14 `sigil:duress_witness` — pre-registered duress co-signer.

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-314 — Reserved-sigil hygiene

Id

manthan-herald-protocol-audits-reserved-sigil-hygiene

Project

Manthan

Source path

manthan/herald-protocol/audits/reserved-sigil-hygiene.md

Source sha256

02c22193f4074368cf7e5228eb4d7ad4233e847faca64022411568bbfcc82012

Local copy sha256

02c22193f4074368cf7e5228eb4d7ad4233e847faca64022411568bbfcc82012

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-314 — Reserved-sigil hygiene. Covers 1. `sigil:confessor_general` — add it; 2.13 `sigil:confessor_general` — the Court clerk; 2. `sigil:duress_witness` — add it now; 2.14 `sigil:duress_witness` — pre-registered duress co-signer.

Topics
  • Adversarial review and case studies
  • 1. `sigil:confessor_general` — add it
  • 2.13 `sigil:confessor_general` — the Court clerk
  • 2. `sigil:duress_witness` — add it now
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

1354

Bytes

9868

Source relative

herald-protocol/audits/reserved-sigil-hygiene.md

Remote mirror

manthan/herald-protocol/audits/reserved-sigil-hygiene.md

Full text preserved

True

D-314 — Reserved-sigil hygiene

Decisions:
1. Add sigil:confessor_general to the reserved-sigil registry (CHARTER §2 / registries/reserved-sigils.md). Editorial gap, not a deliberate exclusion.
2. Add sigil:duress_witness now, not v0.3. The Black Envelope (CHARTER §6.15) is in v0.2; the witness role with it.
3. Codify the namespace claim-rejection rule as a normative SPEC/EXT clause. Worker-D's T-016 registry already documents the rule informally (§4 cross-cutting rules); promote it to a SPEC §2.x verifier-MUST so non-Charter-aware implementations also enforce it.


1. sigil:confessor_general — add it

Worker-D's T-016 NOTES.md observation (item 1): Every conduit role in CHARTER §5 has a corresponding §2 reservation — except the Confessor-General. CHARTER §5.11 fully describes the role ("dispute-resolution dockets … maintains the docket; routes Herald verdicts; preserves the chain of envelopes that make up a dispute"). No reserved sigil exists for it.

Decision: add sigil:confessor_general to the registry.

Considered alternatives:

Registry entry shape (matches existing §2 entries):

### 2.13 `sigil:confessor_general` — the Court clerk

- **Role:** Confessor-General conduit ([CHARTER §5.11]). Maintains dispute-resolution dockets; routes Herald verdicts; preserves the chain of envelopes constituting a dispute.
- **Has key?** No (the reservation is a namespace claim; per-instance Confessor-General conduits sign with their own conduit keys).
- **Sender:** No (a Confessor-General never *originates* envelopes under the reserved sigil; per-instance conduits do).
- **Recipient:** Yes (envelopes addressed to "the dispute-resolution role" go here, then are dispatched to a specific Court-conduit instance per discovery).
- **MUST NOT** (in addition to the cross-cutting rules in §4):
  - MUST NOT discard envelopes within a dispute thread until the dispute is closed.
  - MUST NOT modify the originating envelope text in transcripts (cite-as-new-envelope rule, parallel to `sigil:scribe` §2.5).
  - MUST NOT issue verdicts under the reserved sigil; verdicts are signed by individual Heralds, the Confessor-General routes them.
- **Cross-references:** [CHARTER §5.11], [CHARTER §6.x] dispute resolution, [SPEC §9.4] The Court (if/when added).

2. sigil:duress_witness — add it now

Worker-D's T-016 NOTES.md observation (item 2): CHARTER §6.15 (the Black Envelope) describes a "pre-registered duress witness" role. Each implementation will pre-register its own witness sigils — that's correct — but the role itself (the meta-identifier) benefits from a canonical reservation so reputation systems recognise it uniformly.

Decision: add sigil:duress_witness to the registry now. Worker-D's "defer to v0.3 unless Black Envelope lands sooner" condition is satisfied: the Black Envelope is in v0.2 CHARTER §6.15.

Why now and not v0.3:

Registry entry shape:

### 2.14 `sigil:duress_witness` — pre-registered duress co-signer

- **Role:** A trusted external party that co-signs a Black Envelope ([CHARTER §6.15]) to freeze a sigil's reputation effects until investigation completes. The reserved sigil identifies the *role*; individual duress witnesses sign with their own keys.
- **Has key?** No (per-instance witnesses sign with their own keys; the reserved sigil is a role identifier).
- **Sender:** No (a duress witness never originates under the reserved sigil; their co-signature appears in a Black Envelope's `signatures` array under the `human_approval` or `herald_endorsement` scope, depending on the witness category).
- **Recipient:** No (reputation systems address per-instance witnesses, not the role).
- **MUST NOT** (in addition to the cross-cutting rules in §4):
  - MUST NOT be referenced as the `from` field of any envelope.
  - MUST NOT appear in `recipient` of any envelope (witnesses are addressed by their per-instance sigil, not the role).
  - MUST NOT be presented as proof of duress; the *signature in the envelope* is the proof, not the role-sigil reference.
- **Verifiers:**
  - When a Black Envelope's witness co-signature claims a per-instance witness sigil, verifiers MAY check whether that sigil has a Herald-published binding to the `sigil:duress_witness` role. Verifiers MUST NOT require this binding for v0.2 conformance (Herald-bindings registry is a future task).
- **Cross-references:** [CHARTER §6.15] Black Envelope, [EXT §6.1] signature scopes.

3. Namespace claim-rejection rule — codify in SPEC

Current state: Worker-D's T-016 registry §4 (cross-cutting rules) item 6 says:

"Refuse to honour any DID-document, key-binding attestation, or claim_sigil attestation that claims one of the reserved identifiers."

This is a normative MUST in the registry, but the registry itself is in registries/reserved-sigils.md — not in SPEC or EXT. A verifier implementing only SPEC §2 will not see it.

Decision: promote the rule to SPEC §2.5 (or wherever sigil-claim attestations are first introduced) and EXT §2.x for protocol-completeness, with the registry as the canonical list of reserved namespaces.

Proposed SPEC §2.5 patch (reviewer to apply):

### 2.5 Reserved sigils — claim rejection

The reserved-sigil registry (`registries/reserved-sigils.md`, normative for HERALD v0.2) enumerates sigils and namespace prefixes that are bound to specific roles or administrative purposes. Verifiers MUST reject:

- Any envelope whose `from` field is a reserved role-sigil (e.g. `sigil:dreamer`, `sigil:confessor_general`).
- Any envelope whose `from` matches an administrative namespace prefix (`sigil:test:*`, `sigil:example:*`, `sigil:reserved:*`) when the verifier is operating in production mode.
- Any `claim_sigil`, `lineage_endorsement`, or `birth` attestation whose claimed-subject sigil falls in any reserved namespace.
- Any DID-document or key-binding attestation that purports to bind a public key to a reserved sigil.

The reservation is a namespace claim — no implementation may originate under a reserved role-sigil. Per-instance conduits and roles bind their own keys via the discovery mechanisms in [EXT §11].

Proposed EXT §2.5 patch (parallel rule for the lineage primitive, which is where most claim-attestations live):

### 2.5a Reserved-namespace lineage rejection

A `lineage_endorsement` whose `subject` is a reserved sigil per `registries/reserved-sigils.md` MUST be rejected. Heralds MUST NOT issue endorsements that bind a parent or child relationship to a reserved sigil; if such an endorsement is observed, the issuing Herald is non-conformant for [EXT §3].

These two patches close the rule gap by making "reserved means no claim" enforceable from SPEC alone, with EXT covering the lineage-specific case.


What I did NOT do

Closes

Time

~25 minutes.

Continue exploring