Elnor Repo Reader

E0_Application_Report.md

Memory Rebuild Docs/Stage_6_Charters/E0_DOC80_Core/E0_Application_Report.md

Short text page 56a4f431f73f. Generated 2026-06-09T01:23:58.539Z from commit dbaa25962edc11ab30e8d4ca1715f9ae5bf77331. Worktree: clean.

Open readable HTML page · Open raw txt · Open path URL

ELNOR REPO READER TEXT MIRROR
Original path: Memory Rebuild Docs/Stage_6_Charters/E0_DOC80_Core/E0_Application_Report.md
Source repo: /Users/OpenClaw1/Elnor/Elnor Specs
Git branch: main
Git commit: dbaa25962edc11ab30e8d4ca1715f9ae5bf77331
Generated: 2026-06-09T01:23:58.539Z

---

# E0 / DOC80 Core — Application Report

**Date:** 2026-06-01
**Commission:** `E0_Application_Commission_Claude_Code.md`
**Target (edited in place, uncommitted):** `DOC80_Core_Charter_Draft.md` (R1 → **R2+R3 patch applied, ratification pending**; 1089 → 1822 lines).
**Patch package:** `DOC80 S6 E0 RT Adj Card R2.md` (base, ~80 edits) + `DOC80 S6 E0 RT Adj Card R3.md` (§22 egress full-replacement + 11 non-egress lock-patch items).
**Not done (by design):** no ratification; no git; no tracker/cross-artifact file edited. `Ratification.md` + the discharge sweep are the architect's separate next steps.

---

## 0. File-location pre-check (Commission Step 1) — all located, nothing ambiguous

| referenced file | resolved path | status |
|---|---|---|
| Target draft | `…/E0_DOC80_Core/DOC80_Core_Charter_Draft.md` | ✓ |
| R2 card | `…/Stage 6 E0 Red Teaming/DOC80 S6 E0 RT Adj Card R2.md` | ✓ |
| R3 card | `…/Stage 6 E0 Red Teaming/DOC80 S6 E0 RT Adj Card R3.md` | ✓ |
| Framing | `Charter_Opening_Brief.md`, `README.md`, `Charter_Input_Deck.md` | ✓ |
| Skeletal baseline | `…/DOC80 Target Baseline/Skeletal Spec/DOC80_Skeletal_Target_Baseline.md` | ✓ |
| **ABC R0.2** (§9.2/9.3/9.4/9.7) | `Memory Rebuild Docs/Memory Rebuild Review Packs/DOC80_…_2026-05-25/12_ABC_Consolidated_Structural_Patch_R0_2.md` | ✓ (only copy on disk outside `.git`; §9.2 = 17 kinds verified directly) |
| **PropA R6.3** | `Current Specs/Miscellaneous Specs/MultiDoc_PropA_R6_3_Compiled_Operative_Spec.md` | ✓ (fail-closed rule, P1 classifier, PolicyDecisionEngine boundary anchor verified) |
| **DOC24 R3.1.1** | `Current Specs/DOC24/DOC24_R3_1_1.md` | ✓ |
| **KDA R3** | `Current Specs/DOC24/DOC24_KDA_R3_DRAFT_v0_3_1.md` | ✓ |
| **EC Core Addendum A V3.3** | `Current Specs/EC Core/EC_Core_Addendum_A_V3_3_Compiled_Operative_Spec.md` | ✓ |

No STOP condition. ABC §9.2 enumerates exactly **17** `ContextProductKind` (verified verbatim), §9.3 = `ProductRegistryEntry` typing, §9.4 = 7-value disposition enum, §9.7 = per-kind product rules.

---

## 1. Applied-items table — R2 §2 master decision index

Every ACCEPT/AWM/ACCEPT-AS-FIX item ticked. (REJECT §I + DEFER §J are NOT applied — see §4 below.) Disposition codes preserved from the card.

### §A Identity / lifecycle
| item | landed in | note | ✓ |
|---|---|---|---|
| UR-29 lifecycle distinctness (keep lints / reject engine) | §1.4 | distinctness sentence + 7 lints; ErasureMFC etc. record events, not an engine | ✓ |
| UR-40 necessary-not-sufficient | §4.1 | membership eligibility ≠ authorization; policy/scope gate independently | ✓ |

### §B Registries
| item | landed in | note | ✓ |
|---|---|---|---|
| UR-10 ReasonCode namespace mechanics | §2.1 | `state`/pattern/`allocated_in`/`replacement_namespace`/`legacy_allowed_only` + negative-outcome invariant + 4 lints | ✓ |
| UR-37 DOC25 producer (DECIDED, scoped) | §2.1 | scoped to parse/materialization/ingestion; revocation codes → DOC82; Owner-Map L86 = discharge | ✓ |
| UR-11 DomainProfile per-axis vector | §2.2 | `DomainProfileRestrictivenessVector` (9 axes) + meet rule; replaces scalar rank; fallback prose updated | ✓ |
| UR-13 derived cache-eligibility | §2.3 | `kv_cache_eligible` derived + 3 lints | ✓ |
| UR-14 CONFIRMED / UR-14b richer trigger entry | §2.4 | `allowed_producers/consumers`, `payload_schema_ref`, lifecycle pins, `replacement_trigger_kind`, `default_reason_code` | ✓ |
| UR-22 warrant-degradation carveout | §2.4 | `authority_class` (DOC82/DOC81-owned) exempts user-asserted/authority-fixed/static/locked + 3 lints | ✓ |
| embedding_generation_id NAMED-only (F28) | §8.1 | comparability invariant + `embedding.cross_generation_comparison_without_reembed` | ✓ |

