Skip to content

docs(canon): value-slab facet closure + classid-driven envelope parser (V2/V3, 0x1007 gen marker)#128

Merged
AdaWorldAPI merged 2 commits into
mainfrom
claude/serene-mayer-1a09he
Jun 25, 2026
Merged

docs(canon): value-slab facet closure + classid-driven envelope parser (V2/V3, 0x1007 gen marker)#128
AdaWorldAPI merged 2 commits into
mainfrom
claude/serene-mayer-1a09he

Conversation

@AdaWorldAPI

Copy link
Copy Markdown
Owner

What

Doc-only OGAR canon record (DISCOVERY-MAP + EPIPHANIES, append-only). Two findings from the lance-graph value-tenant harvest (soa-value-tenant-migration-v1-harvest.md), recorded producer-side, plus the operator's classid-driven envelope-parser mechanism.

1 — the value-slab homogeneous closure IS OGAR keyspace canon (E-VALUE-SLAB-FACET / D-VALFACET)

The harvest asked whether lance-graph's 480-byte NodeRow.value slab homogenizes. It does not — 9 of the 10 ValueTenants are irreducibly heterogeneous → KEEP, with Qualia i4-16D + the future thinking-style i4-32D deferred for substrate validation. So §8 reduces to "classid is a schema pointer" — OGAR's P0. The closure exists as ONE contained facet the operator named:

facet = facet_classid(4) | helix-place(6) | CAM-PQ(6) = 16 byte = 128 bit  (= the key width)
        schema pointer    place/residue   content/search

— the value-side restatement of OGAR canon: the same recurring 6×256 CAM-PQ as the key path (D-TILE256), the same place/residue split as D-PHASE. Precision kept sharp: the key path is a 6-byte CAM-PQ address; this facet's 6-byte CAM-PQ is the content/search code — same shape, different role. It wants the 6-byte canonical CAM-PQ, NOT lance-graph's 16-byte TurbovecResidue. I-VSA-IDENTITIES-clean (disjoint byte ranges, never bundled); layout-preserving (a classid → ClassView reading, no value-schema variant — the GUID canon is untouched).

2 — classid-driven reusable envelope parser (E-CLASSID-ENVELOPE-PARSER / D-ENVPARSE)

Operator-directed. The classid (via the OGAR class registry) defines V2 vs V3 per file and per consumer — V2 = NodeGuid::new_v2 leaf·family·identity; V3 = the cascade_key (part_of:is_a) 8:8 tile — plus the value-schema/facet and edge-codec. Never a per-file format constant (OGAR P0 applied to the envelope). One reusable envelope parser reads classid → registry → {tail_variant, value_schema, edge_codec} → parse — one read path for every consumer, which is also the single seam that reconciles the slab↔parallel-MailboxSoA two-world finding. Same shape as E-ACTIONHANDLER-RESOLVER (renderer over the classid keyspace) — now the envelope parser is one too.

The pieces are CODED (classid_read_mode / ClassView / new_v2 / cascade_key-V3 / node_rows_from_le_bytes); the composed parser + the registry's new tail_variant axis are the [H] to-wire.

Generation marker (operator): because the change is extreme, new-generation classids carry a leading 1 before the domain (0x07 OSINT → 0x1007) so they self-identify and the parser routes legacy vs new-gen from the prefix alone — versioning in the classid / schema-pointer, never a GUID-tail nibble; RESERVE-DON'T-RECLAIM leaves the legacy zero-prefix space untouched.

Discipline

  • Units pinned (theorem-checker rule 0): 48 bit = 6 byte; facet = 16 byte = 128 bit = the key width.
  • Graded honestly: [G] for the harvest's code facts + the existing pieces; [H] for the facet-as-closure (gated F-1 + F-code) and the composed parser (to-wire) — both pending the lance-graph §6 sign-off panels.
  • Append-only: 2 EPIPHANIES entries (newest at top) + 2 DISCOVERY-MAP rows (after D-IDENTITY-PIN). Doc-only, zero code, no deletions.

Refs

🤖 Generated with Claude Code


Generated by Claude Code

claude added 2 commits June 25, 2026 11:35
…nt harvest confirms OGAR keyspace canon

