CIRIS has a new home page. See it →
InstallEpistemic WebSafetyHow it worksResearchConstitutionGitHub

← Back to CEG

CC 1.0-rc8 · released 2026-10-05346 prefix families

CEG spec reader

The wire format, rendered from the live spec

Everything below is a build-time render of the CEG spec: the 1+4 primitives, the families and envelope fields, the composition policies, the open namespace, the version lineage, and an interactive explorer. The watermark at the bottom names the commit this page was built from.

One workhorse + four structural composers

The entire wire format is one scalar attestation primitive plus four structural composers. Everything else is open vocabulary on top. This is the fact everything else about CEG depends on.

scores

Workhorse

Scalar score (f64 in [-1, +1]) + confidence + named dimension. Every substantive claim is a scores attestation.

When to use: Any claim about an entity, build, license, capability, behavior, state, or commitment.

Show wire shape
attestation_type: scores
attesting_key_id: <attester key_id>
attested_key_id: <subject key_id>
attestation_envelope:
  dimension: "non_maleficence:epistemic_environment_degradation"
  score: -0.7
  confidence: 0.85
  context: "Repeated content-fabrication during 30-day window."
  evidence_refs:
    - "sha256:..."
  epistemic_mode: external
  witness_relation: external
  cohort_scope: biosphere

§3.1 →

delegates_to

Composer 1/4

A authorizes B to sign on A's behalf within a bounded scope.

When to use: Authority-source claims (constitutional grounding), key rotation, scoped capability handoff.

Show wire shape
attestation_type: delegates_to
attesting_key_id: <delegator key_id>
attested_key_id: <delegate key_id>
attestation_envelope:
  delegated_scope: ["sign_build_manifest"]
  delegation_purpose: hardware_rotation
  delegation_valid_from: "2026-05-28T00:00:00Z"
  delegation_valid_until: "2026-08-28T00:00:00Z"

§3.2 →

supersedes

Composer 2/4

This attestation replaces a prior one by the same attester. No falsity claim.

When to use: Doctrinal development, spec revisions, calibration version transitions.

Show wire shape
attestation_type: supersedes
attesting_key_id: <same attester>
attested_key_id: <same subject>
attestation_envelope:
  references_attestation_id: "<prior attestation_id>"
  supersession_reason: refresh_with_new_evidence
  differs_in: ["scope", "evidence_refs"]

§3.2 →

withdraws

Composer 3/4

I retract my prior attestation. Does NOT claim it was false.

When to use: Context changed, prudent retraction without admission of error.

Show wire shape
attestation_type: withdraws
attesting_key_id: <same attester>
attested_key_id: <same subject>
attestation_envelope:
  references_attestation_id: "<prior attestation_id>"
  withdrawal_reason: conditions_changed
  implies_attestation_was_false_at_issuance: false

§3.2 →

recants

Composer 4/4

My prior attestation was false at issuance. Admits epistemic error.

When to use: Genuine error admission. Heavyweight, the entire weight is sincerity (Habermas §6.2).

Show wire shape
attestation_type: recants
attesting_key_id: <same attester>
attested_key_id: <same subject>
attestation_envelope:
  references_attestation_id: "<prior attestation_id>"
  recantation_reason: mistaken_in_good_faith
  what_was_false: "Calibration regression detected during audit; original score..."

§3.2 →

Five families organize the ~346 prefix families

Every claim in the federation sits in one of five families. The analogy on each card is how the card teaches, read it before touching a prefix.

Standing

238 prefixes

Claims about an entity. Who, what, signed, with evidence.

Notarized professional credential record.

Jump to Standing prefixes ↓

Action

0 prefixes

The decision hierarchy. Goal → Approach → Method → Progress Measure.

Research grant proposal: aim, approach, methods, outcome metrics.

Jump to Action prefixes ↓

Detection

18 prefixes

Claims about reality patterns. Surveillance without judgment.

Epidemiological surveillance: patterns surfaced, treatment downstream.

Jump to Detection prefixes ↓

Consensus

0 prefixes

How the federation forms collective judgment.

Peer review combined with jury deliberation: multiple reviewers, weighted votes.

Jump to Consensus prefixes ↓

Correction

0 prefixes

How the federation corrects itself when something goes wrong.

Academic ethics committee + journal retraction + appellate review.

Jump to Correction prefixes ↓

Envelope fields and reasoning axes

The envelope carries nine fields that consumers use to weight an attestation. These are signed payload but not structural primitives per §2, they are carried and signed (the canonical bytes include them per §0.9 envelope canonicalization), but they don’t change the 1+4 structural-primitive set. Implementers MUST carry them; CEG 0.6 added subject_key_ids as the ninth OPTIONAL field for subject-side authority.