### §C Consumption + MFC
| item | landed in | note | ✓ |
|---|---|---|---|
| **UR-01** ContextProductKind 17 (P0) | §3.1 | enum→ABC §9.2 17; `ContextProductDescriptor`→`ContextProductRegistryEntry` (§9.3 typing); prose/lifecycle/cross-charter re-authored; fixture 14→17; resume→§5.3; §16.1 item-3 resolved; §17.2 §10.7 corrected | ✓ |
| 17-row registry seed table (A3/A10) | §3.1.1 | ABC §9.3-confirmable cells only; owners NOT guessed (all `⚠owner-confirm@E3/E4/E7`); `ContextProductDecision` NAMED (DOC84/ABC §9.4); `registry.context_product_owner_guessed` lint | ✓ |
| UR-02 FinalPromptTruthRef NAMED-only | §3.5 | DOC11 owns body; carries-list; executed-render + learning-credit invariant; §12.1 row; 4 lints | ✓ |
| UR-03/04 MFC discriminated union | §3.3 | 9 flows; `BaseMFC` + `effective_state_generation_id` + `ec_path`; `withheld_reason_codes` plural; `render_target`; Erasure/Restamp/Restore; N8 disclosure refs | ✓ |
| UR-15 + ADJ-1 plan grammar + ABC §9.4 enum | §3.2 | `MemoryContextProductRequest` + `ContextProductDecisionDisposition` (ABC §9.4); `requested_products` retyped; 5 lints; three-plan CONFIRMED | ✓ |
| UR-16 registry/assembly boundary | §3.1 | `required_inputs_by_kind` = refs only; assembly bodies DOC84 | ✓ |
| UR-19 ReproducibilityKey (+N2) | §3.1.2 | content + selected-set; +3 registry-version inputs; 2 lints | ✓ |
| UR-20 trace correlation | §3.4 | `session_ref`/`turn_id`/`request_correlation_id`/`parent_trace_ref` + lint | ✓ |
| ADJ-2 instance-ID spine DOC8→DOC85 | §3.4 | ABC §9.5 spine attributes to DOC85 (DOC8 phantom) + lint | ✓ |
| PromptShellLearningContract/Exposure NAMED-only (F11) | §2.3 (contract) + §3.8 (exposure) | exposure proof-shaped per R3 §(b)#3 | ✓ |
| DebugModeContract NAMED-only (F30) | §3.9 | scoped to F30 text only; non-learning guarantee + lint | ✓ |
| Destruction ledger (named seam) | §3.7 | append-only hash-chained; EC-owned write path (R3 §(b)#1); 2 lints | ✓ |

### §D Proof spine
| item | landed in | note | ✓ |
|---|---|---|---|
| UR-05 edge-level membership proof | §4.1 | `MembershipEligibilityProof[]` + `MembershipLifecycleState` + set hashes; 4 lints | ✓ |
| UR-06 outcome derived | §4.2 | `outcome==='fail' iff checks_failed`; 3 lints | ✓ |
| UR-07 proof retention classes | §4.4 | `ProofRetentionClass` + `ProofArtifactRetentionRule`; erasure/restamp/restore = durable_audit; 3 lints | ✓ |
| F13 RenderSafetyCheck closed vocab | §4.2 | "proposed value set" → "closed E0 check vocabulary" + lint | ✓ |

### §E NAMED-only
| item | landed in | note | ✓ |
|---|---|---|---|
| UR-18 bitemporal AWM | §8.2 | MME replay-time vs DOC82 valid/transaction-time linkable-not-collapsed + lint | ✓ |
| F19/F20 Stage-7 handoff vocab | §5.1 (MME) + §5.2 (MPG) | field-name checklists only (Class D — no bodies) | ✓ |
| UR-41 embedding un-merge | §8.1 | route un-merge through review, never silent split + lint | ✓ |

### §F Classification / ext-dep / ECSeam
| item | landed in | note | ✓ |
|---|---|---|---|
| UR-12 ext-dep reproducible pins | §7 | `git_commit_sha`/`hash_algorithm:'sha256'`/`source_line_ranges`/`last_verified_at` + lints | ✓ |
| UR-17 ECSeamContract structured + EC pins | §7.1 + §7.4 | interface + EC §1/§3/**§4**/§7/§8 pins (R3 §(b)#7); 5 §7.4 rows; lints | ✓ |
| UR-30 classification table + N12 + A11 audit class | §6 | +18 object rows; `audit_replay_class` column; ContextProduct `varies`→per-kind + 14→17; ContentReference normalized; DOC8 cell absent (V7) | ✓ |

### §G Revocation / projection / monotonicity / ops / conventions
| item | landed in | note | ✓ |
|---|---|---|---|
| UR-08/09 5-plane cascade + polarity (N3) | §12.1 | `SourceRevocationCascade` (5 planes, no 6th, manual clawback) + `affected_set_manifest_ref` (R3 §(b)#5); polarity invariant; 11 lints; Finding-2 supported-assertion scoping | ✓ |
| UR-31 SemanticProjectionContract | §3.6 | umbrella + `SemanticProjectionAxisRegistration`; §6.3/§17.3 cross-refs; 5 lints | ✓ |
| UR-47 + UR-48 monotonicity + neg-fixture column | §12.1 | learning "beyond non-learning ceiling"; Stage-8 negative-fixture column added to every row | ✓ |
| UR-23 health fields | §9.1 | window/generated_at/last_successful_refresh/freshness_status/severity/source_trace_refs + 3 lints | ✓ |
| UR-24 quota fields | §10.2 | `MemoryOperationQuotaBound` (unit/window/default/hard_max/owner/on_exhaustion/resume) + 5 lints | ✓ |
| UR-25 background strategy | §10.2/§10.3 | `background_execution_strategy` + chunk/yield/preemption/cancellation; replaces boolean + lint | ✓ |
| UR-26 + UR-27 schema/ID conventions | §8.5 | schema_version, branded IDs, casing, RFC3339/sha256, migration-plan-deferred; 4 lints (UR-28 meta-schemas REJECTED) | ✓ |
| §12.1 control-plane invariants | §12.1 | effective-state, collection-suppression, portability, boundary-disclosure rows | ✓ |

### §H ABC §21 / AC / golden / preservation / drift
| item | landed in | note | ✓ |
|---|---|---|---|
| UR-33 AC-004/005 hardening | §14 | AC-004 = schema+owner+pos+neg fixture+lint; AC-005 4-gate | ✓ |
| UR-34 placement + gate rows | §13 + §15.4 | IngestionCostBudget→DOC25/E3; WarrantConsequenceRegistry→DOC82/E4; both §15.4 rows | ✓ |
| UR-35 §18 golden scenario | §18 | 15-step phase order + fixture taxonomy + 10 negative fixtures | ✓ |
| UR-46 named-lint inventory | §16.3 | split (a) DOC80-substance / (b) flatten-governance / (c) provenance caveat + new v2/R3 tokens | ✓ |
| UR-36 preservation matrix (+A2) | §17.4 | lands/defers/exits matrix; ADQ-209/207/312 consumed-not-resolved | ✓ |
| UR-32 cross-charter gate table | §15.4 | 18 gate rows incl. ADQ-406/407/408, IngestionCostBudget, WarrantConsequenceRegistry | ✓ |
| UR-38 restore §4/§19/§20 (DECIDED) | §1.6/§19/§20 | + §4 `RegistryEntryLifecycleState` rename + `E0DurableRecord` base | ✓ |
| ADJ-3 §17 acceptance standard | §15.6 | flatten-plan §19 + §15.3 sweep + §12 gates | ✓ |
| UR-21 §N disambiguation | (throughout) | "baseline §N" vs draft §N flagged at each placement deviation | ✓ |
| UR-39 §10.7 mislabel | §17.2 | §10.7 row → §12.1 (DOC82↔DOC83 seam), was "→ §4" | ✓ |
| F35 drift sweep | §8-discharge (report §5) | recorded as discharge, not edited | ✓ |
| §4 RegistryEntryLifecycleState rename + E0DurableRecord (A6/A9) | §1.6 | retyped across all 4 registries; `+candidate` per R3 §(b)#4 | ✓ |
| §15.5 post-patch regression gate | §15.5 | numbered section; run recorded below | ✓ |
| §15.5/A11/A8 etc. | — | folded as above | ✓ |

**R2 §2 ACCEPT items: all applied. No accepted item skipped.**

## 1b. Applied-items table — R3

| R3 item | landed in | note | ✓ |
|---|---|---|---|
| **R3 §(a)** §22 egress (full replacement of R2 §22) | §22 | INV-E0-EGRESS-1 (default-deny CR2); `E0EgressAttestation` discriminated union; convergence ledger `E0PerSourceTurnLedgerRow` (EC-signed/DOC24-appended, anchored_attestation); UR-51 lints; UR-52 fixtures; UR-53 discharge | ✓ |
| R3 §(b)#1 MemoryDestructionLedger EC-owned | §3.7 + §15.4 + §16.2 | "EC durable write path; DOC84/85/11 consumers/surfaces/effects" | ✓ |
| R3 §(b)#2 RestoreMFC.executor → initiating_member_ref (→ BaseMFC) | §3.3 | `executor` removed; `initiating_member_ref` on `BaseMFC`; lint `mfc.uses_executor_field_instead_of_initiating_member`; EC-issuer invariant kept | ✓ |
| R3 §(b)#3 PromptShellExposure proof-shaped | §3.8 | boolean → final_prompt_truth_ref + span refs; lint | ✓ |
| R3 §(b)#4 RegistryEntryLifecycleState += candidate | §1.6 | `'candidate'|'active'|'deprecated'|'retired'` + not-runtime-emittable rule + lint | ✓ |
| R3 §(b)#5 SourceRevocationCascade += affected_set_manifest_ref | §12.1 | field + `revocation.cascade_missing_affected_set_manifest` | ✓ |
| R3 §(b)#6 E0DurableRecord illustrative | §1.6.2 | "illustrative, not exhaustive" wording | ✓ |
| R3 §(b)#7 EC §4 in Import-Graph sweep | §7.1 + §7.4 + §5 (discharge) | EC §4 pinned; Import-Graph sweep is discharge | ✓ |
| R3 §(b)#8 ErasureMFC legal-hold for redaction | §3.3 | `legal_hold_clearance_ref` required iff `{hard_destruction, redaction}`; lint | ✓ |
| R3 §(b)#9 Restore re-evaluation invariant | §12.1 + §3.3 | restore re-evals policy+revocation+legal-hold; `hard_destruction` not restorable; `prior_erasure_certificate_ref` iff recycle_bin; 2 lints | ✓ |
| R3 §(b)#10 N8 unification | §3.3 + §22 | `DisclosureScopeAttestationRef` → `E0EgressAttestation`; `outbound_destination_class` on Export/DelegationMFC | ✓ |
| R3 §(b)#11 reword "No manual tracking required" | §16.2 | reworded to the §16.2/§15.4/§17.4/OPA/ADQ/sweep formulation | ✓ |

**R3: all of §(a) + 11 §(b) items applied.**

## 1c. Six confirmed architect forks (Commission §3)
1. **N3 5-plane cascade** — 5 planes, no 6th, no promotion-time invariant, manual clawback. ✓ (§12.1)
2. **17-row registry, no guessed owners** — all owner cells `⚠owner-confirm@E3/E4/E7`. ✓ (§3.1.1)
3. **DebugModeContract scoped to F30** — NAMED-only, no broader subsystem. ✓ (§3.9)
4. **Verdict token + §15.5 gate** — status line updated to "patch applied — ratification pending"; §15.5 added. ✓
5. **UR-37 DOC25 producer scoped** — parse/materialization/ingestion; revocation→DOC82; Owner-Map = discharge. ✓ (§2.1)
6. **§22 egress = lint making PropA L94 provable, NOT a new output-gate primitive** — folded as R3's version. ✓ (§22)

---

## 2. Restored sections + placement decisions

| baseline section | restored as | placement decision |
|---|---|---|
| §4 Shared runtime vocabularies (B10) | **§1.6** | The draft's §4 is already "Proof spine." Restoring as a top-level §4 would renumber §4–§17 and break every cross-reference. Placed as **§1.6** (under the §1 foundation; definitions precede use in §2–§12). All refs to the shared value types point to §1.6. Includes A6/A9 (`E0DurableRecord`, `RegistryEntryLifecycleState`) + R3 §(b)#4/#6. |
| §18 Golden scenario | **§18** (new top-level) | Appended after §17; 15-step phase order + fixture taxonomy + negative fixtures (skeleton; bodies Stage 8). |
| §19 Amendment-magnitude | **§19** (new top-level) | Appended after §18; one-line magnitude per §7.4 dependency. |
| §20 Per-member obligations | **§20** (new top-level) | Appended after §19; per-member trace-obligation + degraded-state table. |
| §17 Family-wide acceptance standard (partial) | completed at **§15.6** | ADJ-3 completion = flatten-plan §19 + §15.3 sweep + §12 gates. (UR-36 preservation matrix landed separately at §17.4; UR-32 gate table at §15.4; §15.5 regression gate added.) |
| §22 Egress | **§22** (new top-level) | Kept the card/review identity "§22" (baseline §21 retired-names pointer lives at §17.3 in this draft; a note records the gap). Renumbering to §21 would break every R2/R3/review reference + the §15.5 language. |

**Numbering deviations recorded (UR-21 discipline):** §1.6 (was baseline §4); §4.4 retention classes (card said "§11.4" in Skeletal numbering); §22 follows §20 with no §21 (baseline §21 = §17.3 here). Each carries an in-draft placement note.

---

## 3. §15.5 regression-gate results (run at application time)

| check | result |
|---|---|
| (a) `ContextProductKind` reads **17** everywhere; no stale "14 kinds"/"exactly 14" in §3.1/§6/fixtures | ✅ PASS — 7× "17", 0 orphan; the two remaining "14"s are the deliberate supersession narrative (§16.1 item 3) and the fold-in-count reconciliation (§17.2), both correct to keep |
| (b) MFC union has all **9** flow kinds; every `issued` variant carries required refs | ✅ PASS |
| (c) every new lint `[canonical]` or `[proposed]` — none silently promoted | ✅ PASS (canonical tokens verbatim; coined tokens tagged `[proposed]`) |
| (d) every §16.2 deferral has a §15.4 gate row **and** a §17.4 matrix row | ✅ PASS (triangle complete) |
| (e) §3.6 `SemanticProjectionContract` defined + §18 present | ✅ PASS |
| (f) §1.6 / §19 / §20 restored (baseline §4/§19/§20) | ✅ PASS |
| (g) no retired/invented name reintroduced (cross-checked vs `DOC80_Retired_Names.md`) | ✅ PASS — 0 orphan old kind-names; the 14 invented names logged for Retired Names (discharge) |
| (h) three OPA §6.Z obligations + ADQ-406/407/408 referenced from gate table + preservation matrix | ✅ PASS (3 OBL rows; ADQ-406/7/8 in §15.4 + §16.2 + §17.4) |
| Commission §6: four forks landed exactly | ✅ PASS |
| Commission §6: §15.4 + §15.5 + §17.4 all present | ✅ PASS |
| Commission §6: markdown fences balanced; TS blocks intact | ✅ PASS (56 fence lines, even) |
| Commission §6: no dangling section references | ✅ PASS (placement notes added where numbering deviates) |

**All §15.5 + Commission §6 checks PASS.**

---

## 4. Tier-4 — correctly NOT applied (REJECT §I + DEFER §J)

- **UR-28 meta-schemas** (`LintRegistryEntry`/`FixtureManifest`/`MemorySchemaMigrationPlan` + JSON-Schema-per-contract) — REJECT → Stages 7/8/9. (UR-28b naming convention WAS applied, §8.5.)
- **GPT full bodies** — full `FinalPromptTruthRef` schema (mis-owns DOC11); full lifecycle/erasure state machine (UR-29 reaffirmed — ErasureMFC is a per-event certificate, not the rejected engine); full `MemorySchemaMigrationPlan`; DOC81 policy-axis enum values; DOC84 executed `RenderSafetyProof` body. All REJECT.
- **Rename `ContextProduct`→`ContextArtifact`** — REJECT (ABC §9.2 senior uses `ContextProduct`).
- **§J BETTER_IDEA UR-42/43/44/45** — DEFER; recorded in §16.4 + §16.2 + §17.4 (UR-42 partly promoted to the §3.7 destruction ledger).

---

## 5. OPEN_FOR_ARCHITECT_REVIEW

**No `<!-- OFAR -->` flags were left in the draft.** Every item was determinable from the cards + cited sources, or used the card's specified `⚠owner-confirm@E3/E4/E7` mechanism (which is not an OFAR — it is the prescribed deferral marker). No fabrication was required.

**Interpretive decisions worth the architect's eye at ratification** (defensible applications, not gaps — surfaced for confirmation):

1. **§3.1.1 `role_band` fills (9 of 17).** ABC §9.3 defines the *columns* but tabulates no per-kind *values*; I filled `role_band` for the 9 kinds ABC §9.2's `RoleBand` enum + §9.7 product rules make unambiguous (`assertion_packet`=assertion, `topic_notice`/`search_affordance`=affordance, `library_source_slice`/`cu_source_bound_synthesis`=source, `recent_work_orientation`/`issue_frame_orientation`=orientation, `directive_block`/`warning_constraint`=constraint) and marked the other 8 + all `payload_schema_owner`/`candidate_injectable`/`default_budget_band` cells `⚠owner-confirm@E3/E4/E7`. If you prefer **all** role_band cells ⚠ (strict §9.3-only), that is a one-table edit.
2. **§6 `audit_replay_class` + new-row Y/N values are seeds.** The card mandated the column + the object rows but no per-object values; I assigned defensible seeds (proofs→`durable_audit`, envelope/graph→`canonical`, projections→`derived`, FinalPromptTruthRef→`external_ref`, SemanticProjectionContract→`named_only`) under the table's existing "Stage 7 confirms" disclaimer. Each new row is tagged `(seed)`.
3. **`RegistryEntryLifecycleState` retype across all 4 registries** (ReasonCode/DomainProfile/PromptShellVariant/WarrantDegradationTrigger) — applied per Commission §5's named typing edit; this adds `'candidate'` (non-runtime-emittable) to those registries. If you intend the rename to apply *only* to ContextProduct-style entries, narrow it.
4. **Title + footer round-label changed** (not only the status line). Commission §5 said "update only the status line"; I also updated the H1 title and footer "R1" labels to "R2+R3 patch applied, ratification pending" because leaving "Draft R1" in three places while the status says "patch applied" would violate the internal-consistency hard rule. Revert if you want the literal status-line-only change.
5. **§22 kept as "§22" with no §21 in the draft** (placement note added). Renumbering to §21 would break R2/R3/review/§15.5 references.
6. **§15.4 gate-table rows + §17.4 matrix rows** include reasoned owner/blocking assignments derived from the card's deferral register and the draft's own ownership statements; confirm the blocking/owner calls.
7. **PropA L94 vs L95** — R2 cites "L94", R3's audit line cites "L95" for the same "every outbound boundary runs through the policy engine" rule; I applied R3 §22 verbatim (which references the rule conceptually). The live PropA file has the `PolicyDecisionEngine`-at-every-boundary statement (line ~95); the minor cross-card line-number variance is immaterial to the applied text.

---

## 6. Discharge obligations (post-ratification; NOT edited from this draft)

Per Commission §5 + R2 §8 + R3 §19/UR-53. **None of these files were touched.** Recorded for the architect's discharge sweep:

| artifact | obligation |
|---|---|
| `Supersession_Matrix.md` SM-060 | "14 kinds" → "17 kinds; canonical = ABC R0.2 §9.2; no 17→14 merge" |
| `DOC80_Owner_Map.md` | replace `CognitiveDiff + Resume card` row with `ResumeProjection`/`ResumeCard`; reconcile L86 ReasonCode producers (DOC25 ratification, scoped to parse/materialization/ingestion); confirm L209 → defined §3.6 (UR-31); add rows for the new MFC variants + `MemoryDestructionLedger` (schema_owner DOC80; **storage EC**, surfaces DOC84/85/11 per R3 §(b)#1) |
| `DOC80_Import_Graph.md` | confirm EC §1/§3/**§4**/§7/§8 ECSeamContract pins appear as import edges (R3 §(b)#7); no local redefinition of EC schemas |
| `DOC80_Retired_Names.md` | log the **14 invented `ContextProductKind` names** (`assertion_pack`/`evidence_pack`/`source_excerpt`/`orientation_rollup`/`resume_card`/`membership_context`/`topic_lens_context`/`policy_disclosure_notice`/`inspector_explanation`/`search_affordance_result`/`carryover_capsule_view`/`friction_summary`/`reference_only_notice`*/`null_result_notice`* — *the last two were re-canonicalized into the 17, so only the 12 truly-dropped names are do-not-reintroduce) as do-not-reintroduce; affirm `ContextProduct` (not `ContextArtifact`) and `RegistryEntryLifecycleState` (not bare `LifecycleState`) |
| Source Registry | record ABC R0.2 §9.2/§9.3/§9.4 as the authoritative source for the 17 kinds / registry entry / disposition enum |
| `STAGE_6_CHARTER_INPUT_INDEX.md` | add ADQ-313 to the E0 section |
| `E0_Red_Team_Review_Prompt.md` | fix stale synthesis path `…/Red Team Ready/` → `…/Red Team Responses/` |
| `Architect_Decision_Queue.md` | after ratification mark ADQ-203/208/210/211/310/313/403/404 **resolved-by-E0**; **also ADQ-207 + ADQ-312 resolved-by-E0 (A2 consumed-not-resolved nuance — resolution authority recorded, not re-decided)**; DOC25 grounding (UR-37) + §19/§20 final bodies (UR-38) logged, not blocking; ADQ-406/407/408 already resolved+committed |
| `OPA_V4.md` | fold the three committed §6.Z obligations — `OBL-D81-TOPIC-COLLECTION-SUPPRESSION-01`, `OBL-EC-GLOBAL-RECYCLE-BIN-01`, `OBL-EC-RESTORE-FROM-BACKUP-01` — into the §6 per-owner sub-tables + the 521/538 reconciliation; **add OPA §6.Z3 egress obligations (UR-53)**; **two genuinely-new cross-doc items: the PropA `local_file_export` §2.6 principle-#2 patch, and the EC-owned destruction ledger** |
| `SPEC_STATE.md` | DOC80 entry update (post-ratification) |
| F35 drift sweep | cross-artifact consistency sweep (Skeletal §10.19 closing step) at ratification |

**Empirical probe (deferrable):** verify connector/DOC11/DOC12 dispatch + native send-actions actually call the egress gate at runtime (sibling to the final-prompt probe) — a Claude Code probe, enrollable in §16.2 + §15.4 when scheduled.

---

## 7. Summary

- **Items applied:** **all** R2 §2 ACCEPT/AWM items (~80 edits across §A–§H) + **all** R3 (§(a) §22 + 11 §(b) items) + the 6 confirmed forks. None skipped; §I rejects + §J defers correctly excluded.
- **Sections restored:** §1.6 (was §4), §18, §19, §20, + §17 acceptance standard completed (§15.6). New: §3.1.1/§3.1.2, §3.5–§3.9, §4.4, §15.4, §15.5, §15.6, §17.4, §22.
- **§15.5 regression:** all checks ✅ PASS.
- **OFAR flags:** none (everything determinable; `⚠owner-confirm` used per spec). 7 interpretive decisions surfaced for architect confirmation (§5).
- **Not done (by design):** no ratification, no git, no tracker/cross-artifact edits. Discharge obligations recorded in §6 for the architect's post-ratification sweep.

*Next (architect): verify edit-by-edit against R2 + R3 → `Ratification.md` → discharge sweep.*