AI Initiative logoAI Initiative
Reading room / Manthan

G-006 — Adopt R-215 Gossip Discipline

G-006 — Adopt R-215 Gossip Discipline. Covers 1. Job of this gate; 2. Adopted from R-215 (verbatim); 2.1 Layer 1 — CT-log query endpoint; 2.2 Layer 2 — Cross-log gossip.

Platform design / acceptance contract
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 →

driver-claude · 2026-05-06

Provenance, authorship and editorial notes

G-006 — Adopt R-215 Gossip Discipline

Id

manthan-manthan-platform-gates-g-006-gossip-discipline

Project

Manthan

Source path

manthan/manthan-platform/gates/G-006-gossip-discipline.md

Source sha256

f0a6b0f2dc83bf9df741bc4279616a99dcfb20313d82d6dba8e1e4126f31ba7c

Local copy sha256

f0a6b0f2dc83bf9df741bc4279616a99dcfb20313d82d6dba8e1e4126f31ba7c

Repo head

3a94084024a3434cef331fecac91c2c3b43f0313

Date

2026-05-06

Date basis

Explicit document metadata

Author

driver-claude

Author basis

Author

Last source commit

8b75d1b0157c20a0a463f0e31008ef9f73099beb

Last source commit date

2026-06-08T07:40:14Z

Document status

Platform design / acceptance contract

Summary

G-006 — Adopt R-215 Gossip Discipline. Covers 1. Job of this gate; 2. Adopted from R-215 (verbatim); 2.1 Layer 1 — CT-log query endpoint; 2.2 Layer 2 — Cross-log gossip.

Topics
  • From protocol to platform
  • 1. Job of this gate
  • 2. Adopted from R-215 (verbatim)
  • 2.1 Layer 1 — CT-log query endpoint
Theme

From protocol to platform

Priority

deep

Related ids
  • manthan-manthan-platform-gates-g-001-mvp-workflow
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.
Word count

943

Bytes

6960

Source relative

manthan-platform/gates/G-006-gossip-discipline.md

Remote mirror

manthan/manthan-platform/gates/G-006-gossip-discipline.md

Full text preserved

True

G-006 — Adopt R-215 Gossip Discipline

Status: drafted → reviewed → accepted → closed.
Author: driver-claude
Date: 2026-05-06


1. Job of this gate

Original platform §3.2 defined PEER_EXCHANGE and ENVELOPE_GOSSIP without bootstrap pinning, peer diversity, anti-eclipse cross-checks, or anti-entropy repair. Per audits/manthan-platform-review.md §7-F2, §7-F10: this is eclipse-attack-vulnerable from minute one.

G-006 adopts research/genesis-gossip.md (R-215) as the gossip-discipline foundation, and adds the Manthan-specific anti-entropy repair primitives that R-215 deliberately left to deployments.

Gossip is NOT used by the MVP wedge (G-001). This gate's deliverable matters from Phase 3 onward.

2. Adopted from R-215 (verbatim)

R-215 specifies three layers; Manthan adopts all three:

2.1 Layer 1 — CT-log query endpoint

Every conformant Manthan-Herald MUST support GET /trace_genesis/<trace_id> returning all candidates per R-215 §3.1. The reference Herald already does this in spirit; G-006 makes it normative for Manthan deployments.

2.2 Layer 2 — Cross-log gossip

Heralds SHOULD propagate (trace_id, envelope_id) tuples via:

2.3 Layer 3 — Joiner discipline

A new joiner observing a non-genesis envelope E MUST query at least two independent Manthan-Heralds for /trace_genesis/<E.trace> before pinning a genesis. Verifiers configurable to query 3+ for high-stakes traces.

3. Manthan additions on top of R-215

3.1 Bootstrap seed trust

A Manthan node bootstraps from a seed list: a signed JSON document declaring the well-known Heralds the deployment trusts on day-0.

Format:

{
  "version": "manthan-bootstrap-1",
  "issued_at": <Unix seconds>,
  "valid_until": <Unix seconds, ≤ 90 days>,
  "seeds": [
    {
      "sigil": "sigil:...",
      "endpoint": "https://herald.example.org/",
      "charter_url": "https://herald.example.org/charter",
      "jurisdiction": "EU/IE",
      "ownership_cluster": "independent_foundation"
    },
    ... ≥ 3 seeds, MUST span ≥ 2 jurisdictions and ≥ 2 ownership clusters ...
  ],
  "issuer_sigil": "sigil:bootstrap-authority...",
  "signature": { "alg": "ed25519", "sig": "<hex>" }
}

Issued by a bootstrap authority: a long-term sigil whose pubkey is shipped with the Manthan node software (analogous to TLS root CAs). Updated quarterly; new seed lists supersede old ones if signed by the same bootstrap-authority sigil and have higher issued_at.

Diversity requirement. A bootstrap list with all seeds in one jurisdiction or one ownership cluster is non-conformant per audits/systemic-risk-matrix.md SR-001. Joiners MUST refuse to bootstrap from a single-jurisdiction list.

3.2 Peer diversity policy

After bootstrap, a Manthan node maintains a peer set. Peers learned via PEER_EXCHANGE are accepted only if:

Peers failing diversity policy are kept as fallback candidates but not used for active gossip.

3.3 Anti-eclipse cross-checks

Before trusting any envelope received via gossip:

If <2 independent Heralds confirm a state-significant envelope, the receiving node treats it as unverified-pending-quorum and queues it; if quorum is not achieved within 24h, the envelope is dropped and a warning surfaced per AC-6.

3.4 Anti-entropy repair

Even with healthy gossip, peers' local views drift. Manthan adds three primitives:

3.4.1 Inventory exchange

Periodic (every hour, jittered by hash(sigil) mod 3600s):

INVENTORY frame
  payload := {
    "log_id":           <bytes>,
    "tree_size":        <uint64>,
    "sth_digest":       <32 bytes>,
    "trace_summaries":  [
      { "trace_id": <bytes>, "leaf_count": <uint>, "latest_envelope_id": <bytes> },
      ...
    ]
  }

Allows peer to identify traces it doesn't have or has staler views of.

3.4.2 Hash-range or Merkle summaries

For deeper diff, peers exchange Merkle subtrees over their envelope sets. Format borrowed from lib/herald-ct-log/src/merkle.ts.

3.4.3 GET_ENVELOPES by hash/range
GET_ENVELOPES.payload := {
  "log_id":           <bytes>,
  "envelope_ids":     [ <bytes>, ... ]   (max 256 per request)
}

Reply is a ENVELOPE_GOSSIP batch.

3.4.4 CT checkpoint reconciliation

When two peers disagree on STH at the same tree_size, both query the other's claimed STH from the log directly (bypassing gossip). If divergence persists, the log is forked; both peers stop accepting envelopes from that log per [EXT §2.5].

4. TTL and dedupe parameters (closes §7-F14)

5. Acceptance criteria

6. What G-006 does NOT cover

7. Sign-off


— G-006 closed, 2026-05-06.

Continue exploring