The lance-graph Phase-1 value-tenant harvest (soa-value-tenant-migration-v1-harvest.md)
confirms, from the consumer side, that the 480-byte value slab's homogeneous closure is
the operator's contained 16-byte facet  facet_classid(4) | helix-place(6) | CAM-PQ(6)  —
the value-side restatement of OGAR keyspace canon (key path = 6-byte CAM-PQ address,
D-TILE256; this facet's CAM-PQ = the content/search code; helix = place/residue, D-PHASE).
Units pinned (48 bit = 6 byte; 16 byte = 128 bit = the key width). The rest of the slab
does NOT homogenize (9/10 tenants KEEP/DEFER) — the honest non-closure outcome — and the
value tenants live in two disjoint SoAs (canonical NodeRow.value vs parallel MailboxSoA).

EPIPHANIES E-VALUE-SLAB-FACET ([G] harvest facts + [H] facet closure, gated F-1+F-code,
pending lance-graph §6 panels); DISCOVERY-MAP D-VALFACET. Doc-only, append-only.

Claude-Session: https://claude.ai/code/session_01TANd15SECEb1Gm4cpaRVD9
…, 0x1007 generation marker

Records the operator-directed mechanism on top of the value-tenant harvest: the classid
(resolved through the OGAR class registry) defines V2 vs V3 per file and per consumer
(V2 = NodeGuid::new_v2 tail; V3 = cascade_key part_of:is_a tile), plus the value-schema/
facet and edge-codec — never a per-file format constant. ONE reusable envelope parser
reads classid -> registry -> {tail_variant, value_schema, edge_codec} -> parse; one read
path for all consumers, which is also the seam that reconciles the slab<->MailboxSoA
two-world finding. The pieces are CODED (classid_read_mode / ClassView / new_v2 /
cascade_key-V3 / node_rows_from_le_bytes); the composed parser + the registry tail_variant
axis are the to-wire [H].

Generation marker: because the change is extreme, new-gen classids carry a leading 1 before
the domain (0x07 OSINT -> 0x1007) so they self-identify and the parser routes legacy vs
new-gen from the prefix alone — versioning in the classid/schema-pointer, never a GUID-tail
nibble; RESERVE-DON'T-RECLAIM leaves the legacy zero-prefix space untouched.

EPIPHANIES E-CLASSID-ENVELOPE-PARSER ([H], operator-directed); DISCOVERY-MAP D-ENVPARSE.
Doc-only, append-only.

Claude-Session: https://claude.ai/code/session_01TANd15SECEb1Gm4cpaRVD9
@AdaWorldAPI AdaWorldAPI merged commit 1eaf2a7 into main Jun 25, 2026
1 check passed

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 339cf6b665

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".


## 2026-06-25 — E-CLASSID-ENVELOPE-PARSER — V2/V3 (and value-schema/edge-codec) are classid-defined per file+consumer; ONE reusable envelope parser reads classid → registry → parse

**Status:** CONJECTURE (`[H]` — the composed parser is operator-proposed, "to be wired"; the pieces are `[G]`/CODED). Operator-directed 2026-06-25.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Restore required EPIPHANIES metadata

.claude/AGENTS.md requires every EPIPHANIES entry to have a **Scope:** line and a separate **Cross-ref:** line, but the two newly appended entries go straight from **Status:** into the body and inline/plain-text the cross-reference. Because this log is append-only and entry bodies become immutable after publication, leaving the new canon records outside the required shape makes future indexing/corrections inconsistent; add the required metadata while these entries are still part of the proposed change.

Useful? React with 👍 / 👎.

AdaWorldAPI pushed a commit that referenced this pull request Jun 25, 2026
…x P2 #128 follow-up)

AGENTS.md L114-123 requires each EPIPHANIES entry to carry a **Scope:** line (after
Status:) and a separate **Cross-ref:** line. E-VALUE-SLAB-FACET and
E-CLASSID-ENVELOPE-PARSER (merged in #128) omitted the Scope: line and inlined the
cross-ref. Adds the two Scope: lines and promotes the inline cross-refs to **Cross-ref:**
lines. Format-only — bodies, dates, claims, and grades unchanged. Doc-only, append-only.

Claude-Session: https://claude.ai/code/session_01TANd15SECEb1Gm4cpaRVD9
AdaWorldAPI added a commit that referenced this pull request Jun 25, 2026
docs(canon): conform new EPIPHANIES entries to AGENTS.md format (Codex P2 #128 follow-up)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants