MEC (C-365)
MOBIUS EXTRACTION CODE (MEC) — CONSTITUTIONAL SHORTHAND SPEC¶
Version: v0.1 Status: Active Cycle: C-365 Authority: Michael (kaizencycle) — Custodian / Human-in-the-Loop License: CC0 Public Domain Classification: Constitutional Runtime Context
EPICON INTENT BLOCK¶
EPICON-C365-MEC-001
Type: CONSTITUTIONAL_DOCUMENT
Intent: Establish a compressed, unambiguous citation grammar (MEC) that
addresses any Seal, Reserve Block, or Epoch without requiring
retrieval of the full EPICON narrative or Reserve Block archive.
Authorized by: Michael / kaizencycle
Witnesses: ATLAS
Timestamp: C-365
PURPOSE¶
MEC is Mobius' equivalent of a git commit hash, an RFC number, or a legal citation (Article I §8). It is a compact, parseable address that points at a full record — it is never a substitute for that record.
Core law:
Three layers, never conflated:
| Layer | Role | Analogy |
|---|---|---|
Reserve Block .dat | Immutable archive | The book on the shelf |
| EPICON | Full replayable narrative | The article |
| MEC | Compressed citation code | The library call number |
| CPC | Attestation that the narrative hasn't been altered | Chain of custody |
RELATIONSHIP TO EXISTING SURFACES¶
- SealCode — the human-friendly rendering of a MEC for operator/public UI (Terminal dashboard, HIVE fog overlay, public canon pages). SealCode is display, not a distinct grammar. Every SealCode round-trips to exactly one MEC.
- MEC — the canon grammar. Stored in ledger fields, EPICON headers, Reserve Block manifests, and cross-references between repos.
GRAMMAR¶
Canonical example¶
| Field | Value | Meaning |
|---|---|---|
E01 | Epoch 01 | DLA Epoch |
RB341 | Reserve Block 341 | Archive block |
C365 | Cycle 365 | Cycle-based dev cadence |
S016 | Seal 016 | Seal number within the cycle |
Q5 | Quorum 5 | Number of attesting agents required/reached |
AT+ZE+EV+JA+AU | ATLAS+ZEUS+EVE+JADE+AUREA | Attesting sentinels, +-joined |
GI064 | GI 0.64 | Governance Integrity score at seal time |
Separator rules (fixed, no ambiguity)¶
.— descends a hierarchy level (Epoch → Block → Cycle → Seal). Left to right, most-significant first.:— appends a metadata field to the hierarchy (quorum, agents, GI). Metadata fields are ordered but independently parseable.+— joins items within a single metadata field (agent list only).
No other separators are valid in a canonical MEC. Any code using -, _, or whitespace is malformed.
Agent codes (fixed 2-letter roster)¶
AT = ATLAS ZE = ZEUS EV = EVE JA = JADE
AU = AUREA HE = HERMES EC = ECHO DA = DAEDALUS
UR = URIEL ZN = ZENITH
GI encoding¶
Fixed 3-digit, no decimal point, always the first three significant digits of the score scaled to 0–100 with truncation (not rounding) below 1.00:
GI100 is the only 3-digit form that represents a whole number; there is no GI1000. Values are always rendered as exactly 3 digits — GI006 is valid (0.06), GI64 is not.
CORRECTIONS (APPEND-ONLY)¶
Seals are append-only. A MEC never mutates once minted — this is what makes it hash-like and safe to cite permanently.
Constitutional rule (C-365, Option B): no letter-suffix amendments on seal numbers. S016A is not valid MEC grammar.
- Any correction or superseding record → mint the next seal number (
S017,S018, …). - Prior MECs are never deleted or rewritten — they remain citeable; EPICON carries the cross-reference to the superseding seal.
This keeps the citation layer as clean as a commit hash: one event, one address, one seal number.
NON-GOALS¶
- MEC does not encode the full narrative — no free text, no descriptions, no rationale. That stays in EPICON.
- MEC does not replace CPC attestation — a well-formed MEC string is not itself proof; it's an address that resolves to proof.
- MEC is not a search query language. It addresses a specific known record; it does not filter or range-query. (A separate query surface can consume MEC fragments, but that's out of scope for this spec.)
SEALCODE (UI DISPLAY)¶
SealCode is the same grammar rendered for glanceability, e.g. as a multi-line operator card:
Any SealCode must be re-derivable back to exactly one canonical MEC string. UI implementations must not introduce fields or values that don't exist in the canon MEC.
PARSER REFERENCE¶
See packages/mec-parser/src/mec-parser.ts for the reference regex, parse/format functions, and the fixed agent-code table. Terminal, HIVE, and CPC should all import from @mobius/mec-parser rather than re-deriving the regex.
Also published at repo root: specs/MEC_SPEC_v0.1.md.