Macro-4 B2 Owner-Approval Contract — R2-B2 (2026-06-19)
Macro-4 B2 Owner-Approval Contract — R2-B2 (2026-06-19)
Date: 2026-06-19 · Workstream: R2-B2-MACRO-4-STAGING-WORKBENCH-IO-CONTRACT-TD-ENTRY-GATE-2026-06-19 (Deliverable 34 of 90) · Editorial revision: rev1
Class: B2 owner-approval contract · READ-ONLY · NON-ENACTING · NON-AUTHORIZING · B2-ONLY · OWNER_ASSIGNMENT_DRIFT guard · NO owner assigned · NO write performed.
Metadata convention. Editorial revision (rev1) only. Storage revision/
content_lengthauthoritative at read time.
0. Status and non-authorization
STATUS: PASS — engineering / design-only. B2's owner_surface + authority_gate. Engineering PASS ≠ authority PASS. Default: HOLD.
1. Purpose
Define the governance owner + approval gate B2 must pass before any standing run — assigning nobody.
2. Sources / evidence read
Inspect-producer §4 (authority S1/Điều 32; owner external S2); Điều 32 (§2.1/§2.4/§4.2/§4.3); Macro-3 S2 final recommendation; FRESH governance_object_ownership=0. Main process, no reader-agents.
3. Accepted baseline (carried)
B2 goes standing only via Điều 37→32 with an assigned S2 owner. Macro-3 recommends a dedicated B2 Producer Owner role/class (single accountable owner + halt authority + Điều-32 quorum, no self-approve) — a model, not a person; ownership row written only after approval.
4. Evidence / analysis — B2 owner-approval contract
| Element | Requirement |
|---|---|
| Owner | a dedicated B2 Producer Owner role (recommended; not assigned) |
| Authority path | Điều 37 → Điều 32; no manual SQL / curl bypass (§2.1) |
| Quorum | risk-scaled (high: ≥1 president + ≥2 ai_council + 0 reject) |
| No self-approve | §4.3 forbids self-approval of own high-risk request |
| Ungoverned run | BI-9 / F-OPEN-5: with no owner/Điều 32, the producer does not run (no stamps) |
5. Contract / requirement / matrix / result
FRESH: governance_object_ownership=0 → GATE-5 (owner) OPEN, non-waivable. No owner is assigned and no ownership row is written here (OWNER_ASSIGNMENT_DRIFT → HOLD if it were). Status this run: NOT triggered.
6. Owner-gated future work
Naming the role-holder + writing the ownership row are Owner acts; forbidden now.
7. What remains unresolved
S2 owner unassigned; who halts the producer if the single owner is unavailable is an open question (OQ-8 carried).
8. Ready for GPT/Codex review
Yes — Codex should confirm B2 cannot run ungoverned and that nobody is assigned.