ELNOR REPO READER TEXT MIRROR Original path: Memory Rebuild Docs/Stage_6_Charters/E1_E2_DOC81_Scope_Policy/Charter_Opening_Brief.md Source repo: /Users/OpenClaw1/Elnor/Elnor Specs Git branch: main Git commit: dbaa25962edc11ab30e8d4ca1715f9ae5bf77331 Generated: 2026-06-09T01:23:58.539Z --- # E1/E2 Charter Opening Brief — DOC81 Scope & Policy Plane **Date opened:** 2026-06-01 **Charter:** E1 + E2 — DOC81 Scope & Policy (drafted as a **lockstep pair**) **Architect:** Will **Pre-condition status:** ✅ MET — E0 (DOC80 core) ratified 2026-06-01; the ReasonCode registry (ADQ-310) and DomainProfile registry (ADQ-313) DOC81 binds to now exist. **Charter status:** ✅ **APPROVED** by architect (Will), 2026-06-01 — drafting authorized; approach **B** (Claude Code commission). ## Why this is next DOC81 is the **scope-and-policy foundation** the rest of the family consumes: DOC82/DOC83 gate extraction and writes on it, DOC84 caps delivery on it, DOC86 surfaces it, DOC87 must not overlap it, and EC executes it. Its only upstream prerequisite — E0's ReasonCode registry — is now ratified, so E1/E2 is unblocked. ## The lockstep (plan §12.2) Scope and policy are interdependent: **scope identifies** (identity, relation, containment, boundary, uncertainty); **policy consumes scope and decides** (capability + disclosure). They are drafted together, in two passes: - **E1 (pass 1)** — *declare*: the scope objects, the policy objects, the dimensional policy vector, and the import dependencies. Do not draft policy as if scope were unavailable. - **E2 (pass 2)** — *validate*: the policy meet, the disclosure meet, fail-closed behavior, UI disclosure, PolicyStamp/restamp + invalidation, and the fixtures. Do not draft scope as if it emitted final allow/block decisions. ## Scope — what DOC81 owns **Scope plane** (Owner Map 71–78): `ScopeIdentityRoot`, `ScopeEquivalenceBinding`, `ScopeContainerRelation`, `ScopeBoundary` (topology only), `ScopeAffinity` (direct/secondary/shared/analogical/background), `ScopeResolutionResult` (boundary_kind + affinity + `minimum_conservatism_floor`), `ScopeResolutionTrace` (Inspector-surfaced), `ScopePopulationHealth`. **Policy plane** (Owner Map 79–94): `MemoryPolicyDecision` (5-axis dimensional, SM-012), `EffectiveMemoryPolicy` (the meet — wholly DOC81 per SM-013 / Round D §1.5; DOC80 core holds only the consumption-protocol *reference*), `PolicyMembraneDecision` (membrane crossing only, SM-014), `PolicyObligation`, `PolicyStamp` + `PolicyStampScope` + `PolicyStampInvalidation`, `PolicyDisambiguationRequest` (replaces `ask_user`; DOC84 implements park/resume), `EpisodePolicyEpoch` (atomic policy-generation boundary, SM-101). **Coordination / meet** (Owner Map 87–94; Skeletal DOC81 §3): capability-meet vs disclosure-meet **separation** (Round D §1.6 — orthogonal), `disclosure_class` (SM-104), `ExtractionRoutePolicyEnvelope`, `PolicyCappedDAMSInput` (eligibility ceiling; computation at DOC84/DAMS), `contamination_risk` **threshold rule** (computation at DOC84), `SafeLabelDisclosurePolicy` (SM-105, ADQ-308), `TopicRiskClass` (policy; ADQ-213). **Cross-cutting invariants DOC81 owns/gates**: `CascadingSourceInvalidation` **envelope** (B3 split; the 5-plane fan-out per Skeletal §10.11; source-side payload at DOC82; EC executes), `LegalHoldState` (Skeletal §10.3; `{held, not_held}` + scope; every destructive job checks before acting; OPA-033), the **DOC81/DOC87 non-overlap invariant** (Skeletal §10.4), **policy monotonicity** (Skeletal §11.9 — narrow-only; restamp is the only widening path and cannot exceed original ceilings per ADQ-316; source revocation monotonically lowers), the **policy-generation re-gate** boundary (Skeletal §11.3), and the **DOC81 → DOC86 export** (Patch B1: PolicyStamp + EffectiveMemoryPolicy ref + disclosure_class + restamp eligibility + safe-label constraints). ## Scope — what DOC81 does NOT own Truth / canonical objects (DOC82) · source/corpus artifacts (DOC25/DOC73/DOC82) · extraction routing (DOC83) · `TopicCollectionDirective` (DOC83) · membership / Topic identity / Library-as-container (DOC87) · delivery + prompt products + DAMS computation (DOC84) · learning (DOC85) · UI rendering (DOC86/DOC20) · the cross-cutting registries (ReasonCode / DomainProfile / proof spine — DOC80 core) · durable writes + policy enforcement execution + ScopeResolutionResult computation (EC). DOC81 **defines contracts; EC executes them.** ## Draft targets E1/E2 must define (each as a paste-ready contract with owner/producer/consumer/executor, lifecycle, unhappy paths, lints, fixtures): **Scope plane (E1):** 1. The scope identity/topology family — `ScopeIdentityRoot`, `ScopeEquivalenceBinding`, `ScopeContainerRelation`, `ScopeBoundary`, `ScopeAffinity`. 2. `ScopeResolutionResult` (+ `minimum_conservatism_floor`) and `ScopeResolutionTrace`; `ScopePopulationHealth`. **Policy plane (E1):** 3. `MemoryPolicyDecision` — the 5-axis dimensional vector (name the 5 axes; cite SM-012 / Round D §1.x). 4. `EffectiveMemoryPolicy` — the **meet** schema + the meet algorithm (monotonic restriction); bind to DOC80 core's consumption-protocol reference, don't redefine it. 5. `PolicyMembraneDecision`, `PolicyObligation` (require_redaction / require_safe_label / …). 6. `PolicyStamp` + `PolicyStampScope` + `PolicyStampInvalidation` + the **restamp** contract (`PolicyStampRestamp`; cannot exceed original ceilings — ADQ-316). 7. `PolicyDisambiguationRequest` (safe question + fallback; DOC84 park/resume seam). 8. `EpisodePolicyEpoch` + the `policy_generation_id` boundary (bind to E0's policy-generation carrier, §8.3). **Meet + coordination (E2):** 9. Capability-meet vs disclosure-meet **separation** (Round D §1.6); `disclosure_class`; **fail-closed default** — conservative on missing/unknown/incomparable scope or policy (Skeletal DOC81 §4 / Round D §3.6; ADQ-313). 10. `ExtractionRoutePolicyEnvelope`; `PolicyCappedDAMSInput` (eligibility ceiling); `contamination_risk` threshold rule; `SafeLabelDisclosurePolicy`; `TopicRiskClass`. **Cross-cutting invariants (E2):** 11. `CascadingSourceInvalidation` envelope + the **5-plane fan-out** wiring check (Skeletal §10.11) — the wiring check is an explicit Stage 6 charter obligation. 12. `LegalHoldState` + the destructive-job invariant (every automated destructive job checks it; OPA-033). 13. DOC81/DOC87 **non-overlap** invariant + its lints (Skeletal §10.4). 14. **Policy monotonicity** invariants + lints (Skeletal §11.9; ADQ-316). 15. `collection_mode` **suppression** (ADQ-406) — collect/suppress/exclude on `TopicCollectionDirective`; **DOC81 owns the governance rules; EC §1 enforces at admission** (`OBL-D81-TOPIC-COLLECTION-SUPPRESSION-01`). 16. The **source-exclusion filter** (`OBL-PROPA-NEW-SOURCE-EXCLUSION-FILTER-01`). 17. `AssertionRelationEdge` traversal scope checks (ADQ-315 — `relation_kind → required scope checks + render gating`; owner-doc EC specifies, **decision pinned to E1**). 18. The **DOC81 → DOC86 export** (Patch B1). **Consumed-from / bound-to (verify, don't redefine):** 19. The whole **PropA** sensitivity & self-improvement policy content (the 10 OPA obligations retargeted to DOC81 — see Input Deck), folded into the policy plane. 20. Bind to E0: ReasonCode registry (ADQ-310), DomainProfile registry + `conservative` fallback (ADQ-313), the policy-generation carrier, `MemoryFlowCertificate`, and the E0 §12.1 invariants DOC81 gates. ## Exit criteria E1/E2 is complete when: (1) every draft target above has a paste-ready contract; (2) every ADQ in the Input Deck (310, 315, PASS2-02, 406) and every one of the 10 OPA rows has an explicit landing site; (3) the **capability/disclosure-meet separation** and **fail-closed** behavior are unambiguous; (4) the 5-plane `CascadingSourceInvalidation` wiring check is done; (5) `LegalHoldState`, policy-monotonicity, and DOC81/DOC87 non-overlap invariants each have a runtime gate + a Stage-9 lint + a Stage-8 negative fixture; (6) DOC81 binds to E0's contracts by reference (no re-defined registries); (7) red-team passes; (8) architect ratification logged; (9) discharge sweep. ## Drafting approach **Recommendation: (B) commission Claude Code for the first draft, same as E0** — the material is dense assembly from Owner Map + Skeletal §DOC81 + §10/§11 + the PropA obligations, well-suited to a Claude Code commission; architect editing happens after. Alternatives: (A) you solo in-session; (C) co-draft here. If you pick **(B)**, the commission prompt is ready at `E1_E2_Drafting_Commission_Claude_Code.md` in this folder. ## Pre-conditions - **E0 ratified** (ReasonCode + DomainProfile registries available) — ✅ met. - DOC87's `TopicIdentityContract` stub is **not** a precondition for E1/E2 (it gates E5/DOC83's `TopicCollectionDirective`, per plan §12.4-bis). DOC81 consumes the corpus/library identity *term* from DOC87 as upstream vocabulary only (ADQ-PASS2-02). - **High-risk slice:** per plan §13, **architect approval of this charter is mandatory before drafting begins.** ## Estimated time Consistent with E0's cycle: first draft 0.5–1 day (Option B); red-team 0.5–1 day; synthesis + patch 0.5 day; apply + audit + ratify + discharge ~0.5 day. ~2–3 working days at your cadence. ## Next action Pick the drafting approach and reply: `commission B` (commission Claude Code with the ready prompt) · `start A`/`start C` · or `change ` (adjust scope / targets / exit criteria). Architect charter approval is required before the draft begins regardless of approach. ## Sources - [E1/E2 Input Deck](Charter_Input_Deck.md) - [STAGE_6_CHARTER_INPUT_INDEX §DOC81](../../Flattening/Execution%20Ledger/Stage_5R3/STAGE_6_CHARTER_INPUT_INDEX.md) - [DOC80 Skeletal Target Baseline — §DOC81 + §10/§11](../../DOC80%20Target%20Baseline/Skeletal%20Spec/DOC80_Skeletal_Target_Baseline.md) - [DOC80 Owner Map — DOC81 rows 62–94](../../DOC80%20Target%20Baseline/Owner%20Map/DOC80_Owner_Map.md) - [DOC80 Import Graph — DOC81 edges](../../DOC80%20Target%20Baseline/Import%20Graph/DOC80_Import_Graph.md) - [Architect Decision Queue — ADQ-310/315/406/PASS2-02/316](../../Flattening/Execution%20Ledger/Architect%20Decision%20Queue/Architect_Decision_Queue.md) - [OPA V4 — DOC81/PropA rows + §6.Z/§6.Z3](../../../OP-A%20and%20Operations%20and%20Trackers/OPA_V4.md) - [E0 ratified DOC80 core (contracts DOC81 binds to)](../E0_DOC80_Core/DOC80_Core_Charter_Draft.md)