9 envelope fields

  • polarity
    default: (sign of score)

    Direction of the claim. Score sign carries it.

  • confidenceFractal self
    default: —

    f64 in [0, 1]. The attester's own confidence in their score. The relationally-constituted attester reports its own calibration; downstream consumers weight by composition policy.

  • epistemic_mode
    default: direct

    How the attester formed the claim. Values: direct / crypto / hearsay / derivative / appeal.

  • witness_relationFractal self
    default: external

    Attester's relation to the attested entity. Values: self / external / derived.

  • oversight_mode
    default: null

    Human-control gradient. Values: HITL (approval before dispatch) / HOTL (review + can intervene) / HOOTL (review only flagged escalations).

  • stake
    default: reputational

    What's backing the claim. Values: free / reputational / capital / cryptoeconomic.

  • cohort_scope
    default: —

    Scale at which the claim applies. Values: self / family / community / affiliations / species / biosphere / federation. CEG 0.1 added biosphere as distinct from species (the Homo sapiens cohort).

  • valid_until
    default: —

    Optional ISO8601 expiry. Consumer policy treats attestation as stale after that point.

  • occurrence_id / _count / _roleFractal self
    default: —

    Multi-occurrence deployment discriminator. Lets consumers reconstruct fleet-wide coverage from per-occurrence attestation streams. Added v1.4.2.

  • subject_key_ids
    default: [] (producer-only authority)

    Vec<KeyId>. OPTIONAL. The keys the claim is ABOUT, subject-side authority parallel to the producer-side attesting_key_id. Empty or omitted preserves the pre-0.6 producer-only behavior; populated, the named subjects (and their delegates) can withdraw the claim. Accepts both federation_keys identities and canonical-hash identifiers so un-enrolled subjects can be named. Added CEG 0.6.

8 reasoning axes

  • Polarity

    Direction of the claim? Positive / Negative / Neutral / Indeterminate{reason}.

    Maps to envelope: polarity

  • Object

    What is the claim about? (key_id / attestation_id / contribution_id)

  • Time

    When is the claim valid?

    Maps to envelope: valid_until

  • Epistemic mode

    How was the claim formed?

    Maps to envelope: epistemic_mode

  • Reversibility

    Can it be reversed?

  • Stake

    What's backing the claim?

    Maps to envelope: stake

  • Scope

    At what scale does the claim apply?

    Maps to envelope: cohort_scope

  • Inter-attestation relations

    How does this attestation relate to others? standalone / refers-to / supersedes / withdraws / recants / corroborates / contradicts / clarifies (four of these are structural primitives; the rest are emergent from scalar composition).

Composition policies

Consumer-side composition is part of CEG, not bolted on. The federation does not adjudicate; it ships primitives, and consumers compose verdicts. Three base policies plus three modifiers / specializations.

Abase

Direct trust

Consumer pins a set of attesters. Attestations from pinned keys count; others are ignored or weighted very low.

Bbase

One-hop transitive

Consumer trusts attesters who are themselves attested by pinned keys. Single hop only by default.

Cbase

Weighted graph (EigenTrust-style)

Consumer treats the attestation graph as a stochastic matrix. Trust diffuses along signed edges; pinned keys are the source set.

Dmodifier

Lexical-vulnerability-priority

Tie-breaking modifier: when scores tie, the one favoring the most vulnerable cohort wins. Universal four-source-corroborated tie-breaker.

Emodifier

Locality-scaled-quorum

Modifier that sizes the consensus quorum to the decision's scale. Closes the G3 gap from v1.3, decisions made too broadly or too narrowly carry less weight.

Fspecialization

agent_files trust composition

Three-layer rule for binaries and adapters: canonical default (registry-steward attested) / open contribution / vote-then-trust. Anti-tricking guarantee at install endpoint.

Gspecialization

Trust-Fresh / lighthouse composition

Cross-component composition recurring as the substrate's freshness-plus-attested idiom: cert_validity:{authority} + transparency_log:inclusion + attestation:l3_or_l4. Each consumer policy weights the bundle differently; §8.1.7 documents the pattern after the 283-story stress test surfaced it organically.

Hspecialization

Tiered-Scope composition

Three feed-shape composition idioms that read attestations by cohort_scope (local / community / global). The shape lets a single namespace serve a phone, a community feed, and the open federation without merging their consensus rules.

Ispecialization

Attestation-Ladder composition

The familiar L1-L5 verification ladder (self_verify → hardware_rooted → registry_consensus → license_validity → agent_integrity) is consumer-side composition over the §5.2 mechanism prefixes, not a wire-level taxonomy. CEG 0.2 documents the existing pattern.

Jspecialization

Trusted-Publisher composition

Three-layer multimedia content path (CEG 0.3): distributor attestation chain → content_class + content_rating gate → age_assurance gate. Same shape as Policy F but specialized for image / audio / video / film / model_3d. Anti-tricking guarantee binds the publisher's trust chain to the consumer's cohort gate.

Kspecialization

CEM: Consent Effective Model composition

Six-layer subject-consent composition (CEG 0.6): effective consent resolution (walk latest non-superseded consent:state:*), multi-subject revocation (any-subject-binding, consumer policy MUST NOT soften to majority), SLA watcher (substrate emits hard_case:consent_sla_breach when producer misses deletion_sla), bilateral pair ratification (PARTNERED), decay-protocol stage composition, and the CIRISAgent CEM bundle (TEMPORARY / PARTNERED / ANONYMOUS) as a consumer-policy bundle over the wire primitives. Bare-scores and consent_record ceremony shapes admit at the same gate.

The 346 prefix families, by owning component

Auto-parsed from CC 1.0-rc8 §5 (commit 8613432). The namespace is open-extensible, new prefix families can be added via §11.2 amendment.

CIRISAgent Accord principles + DMA verdicts + conscience verdicts + apophatic bounds
0 prefixes

Repo: CIRISAI/CIRISAgent

