13 — Design Patches Required (fold-backs to implementation-index docs + laws/concepts, design-only, 2026-06-02)
13 — Design Patches Required
Exact patches this design implies for the implementation-index package and the laws/concept docs. These are paper instructions, applied later by the proper authority at build time — nothing is mutated here beyond a one-line cross-link pointer (§13.4).
13.1 Patches to the implementation-index package (…/one-roof-governance-technical-addendum-and-implementation-index-2026-06-01/)
| # | Target doc(s) | Patch | Risk class |
|---|---|---|---|
| P1 | 88, 89, 95, 96, 100, 114, 124 (M-1 definition) | Redefine M-1: from "≥1 row in os_proposal_approvals" → "a valid governance_build_authorization for THIS step (v_build_auth_valid); sovereign e-sign required only if requires_sovereign_esign." (doc 02 §02.7) |
governance change — needs L2+L4 ratification |
| P2 | 93–99 (build plan) | Insert a new first build step "SB-0 / Authorization substrate": create governance_build_authorization + v_build_auth_valid + new apr_action_types rows (authorize_build_step, activate_event_type, register_axis, register_topic_node, all risk=high). All later spine steps reference it. |
governance change |
| P3 | 72 (build-authorization template), 95 (auth forms) | Reserve os_proposal_approvals for L4 only; the COMMIT template's M-1 line points to governance_build_authorization, not os_proposal_approvals, except for L4-escalated steps. |
governance change |
| P4 | 07-sb3 scaffold, 38–44 (GCOS substrate) | Add axis_registry + axis_assignment as named substrate blockers (SB-AXIS-1/2) alongside SB-10..13; SB-3 becomes "generalize the envelope into a projection of axis_registry" (remove the hardcoded-3). |
additive design |
| P5 | 27 (auto-approve hardening), 84 | Fix fn_auto_approve_add default: replace "auto-approve action='add'" with "auto-approve only if proposed_action_code ∈ governed auto-approve allowlist AND risk_level='low'; else fail-safe deny" (doc 02 L0). |
hardening |
| P6 | 31–35 (GCOS), 09 (issue/event scaffold) | Register axis issue types (axis_unregistered, inventory_gap, axis_owner_gap, axis_vocab_unowned, axis_grouping_island, topic_overlap, wrong_topic, reconstruction_integrity_fail, containment_cycle, governance_island) in the governance event domain (register-before-emit, Điều 45). |
additive design |
| P7 | 26 (OP-B IU owner), 17 (SB-2) | Owner-per-scope must cover axes/topic: the Axis Registry + topic facet owners (GOV-COUNCIL policy / GOV-KG-SYS substrate / GOV-SIV integrity) are part of OP-B/SB-2 ratification, not a separate decision. | governance decision |
13.2 Patches to laws / concept docs
| # | Target | Patch |
|---|---|---|
| L1 | concept 02-open-axis-… + hardening 02-open-axis-model |
Promote the Axis Registry (M-DEF-9) from concept to a build blocker with the nine-attribute table (doc 03 §03.2); its absence is the live inventory_gap (critical). |
| L2 | dieu38-…/L3-metadata-governance (DRAFT) |
Name axis_assignment as the semantic-assignment substrate carrying confidence/evidence/zone/provenance; affirm "máy trước, người sau" + derived-first for structural axes. |
| L3 | nd-36-01-… |
Flag that the soft-relation substrate (entity_relations, abbreviation_dict, disambiguation_log, entity_embeddings) is decreed but unbuilt (doc 01) — any topic/axis design must treat it as future and interim-route soft relations through universal_edges. |
| L4 | dieu39-knowledge-graph-law (ENACTED) |
No change to law; record that KG-assisted dynamic topics stay provisional/AI-facing until promoted (Golden Rule) and that topic promotion is governance, not KG. |
13.3 The os_proposal_approvals provenance recommendation
os_proposal_approvals is a sales/deal proposal e-sign module (siblings os_proposals/os_deal_stages/…). Two paths (doc 02 §02.3b):
- Interim: keep it as L4 sovereign e-sign, agent-forbidden, M-1 redefined off it for L3 builds.
- Target (recommended, council decision): stand up a purpose-built governance sovereign e-sign collection so the sales module returns to sales use. This is itself an L2/L4 decision — listed here, not done.
13.4 Anti-island cross-link (the only thing applied now)
To satisfy "no unlinked island," a one-line pointer from the implementation-index read-me to this package is added (§13.4 applied via patch_document on 00-read-me-first-implementation-index.md). This package already cross-references the implementation-index by doc number throughout (docs 00, 01, 12). No other implementation-index content is changed by this design run.
13.5 Patch ordering
P1+P2+P3 (authorization) are the critical path and must precede any spine build (doc 12 Class 1). P4–P7 + L1–L4 are accepted alongside this package's detailed-design phase (doc 12 Class 3). P5 (auto-approve fix) can land early as a standalone hardening. None are executed in this design-only run.