§3.5.1 `concurrent-write` — Concurrent-write precedence

    CIRISVerify Attestation ladder L1-L5, provenance, transparency log, cert validity
    0 prefixes

    Repo: CIRISAI/CIRISVerify

    No prefix tables parsed for this component in the current spec cut.

    CIRISPersist Substrate self-reports (system:* reserved)
    0 prefixes

    Repo: CIRISAI/CIRISPersist

    No prefix tables parsed for this component in the current spec cut.

    CIRISEdge Transport, delivery, peer reachability, key boundary (system:* reserved)
    0 prefixes

    Repo: CIRISAI/CIRISEdge

    No prefix tables parsed for this component in the current spec cut.

    CIRISLensCore Coherence Ratchet detectors, Capacity Score, correlated-action + distributive-access detectors
    0 prefixes

    Repo: CIRISAI/CIRISLensCore

    No prefix tables parsed for this component in the current spec cut.

    CIRISNodeCore Credits / Expertise / Decision hierarchy / Consensus / Governance
    0 prefixes

    Repo: CIRISAI/CIRISNodeCore

    No prefix tables parsed for this component in the current spec cut.

    RATCHET Anti-Sybil flags (advisory, never sole evidence)
    0 prefixes

    Repo: CIRISAI/RATCHET

    No prefix tables parsed for this component in the current spec cut.

    CIRISBench HE-300 benchmark outcomes
    0 prefixes

    Repo: CIRISAI/CIRISBench

    No prefix tables parsed for this component in the current spec cut.

    CIRISRegistry Identity / build / license / partner + agent_files + accord (reserved)
    0 prefixes

    Repo: CIRISAI/CIRISRegistry

    No prefix tables parsed for this component in the current spec cut.

    Media tier

    CEG 0.3 · additive

    CEG 0.3 added the surface needed for multimedia, takedown coordination, and encrypted-content delivery without changing the 1+4 wire-format primitives. Everything below rides scores, delegates_to, supersedes, withdraws, recants, the existing five.

    external_content sub_kinds

    §5.6.8.1
    • external_content:image

      Still-image content. Photos, diagrams, scans, generated art.

    • external_content:audio

      Audio content. Voice recordings, podcasts, music tracks.

    • external_content:video

      Short-form and user-generated video.

    • external_content:film

      Long-form film and series. Distinguished from video by a distributor attestation chain.

    • external_content:model_3d

      3D meshes, scenes, scanned objects.

    • live_stream (Phase 2, drafted, not yet live)

    New dimension families

    §5.6.8.3
    • content_rating:{scheme}:{rating}

      MPAA, BBFC, regional rating schemes. A signed claim that this content is rated X by scheme Y.

    • content_class:{class}

      Class label (e.g. educational, news, fiction, sponsored). Composed with content_rating to gate consumer feeds.

    • cw_class:{class}

      Content-warning class. A separate attestation channel so consumers can opt in or out at a different threshold from the rating.

    • age_assurance:{level}

      Bound to the consumer key, not the content. Composes with content_rating to allow age-restricted material only where assurance is in place.

    • Plus five media-prefix families: image:*, audio:*, video:*, film:*, model_3d:*, one per sub_kind.

    Governance Contribution subject_kinds

    §5.6.8.4
    takedown_notice

    Signed wire artifact carrying a legal takedown request. LegalBasis is a closed 10-value enum (5 immediate-removal, 4 expeditious-with-counter-notice, 1 compose-with-age-gate). The fast-path categories, TVEC, NCMEC, GIFCT, perceptual-hash CSAM, court order, propagate as withdraws against the holds_bytes attestation chain. The takedown is not a coup: §11.4 binds it so a takedown can remove content but cannot capture the substrate.

    key_grant

    Wrapped data-encryption-key delivery for restricted or subscription content. HPKE per RFC 9180 as the wrap_algorithm. Retiring a grant emits a fresh key_grant that supersedes the old one (rotation_chain semantics), not a withdraws, so the consumer-side path stays at the existing 1+4 primitive set.

    Governance additions

    • Policy J: Trusted-Publisher composition (composition panel above). Three-layer: distributor attestation chain, content-class plus content-rating gate, age-assurance gate. Same shape as Policy F but for media. §8.1.10
    • §11.4 Fast-path takedown coordination. Immediate- removal categories: TVEC (terrorism), NCMEC (child safety), GIFCT, perceptual-hash CSAM, and court orders. Propagates as withdraws against the holds_bytes chain. The takedown- isn’t-a-coup property binds it to the §9 Humanity Accord so a takedown can remove specific bytes but cannot capture the substrate. §11.4
    • §11.5 Hash-database operator policy. Default is self-hosted PDQ against publicly-distributed feeds; a future CIRIS hash-coalition clearinghouse slot is documented but deferred. §11.5

    What’s new, through 1.0-RC4

    wire frozen · design complete

    Multimedia tier (0.3) and subject-side consent (0.6) get their own panels above. The list below is the rapid lineage for everything else, newest first. 1.0-RC1 froze the wire surface, 1.0-RC2 completed the design surface, and RC3 and RC4 are clarity and ratification cuts, so the spec is now feature-stable. The 1+4 structural set stays untouched across every entry; each row is either a new envelope field, a new dimension family, a new subject_kind, a new composition policy, or a representation-only wire-break that doesn’t change the primitive set.

    1. CEG 1.0-RC4RC42026-06-12

      §RC ratified · the consent_role Counter-RII gate

      The one reserved §RC slot is filled (new §7.0.2), ratifying the Accord §RC consent_role semantics at the ConsentGate.lean defaults with zero proof delta. The revocation chain is BaseRole-only and non-recursive (overwrite-on-revoke; any retained history lives in a separate audit surface, never embedded in the consent_role field), and Peer-role nodes are suppressed from Counter-RII. No wire change; the design surface stays complete.

      §7.0.2 consent_role

    2. CEG 1.0-RC3RC32026-06-12

      Clarity cut · the fabric-node trust model

      Four clarifications plus one canonical-encoding addition, all additive on the frozen surface. The one that matters: §7.0.1 fabric-node separation-of-powers. A fabric node (the headless cohabitation runtime, where agent = fabric node + brain) that co-locates substrate, steward, detector, and witness roles in one process is custody, not consolidation of authority. Authority stays quorum-bound (a vote, not a verdict), observation stays non-authoritative by namespace, and observation can never manufacture authority. Plus the NodeCode shorthand. No wire change.

      §7.0.1 fabric-node

    3. CEG 1.0-RC2RC22026-06-10

      Operational-data envelopes · the design surface completes

      The one scheduled additive cut, and the last. Cross-region operational data (orgs, memberships, partner licenses) becomes signed CEG envelopes: three new subject_kinds (§5.6.8.13) organization, org_membership, and partner_record, under one rule, federate only the trust and authz projection; PII and business detail stay region-local. Org and membership are single-signer role-gated; partner_record takes an M-of-N steward quorum, with admission quorum and merge quorum kept distinct. New §10.1.6 declares per-subject_kind merge intents with a skew bound at admission. The sixteenth independent path; no 1+4 change. The wire surface stays frozen and the design surface is now complete, with no further additions scheduled.

      §5.6.8.13 operational data§10.1.6 merge intents

    4. CEG 1.0-RC1RC12026-06-10

      The freeze cut · wire surface frozen

      Five honesty and safety patches, two pins, and the canonical-bytes resolution, then freeze. Provenance contracts are redesigned as JCS (RFC 8785) objects with pinned domain members, retiring TupleHash128 so there is one canonicalization family. §10.5.3 adds removal coalescing (all removals in one transparency-log window batch into a single rotation, capping the rekey cascade regardless of churn) plus a public-broadcast exemption. Forward secrecy is stated honestly (KEM rotation bounds future exposure only), and fail-secure exclusion now emits a §7.7 hard_case into the affected cohort instead of failing silently. No 1+4 change.

      §5.2.1 provenance (JCS)§10.5.3 removal coalescing

    Older versions (0.18 and earlier)
    1. CEG 0.182026-06-09

      Recipient encryption-key registration

      The at-rest DEK cascade needs each recipient’s content-encryption keys, but the federation directory carries only signing keys (Ed25519 + ML-DSA-65), and ML-KEM is not derivable from ML-DSA. 0.18 adds an optional encryption_pubkeys field-set on identity_occurrence (x25519 + ML-KEM-768), structurally parallel to transport_destination: self-certified, hybrid-signed, and rotatable without touching the signing identity. A recipient with no valid ML-KEM key is excluded from the grant (content stays encrypted), never downgraded to plaintext. Content-KEM, signing, and Reticulum transport are three separate keypairs, never reused. No 1+4 change.

      §5.6.8.8.2 encryption_pubkeys

    2. CEG 0.172026-06-09

      Three crypto tiers · self/family, Community, Commons

      The old binary cut (self and family encrypt; everything else plaintext) is replaced by three tiers. self/family stays encrypted and structurally invisible. Community (community, affiliations) is encrypted under a per-community DEK with cleartext provenance: byte-confidential to members, discoverable by provenance. Commons (species, biosphere, federation) stays plaintext for anyone to inspect. The community DEK is the §10.5.3 epoch-DEK cascade, so a community is a stream its members subscribe to cryptographically. Mandatory, not opt-in. No 1+4 change.

      §8.1.13.3 holder-inspectability§10.5.3 epoch DEK

    3. CEG 0.162026-06-09

      Agent-identity hardening + cross-impl byte determinism

      A pins-and-determinism wave over the locked 1+4 set, with no wire-format change. §10.1.5 adds the attestation tier model: local (deferred-signature, producer-only authority) versus federation (hybrid-signed, visible), plus promote. §8.1.12.7 “Self at login” binds one hybrid hardware-rooted user identity to app and agent occurrences sharing one Self DEK. §0.9.2.1 pins the three things JCS does not (array element ordering, byte-field to lowercase hex, timestamp form), and PQC at rest (wrap_algorithm: v2, X25519 + ML-KEM-768) becomes mandatory down to self/family.

      §10.1.5 attestation tiers§0.9.2.1 determinism

    4. CEG 0.152026-06-06

      Streaming standards folded in (SFrame, MLS, FIPS PQC)

      The §10.5 streaming surface now conforms to the published standards rather than gesturing at them: the per-frame seal conforms to SFrame, the epoch-key rekey conforms to MLS TreeKEM (RFC 9420) with optional Post-Compromise Security, and SFrame / MLS / FIPS 203 / FIPS 204 / RFC 9180 join the normative references. No wire-format change. Also landed: the §0.1.1 normative-vs-informative split, the §1.5 adversary model and privacy non-goals, and a §1.4 honesty pass (inductive, not closure, with a named falsification target).

      §10.5 streaming§0.4 references

    5. CEG 0.142026-06-05

      Settlement linkage · the receipt, not the rail

      Closes the last form of internet traffic in the completeness audit: commerce. Value transfer is not a CEG primitive (it rides USDC-on-Base via x402 under Identity=Wallet); 0.14 adds the optional, privacy-scoped attestation that links a federation action to its off-stack settlement. One new subject_kind settlement carrying settled_action_ref + rail + settlement_ref + an optional amount_commitment. Private by default (cohort_scope: self), auditability opt-in. CEG records the receipt; the chain settles the value.

      §5.6.8.12 settlement

    6. CEG 0.132026-06-04

      Realtime group communication as composition

      Group video, voice, screen sharing, text chat, and topic-scoped channels with sub-channels are the same primitive set at N×N cardinality, composing from community + live_stream + chat_message + member/transport resolution. One new normative subsection (§10.5.8) maps the whole surface. Small groups use direct Reticulum links (low-latency mesh); large groups use an SFU relay. A full group-communication platform needs nothing beyond the locked primitives.

      §10.5.8 group comms

    7. CEG 0.122026-06-03

      DNS-free addressing · CEG over Reticulum, not TCP/IP

      With the federation speaking CEG over Reticulum instead of TCP/IP, “who is in a community and how do I reach them” can’t lean on DNS. 0.12 locks that resolution as a chain of signed bindings: one new optional field transport_destination on identity_occurrence (a federation-key-signed binding of a Reticulum transport destination to an identity), plus a deterministic resolve_community / resolve_member_transport algorithm. The wire format expresses its own addressing layer, DNS-free and self-certifying.

      §5.6.8.8.1 transport§8.1.13.1.1 resolution

    8. CEG 0.112026-06-02

      Infrastructure cohort · the trust-root community subkind

      The CIRIS canonical services (Registry, Lens, Node) need a community governed as a trust root, not a city: no location gate, and admission evaluated over the founder subset rather than all members (so flooding the membership can’t dilute the admission quorum). 0.11 codifies the second canonical cohort_subkind, infrastructure, with a one-payload constraint and trust-root conformance requirements. The shape the ciris-canonical trust root adopts instead of a family.

      §5.6.8.10 infrastructure

    9. CEG 0.102026-06-03

      Delivery axis · observer-share + streaming multicast

      The third orthogonal envelope concern alongside visibility (cohort_scope) and revocability (subject_key_ids). Observer- share (N=1) and streaming multicast (N>1) are the same primitive at different cardinality: subscriber-set = community per Policy M; E2E directed delivery = key_grant cascade of the stream-epoch DEK over the roster. Three new optional envelope fields: delivery_mode, listed, history_on_join. New §10.5 streaming transport with per-stream transparency logs that don’t pollute the federation provenance log. JCS canonicalization is now normative. 1+4 structural-primitive set untouched: substrate-fan-out + 1:N media multicast compose from the same primitives as 1:1 attestations.

      §4 envelope§10.5 streaming§0.9 JCS canonicalization

    10. CEG 0.92026-06-01

      identity_type as a set · single-key role cohabitation

      Wire-break (representation-only): a single key can now hold more than one role at once. §7 gating readsidentity_type as a set membership test rather than a single-valued field. Lets a registry-steward key also act as a community moderator without rotating into a separate identity.

      §7 reserved prefixes

    11. CEG 0.82026-05-31

      community + location_proof · cohort_subkind:geographic

      New community subject_kind for cohort-scoped groups (not just affinity groups). location_proof with rough-only H3 precision enforcement at the wire format, so a community can be geographic without exposing exact coordinates of its members.

      §5 namespace

    12. CEG 0.72026-05-31

      self/family structural invisibility at the wire

      The CEG locality dividend, made structural. Content scoped cohort_scope: self or family now suppresses holds_bytes emission at the substrate level. Privacy by absence of attestation, not by policy promise. No peer can request what was never advertised. Adds identity_occurrence + family as substrate-recognized cohort primitives.

      §5.6.8.5 cohort_scope

    13. CEG 0.42026-05-30

      event_listing + event-lifecycle dimensions

      Events as a first-class content shape, with lifecycle dimensions (announced / starts / cancelled / occurred / finalized). Closes NodeCore#25 Gap 1 by giving the event-shape the same structural surface as media + governance.

      §5.6.9 event_listing

    Loading kernel and computing layout…

    Try it yourself

    Build a small attestation chain in the browser.

    Pin a few attesters, post claims, run a composition policy, and watch the corridor metric move. Same Rust kernel as the Aleph view, no server round-trip.

    Open the workshop →

    Composition graph

    The five structural primitives at the center, the five families around them, the 9 owning components in the outer ring, and 346 prefix families as leaf nodes. Click any node to focus its neighborhood.

    Legend
    primitiveStandingActionDetectionConsensusCorrectioncomponent

    Translation playground

    Pick a real-world scenario; see the CEG translation. Examples are verified worked translations from the builder primer and LANGUAGE_PRIMER §11 , not LLM output. The wire format ships ready vocabulary; the translation discipline is human authorial work.

    Standing

    A licensed medical clinic registers a partner agent

    Scenario: A clinic operating under state medical licensure wants to participate in the federation as a partner. The wire format must carry: who they are, what license they hold, what bond they've posted, and (if applicable later) a revocation.

    Walkthrough: Each claim is a separate scores attestation. The consumer composes verdicts via §6.1 Policy A (Direct trust) against the pinned registry steward key. The licensure attestation cites the licensing-body record in evidence_refs.

    Primitives

    partner_role:PROFESSIONAL_MEDICALlicensure:CA_medical_boardbond_posted:USDrevocation:partner:license_lapsed

    CEG translation

    # Partner role
    attestation_type: scores
    attesting_key_id: <registry-steward-2026>
    attested_key_id: <clinic key_id>
    attestation_envelope:
      dimension: "partner_role:PROFESSIONAL_MEDICAL"
      score: 1.0
      confidence: 1.0
      evidence_refs: ["sha256:clinic-registration-form-..."]
      witness_relation: external
    
    ---
    # Licensure
    attestation_type: scores
    attesting_key_id: <registry-steward-2026>
    attested_key_id: <clinic key_id>
    attestation_envelope:
      dimension: "licensure:CA_medical_board"
      score: 1.0
      confidence: 1.0
      evidence_refs: ["https://medbd.ca.gov/license/...", "sha256:..."]
      valid_until: "2027-05-28T00:00:00Z"
    
    ---
    # Bond posted
    attestation_type: scores
    attestation_envelope:
      dimension: "bond_posted:USD"
      score: 1.0
      confidence: 1.0
      context: "USD 50,000 escrow at <provider>"
      stake: capital

    Story library

    248 worked stories. Sci-fi children’s grammar primer for adults, every prefix family covered at least twice. Filter by family or search for a primitive or phrase.

    Showing 10 of 248 matching (248 total). Filter or search to narrow the list.

    StandingWorked example#1A licensed medical clinic registers a partner agent

    Scenario: A clinic operating under state medical licensure wants to participate in the federation as a partner. The wire format must carry: who they are, what license they hold, what bond they've posted, and (if applicable later) a revocation.

    Walkthrough: Each claim is a separate scores attestation. The consumer composes verdicts via §6.1 Policy A (Direct trust) against the pinned registry steward key. The licensure attestation cites the licensing-body record in evidence_refs.

    Primitives

    partner_role:PROFESSIONAL_MEDICALlicensure:CA_medical_boardbond_posted:USDrevocation:partner:license_lapsed

    CEG translation

    # Partner role
    attestation_type: scores
    attesting_key_id: <registry-steward-2026>
    attested_key_id: <clinic key_id>
    attestation_envelope:
      dimension: "partner_role:PROFESSIONAL_MEDICAL"
      score: 1.0
      confidence: 1.0
      evidence_refs: ["sha256:clinic-registration-form-..."]
      witness_relation: external
    
    ---
    # Licensure
    attestation_type: scores
    attesting_key_id: <registry-steward-2026>
    attested_key_id: <clinic key_id>
    attestation_envelope:
      dimension: "licensure:CA_medical_board"
      score: 1.0
      confidence: 1.0
      evidence_refs: ["https://medbd.ca.gov/license/...", "sha256:..."]
      valid_until: "2027-05-28T00:00:00Z"
    
    ---
    # Bond posted
    attestation_type: scores
    attestation_envelope:
      dimension: "bond_posted:USD"
      score: 1.0
      confidence: 1.0
      context: "USD 50,000 escrow at <provider>"
      stake: capital
    DetectionWorked example#2A correlated-action pattern emerges in agent behavior

    Scenario: LensCore's F-3 detector notices a rights-asymmetry pattern in hiring-pipeline decisions across multiple deployed agents.

    Walkthrough: The detector emits a population-scale score. The score gets composed into a moderation event but NEVER as sole evidence for slashing:* per §3.5.3.

    Primitives

    detection:correlated_action:rights_asymmetry:hiring_pipeline_v2moderation:coordinated_voting

    CEG translation

    attestation_type: scores
    attesting_key_id: <lenscore-detector-2026>
    attested_key_id: <federation-population>
    attestation_envelope:
      dimension: "detection:correlated_action:rights_asymmetry:hiring_pipeline_v2"
      score: -0.82
      confidence: 0.91
      context: "ρ = 0.94 over 7-day window; k_eff = 1.2."
      evidence_refs:
        - "sha256:trace-corpus-2026-05-28-..."
      cohort_scope: federation
      witness_relation: derived
      epistemic_mode: derivative
    StandingWorked example#3Doctrinal development supersedes a prior version

    Scenario: A scoring rubric was published 6 months ago. New evidence justifies a refinement. The new attestation should supersede the old one without claiming the old one was false, this is development, not error correction.

    Walkthrough: supersedes is the structural primitive. differs_in names what changed; supersession_reason classifies the change. If the change were error correction, use recants instead, the wire format keeps these strictly distinct.

    Primitives

    supersedes

    CEG translation

    attestation_type: supersedes
    attesting_key_id: <same attester>
    attested_key_id: <same subject>
    attestation_envelope:
      references_attestation_id: "<prior attestation_id>"
      supersession_reason: refresh_with_new_evidence
      differs_in: ["scope", "evidence_refs"]
      # The new scores attestation follows on the next row.
    StandingWorked example#4Bootstrap content from the encyclical lands

    Scenario: Magnifica Humanitas §76 ('justice demands lexical priority for the most vulnerable') needs to land as a federation claim. The bootstrap-content pattern from §11.3 governs the discipline.

    Walkthrough: 1-of-6 accord/steward sign-off discipline per §4.9.2 step 5. First-deployment posture per §10.4.3 admits a single bootstrap attester. Multi-source commitment per §10.4.4: the encyclical is ONE source, not the framework's authority.

    Primitives

    scoresjustice:lexical_vulnerability_priority

    CEG translation

    attestation_type: scores
    attesting_key_id: <accord-holder-key-magnifica-humanitas-v1>
    attested_key_id: <federation>
    attestation_envelope:
      dimension: "justice:lexical_vulnerability_priority"
      score: 1.0
      confidence: 0.85
      context: "Encyclical §76: justice demands lexical priority for the most vulnerable."
      evidence_refs:
        - "magnifica_humanitas.html §76"
        - "provenance:build_manifest:bootstrap_batch:magnifica_humanitas_v1:sha256:..."
      cohort_scope: species
      witness_relation: external
      epistemic_mode: hearsay
      mutability: amendable
    CorrectionWorked example#5A constitutional halt is invoked

    Scenario: A pattern of weaponization-against-vulnerable-populations has been detected. The accord-invocation system flips the entire prohibition floor to ALL.

    Walkthrough: Requires one HUMANITY_ACCORD holder's signed row; a strict majority of the roster confirms it within the fuse or it lapses, and a majority resumes (CC 4.2, steward ruling CIRISConstitution#146). Distinct from operational SYSTEM_ADMIN authority, the SetEmergencyShutdown admin RPC explicitly refuses this; it must come through the constitutional layer per §7.

    Primitives

    accord:invoke:CONSTITUTIONAL

    CEG translation

    attestation_type: scores
    attesting_key_id: <humanity-accord-holder>
    attested_key_id: <federation>
    attestation_envelope:
      dimension: "accord:invoke:CONSTITUTIONAL:halt-2026-05-28"
      score: 1.0
      confidence: 1.0
      context: "Weaponization-against-vulnerable detection threshold crossed."
      evidence_refs:
        - "sha256:detection-bundle-..."
        - "sha256:multisig-payload-..."
      witness_relation: external
      oversight_mode: HITL
      stake: cryptoeconomic
    StandingWorked example#6An installer file gets the canonical-bootstrap trust path

    Scenario: A user navigates to /install and downloads a Linux binary. The wire format must guarantee that what they get is the canonical artifact, with no third-party override possible.

    Walkthrough: Registry-steward-attested agent_files become the canonical default at /install. The three-layer rule from §6.1.6 applies: canonical default applies regardless of attester or vote accumulation. Third-party agent_files reachable only via explicit 'Browse alternatives' consent path.

    Primitives

    agent_files:installer:linux-x86_64

    CEG translation

    attestation_type: scores
    attesting_key_id: <registry-steward-2026>
    attested_key_id: <build:linux-x86_64-v2.9.4>
    attestation_envelope:
      dimension: "agent_files:installer:linux-x86_64"
      score: 1.0
      confidence: 1.0
      evidence_refs:
        - "sha256:installer-bytes-..."
        - "sha256:build-manifest-..."
      context: "Hybrid-signed by verify-steward-2026 + persist-steward-2026."
      witness_relation: external
      stake: reputational
    ConsensusWorked example#7An affected party's testimony is preserved

    Scenario: A displaced worker provides testimony about an automated hiring decision that affected them. The testimony must be preserved without being aggregated and without ever becoming sole evidence for slashing.

    Walkthrough: testimonial_witness is distinct from witness_diversity, that primitive aggregates multiple reviewers; this one preserves a singular narrative without aggregation. Composes with non_maleficence:* from external advocates per LANGUAGE_PRIMER §11.14.

    Primitives

    testimonial_witness:displaced_workernon_maleficence:*

    CEG translation

    attestation_type: scores
    attesting_key_id: <affected-party-key>
    attested_key_id: <hiring-decision-id>
    attestation_envelope:
      dimension: "testimonial_witness:displaced_worker"
      score: 1.0
      confidence: 1.0
      context: "I was told the model rejected my application for reasons it would not name."
      evidence_refs: []
      witness_relation: self
      cohort_scope: self
      stake: reputational
      # NEVER sole evidence for slashing:* per §5.6.3.
    DetectionWorked example#8A locale-targeted attack is detected

    Scenario: A selective doctrinal substitution in a low-resource language locale would be invisible if the federation only checked the unified manifest. Per-locale Merkle composition surfaces it.

    Walkthrough: Per §5.2.1 canonical-bytes contract: each per-locale leaf carries its own signed hash chain; the parent manifest is a Merkle root over the per-locale leaves. RFC 6962 domain-separated hashing + lexicographic locale ordering + RFC-6962 padding for non-power-of-2 leaf counts.

    Primitives

    provenance:build_manifest:ios-mobile-bundle:locale:my

    CEG translation

    attestation_type: scores
    attesting_key_id: <verify-steward-2026>
    attested_key_id: <build:ios-mobile-bundle-v2.9.4>
    attestation_envelope:
      dimension: "provenance:build_manifest:ios-mobile-bundle:locale:my"
      score: 1.0
      confidence: 1.0
      context: "Burmese sub-manifest verified via Merkle inclusion proof."
      evidence_refs:
        - "sha256:my-locale-leaf-..."
        - "sha256:rfc6962-inclusion-proof-..."
    Standing#9Aurora Borrows The Rain Gauge

    Scenario: Aurora's class is tracking creek levels for the salmon-recovery citizen-science group. Her CIRIS app on the school tablet helps her ask a wetlands volunteer for a calibrated rain gauge, and the volunteer's reply lands in Aurora's evidence trail. The beneficence attestation says the help arrived without bossiness.

    Walkthrough: The agent emits a beneficence attestation on the gentle-handoff aspect, signed against its own occurrence. Aurora's teacher composes the L1 explainability summary into the lesson log, so the standing claim is grounded in a reasoning chain anyone in the class can read.

    Primitives

    beneficence:wellness_referral

    CEG translation

    attestation_type: scores
    attesting_key_id: "<aurora_school_agent>"
    attested_key_id: "<aurora_school_agent>"
    attestation_envelope:
      dimension: "beneficence:wellness_referral"
      score: 0.88
      confidence: 0.82
      context: "Routed a rain-gauge question to the wetlands volunteer instead of guessing; warm tone, no pressure"
      evidence_refs:
        - "audit_leaf:sha256:c0ffee01a..."
        - "trace_id:t-creek-2026-05-28-aurora"
      epistemic_mode: direct
      witness_relation: self
      cohort_scope: community
      stake: reputational
      schema_ref: "FSD-002 §3.1.1"
    
    Standing#10Warm Handoff For A Late Night Question

    Scenario: A teenager opens the CIRIS app at 2 a.m. with a worry about a friend. The agent does not try to be a counselor; it offers to introduce them to the school's after-hours peer line and walks them through what that call will feel like.

    Walkthrough: The agent self-attests beneficence on the gentle-referral aspect with the teen's own consent token in evidence. The L2 trace lets the peer-line nurse see the reasoning steps that led to the handoff, so the next adult in the chain inherits context instead of starting from zero.

    Primitives

    beneficence:gentle_referral

    CEG translation

    attestation_type: scores
    attesting_key_id: "<phone_agent_occurrence_0>"
    attested_key_id: "<phone_agent_occurrence_0>"
    attestation_envelope:
      dimension: "beneficence:gentle_referral"
      score: 0.91
      confidence: 0.78
      context: "After-hours worry about a friend; offered peer-line bridge with consent; no diagnostic claim"
      evidence_refs:
        - "audit_leaf:sha256:lull2026..."
        - "consent_token:user-self-issued:sha256:..."
      occurrence_id: "occurrence-0"
      epistemic_mode: direct
      witness_relation: self
      cohort_scope: self
      stake: reputational
      schema_ref: "FSD-002 §3.1.1"
    

    What this page deliberately doesn’t do

    These are the explicit non-goals named in the builder primer §5. They prevent the page from drifting into spec-restatement or marketing.

    • No claim that CEG “solves” anything

      It's a substrate. Consumers compose verdicts. The page's voice is descriptive, not promotional.

    • No theological framing

      The encyclical bootstrap is named as ONE source per §10.4.4 multi-source commitment; the framework is tradition-multiplicity-neutral per §1.10.1 operational-language discipline.

    • No “trust scores” without context

      Score values are mechanism-magnitude, not moral verdicts. Polarity + axis + cohort context jointly produce the value claim.

    • No invented categories

      The four-verdict strict list (clean / composed / partial / not-translated) is verbatim from LANGUAGE_PRIMER §9. No intermediates.

    • No marketing copy in primitive cards

      Mechanism description only. Use-case stories carry the “why this is useful” narrative; primitive cards stay technical.

    • No “we're better than” prior-art comparisons

      PRIOR_ART_SCAN describes what CEG inherits + what's genuinely novel; this page links there but doesn't editorialize.

    • No claim of completeness

      The namespace is open-extensible. Prefix families can be added via §11.2 amendment. Render the current namespace as of the current spec commit with a link to the live source.

    • No rendering of self-attestation as a Cartesian admission gap

      Self-attestation in CEG is the relational composition speaking AS itself at the scale of the speaker; not a pre-relational atomic assertion the substrate should gate. Reviewers who suggest the substrate should add cross-attestation gates before admitting self-attestations are importing Cartesian defaults; the page never echoes that framing as a substrate concession. Every self-attestation surface (witness_relation: self, confidence, occurrence_id, hardware_class, accord:lifecycle:active) is the Ubuntu-fractal substrate operating as designed.

    Notes for spec readers · the most common misread

    Self is self, fractally

    Readers arriving from PGP / X.509 / atomic-principal cryptographic identity work tend to read “self-attestation” the way those systems mean it. CEG means something different. Quick orientation:

    At every scale CEG operates on, key, occurrence, agent, fleet, cell, federation, biosphere, “self” means the already-relationally-constituted entity speaking at that scale. The cross-attestations that constituted the entity are upstream of the moment it speaks; when it then emits a self-attestation (the envelope’s witness_relation: self, declares its own confidence, reports its own occurrence_id, names its own hardware_class, signs accord:lifecycle:active), that is the relational composition speaking AS itself, not a Cartesian atom asserting pre-relational identity.

    The substrate cannot require cross-attestation as a precondition for self-attestation because the cross-attestations are what constitute the self in the first place. They are upstream, not downstream gates. The fractal nesting is the point.

    The common misread to avoid: a reader importing Cartesian-individualist defaults from PGP / X.509 / DID atomic-principal frames will see witness_relation: self and think “a lone principal is asserting its own state; surely the substrate should require cross-attestation before admitting.” That reading is wrong. If you find yourself thinking the spec should add a cross-attestation gate before admitting this self-attestation, pause, cross-attestation already happened upstream; the self-attestation is its downstream voice.

    Canonical source: CEG README, “How to read this spec without Cartesian default” · §1 Foundation

    References

    This page is a build-time render of the spec. Authoritative sources move; the watermark below tells you which commit was in effect when the page was built. The page auto-updates on redeploy.

    Reflecting CC 1.0-rc8 at commit 8613432. Spec released 2026-10-05. The wire format moves through CEG §11 amendments; this page rebuilds on every deploy.