F5 Owner Decision Record — Scanner / Observability / Runtime Safety (2026-06-16)
F5 OWNER DECISION RECORD — Scanner / Observability / Heartbeat (D11) + Runtime / Config / Operational Safety (D12)
Date: 2026-06-16 · Revision: rev1 · Layer: F5 (framework rev56 §6c — D11 + D12) · Status of gate: CLOSED Unlocks: FX (Governance One Roof / Owner / Authority Gates) Program Macro only.
STATUS: F5 DECISION GATE CLOSED — READ-ONLY, NON-AUTHORIZING. This record closes the F5 decision gate based on the accepted F5 bundle + Codex control verdict + GPT-accepted FX-pending wording patch. It performs no live DB / runtime / production query, mutates nothing, creates no schema/table/registry/index, builds and runs no scanner / heartbeat / checker / promote / DOT / formula / assembly, writes no canonical birth / BIRTH_STAMP / PROMOTE_STAMP / PROMOTE_BLOCKED state, creates no dashboard, resolves no CONS/CELL conflict, writes no technical design and no implementation prompt. Documentary ≠ live proof · Engineering PASS ≠ Authority PASS · Codex PASS ≠ Owner phase-authorization.
§1 — Owner View (3 câu hỏi)
Q1 — Cái gì đang có và dùng lại được?
A complete, internally-consistent documentary spine F0→F5 now exists and is reusable as a paper contract: the scanner/observability/heartbeat concept (D11) and the runtime/config/operational-safety concept (D12) are described, classified, and pinned to KB evidence. Reusable now: the scanner list-only concept (de-bai §V.6/§V.9/§V.17 — "chỉ liệt kê … không tự sửa toàn hệ"); orphan/missing-stamp detection by assembling existing substrate (Đ23 + birth_registry + Đ0-G §2.5 + idx_birth_uncertified + system_issues + event_outbox), not a new store; the F0→F5 non-authorization pattern and the Owner/GPT → Codex → Owner phase-gate; the deep-evidence layer (sources/evidence/authority/conflict/runtime/provenance/safety-lock). None of it is a built or running system.
Q2 — Cái gì đang có nhưng cần sửa/kiểm chứng mới dùng lại được?
Everything operational in F5 is DOCUMENTARY_ONLY / GAP / UNKNOWN / HOLD: scanner not implemented and not run; heartbeat not run (clock source undefined — RISK-TIME-001 BLOCKER); KB→runtime delivery of required-stamps = UNKNOWN and not inferable from the JSON's existence; the checker/promote lane is documentary / HOLD-2 ("No checker, no lane. A paper lane is no lane."); the pre-promote staging store is HOLD-1; canonical birth is observed by absence only (output at promote, D10). Substrate (birth_registry ~1.2M, dot_tools ~309 without dot_role/cell_id, iu_staging_*, system_issues, event_outbox) is documentary, not live-proven. The whole Nhóm R operational-risk family (RISK-AP/IDX/STL/GC/CELL/RUN/BYPASS/CRASH/CAP/TIME) and SCAN-001..015 / SCAN-REUSE are open survey-gates. CONS-002, CONS-003, CELL-003/004/007 remain unresolved.
Q3 — Cái gì thật sự phải làm thêm? After Owner decisions + a scoped read-only Phase-1, the genuine future build = a list-only scanner/report (no auto-fix), a minimal heartbeat with a defined clock, proof of KB→runtime stamp delivery — all built on top of the F4 lanes (promote checker + atomic-promote transaction + rehearsal) that are still HOLD-2. All are future, Owner-gated, default-NO. F5 authorizes none of them. The immediate unlock is the FX (Governance One Roof) Program Macro only — a cross-cutting, read-only survey that must additionally read Điều 39 as a mandatory compatibility source.
§2 — What was decided (F5 decision table)
| # | Decision item | Recorded? | Decision |
|---|---|---|---|
| D1 | F5 bundle accepted as post-F0→F5 evidence basis | ✅ | The F5 bundle — f4-owner-decision-record-2026-06-16.md (rev1), f5-scanner-observability-runtime-safety-reuse-survey-packet.md (rev1), reports/f5/f5-scanner-observability-runtime-safety-execution-report-2026-06-16.md (rev1, PARTIAL), reports/f5/f0-f5-cross-f-evidence-readiness-matrix-2026-06-16.md (FX-pending wording patch applied) — is accepted as the documentary evidence basis after the FX-pending wording patch. No Claude content patch was required beyond the accepted FX-pending wording. |
| D2 | Codex verdict accepted | ✅ | Codex PASS_WITH_MINOR_FIXES accepted as a control verdict only (Engineering/quality gate), not as Owner phase-authorization. |
| D3 | FX-pending wording patch accepted | ✅ | The Cross-F Matrix FX-pending wording patch is applied and GPT-accepted; no further Codex re-review is required for the wording patch. |
| D4 | PARTIAL accepted | ✅ | The F5 execution report STATUS=PARTIAL is accepted as honest and non-blocking — it reflects that every F5 operational candidate is documentary/UNKNOWN/HOLD, not that F5 failed. |
| D5 | F5 boundary accepted | ✅ | See §3. Accepted and not re-opened at FX. |
| D6 | Cross-F Matrix role accepted | ✅ | The Cross-F Evidence & Readiness Matrix is accepted as a readiness/evidence summary across F0→F5 — it is not a decision note and not technical design. It explicitly does not complete or replace the dedicated FX Program Macro. |
| D7 | FX remains pending, now opened as read-only survey | ✅ | FX (Governance One Roof / Owner / Authority Gates) remains pending and is now opened as a read-only, non-authorizing dedicated Program Macro using the same 3 Owner questions + same deep-evidence layer. |
| D8 | Điều 39 is a mandatory FX compatibility source | ✅ | Điều 39 (Knowledge Graph Law v2.3, enacted) knowledge/dev/laws/dieu39-knowledge-graph-law.md must be read by FX as a mandatory compatibility source. Điều 39 goals remain required; its live implementation is essentially absent and its rollout method may change under the F0→F5 / DOT / stamp / checker / scanner model. |
| D9 | CONS / CELL unresolved | ✅ | CONS-002 (IO Contract examples GAP) and CONS-003 (6-vs-7 tầng) remain unresolved; CELL-003/004/007 (cell_id dimensions) remain BLOCKERs. Carried, not resolved. |
| D10 | HOLD-1 / HOLD-2 unresolved | ✅ | HOLD-1 (iu_staging_* pre-promote staging store, Phase-1-gated) and HOLD-2 (atomic promote transaction + rehearsal proof) remain unresolved. |
| D11 | STG / DOT-CAP / RISK-* open | ✅ | STG-012/015 + STG-REUSE-001/003, DOT-CAP-001/004/006/010, and the full Nhóm R family (RISK-AP/IDX/STL/GC/CELL/RUN/BYPASS/CRASH/CAP/TIME) + SCAN-001..015 / SCAN-REUSE remain open. |
| D12 | What this unlocks | ✅ | FX Program Macro only (read-only, non-authorizing). Not Phase-1, not technical design, not implementation. |
§3 — F5 boundary (ACCEPTED, not re-opened at FX)
The following boundary held throughout the F5 survey and is accepted and not re-opened at FX:
- Scanner = list-only concept; not a governance macro. de-bai §V.6/§V.17: a scanner "chỉ liệt kê: Object nào chưa khai sinh? … thiếu dấu bắt buộc? … nên bị quarantine hoặc chặn promote?"; "không tự sửa toàn hệ; không thay thế promote checker; không trở thành macro governance mới." Result is a bảng cảnh báo (warning table), not a whole-system auditor.
- Scanner is not implemented and was not run. DOCUMENTARY_ONLY / GAP — "scanner chưa implementation" (framework D11). No scanner was built or run; no
birth_registry/system_issueswas queried live. - Heartbeat was not run. Freshness depends on a clock source that is undefined (RISK-TIME-001 BLOCKER).
- Runtime / config delivery = UNKNOWN.
required-stamps.v0.1.jsonrev6 is a KB-side static config (DRAFT — not enacted) with no runtime-delivery field; delivery is not inferable from the file's existence. - Checker / promote lane = documentary / HOLD-2. checker-spec rev11 is "DRAFT — KHÔNG PHẢI BAN HÀNH" — not built, not selftested ("No checker, no lane. A paper lane is no lane."). Atomic promote = HOLD-2 / BLOCKED ("Chưa có atomic promote transaction + rehearsal proof … thì CHƯA được mở pilot promote thật.").
- Staging = HOLD-1. The pre-promote staging store (
iu_staging_record/iu_staging_payload) is HOLD-1 (live state unproven, Phase-1-gated). - Canonical birth = observed-by-absence only. Canonical birth is the output at promote (D10), observed by its absence; F5 wrote none and called no
fn_birth_*. - No DB / runtime proof; no technical design. F5 made no live DB/runtime/Phase-1 query and produced no schema/design/implementation.
- §6c mapping confirmed. F5 = framework §6c D11 + D12 — the operational "roof" (mái), built last, cross-cut by FX (Governance One Roof, D2).
§4 — Carried conflicts / blockers (not resolved by F5)
| Item | Status | First seen | Blocks |
|---|---|---|---|
| CONS-002 | Unresolved | F3 | IO Contract examples GAP; concrete IO contract instances |
| CONS-003 | Unresolved | F0/F1 | 6-vs-7 tầng (cell_id tầng dimension); cell materialization |
| CELL-003 / 004 / 007 | BLOCKER | F1 | cell_id dimensions (collection/species/tầng) materialization |
| HOLD-1 | Unresolved (Phase-1-gated) | F2 | iu_staging_* live staging store proof |
| HOLD-2 | Unresolved (F4-implementation) | F4 | Atomic promote transaction + rehearsal; canonical birth; real promote pilot |
| STG-012 / STG-015 | Open | F2 | Scheduler (no pg_cron) / packet_hash |
| STG-REUSE-001 / 003 | Open | F2 | Reuse-vs-new staging decisions |
| DOT-CAP-001 / 004 / 006 / 010 | Open (BLOCKER) | F3 | DOT coverage matrix; checker-as-DOT |
| Nhóm R (AP/IDX/STL/GC/CELL/RUN/BYPASS/CRASH/CAP/TIME) | Open survey-gates | F5 | Atomic promote rehearsal, scanner perf, stale-verdict, cleanup, runtime liveness, bypass, crash/retry, retention, clock |
| SCAN-001..015 / SCAN-REUSE-001/002 | Open survey-gates | F5 | Scanner severity/scope/reuse; ban on auto-fix |
| required-stamps runtime delivery | UNKNOWN | F4/F5 | Whether stamps are enforced at runtime |
| checker implementation | DRAFT, not built | F4/F5 | Promote lane existence |
| runtime / checkout sync | Not proven | F0 | Source-currency across Claude/Codex/Agent/runtime |
§5 — HOLD-1 and HOLD-2 (carried)
- HOLD-1 (
iu_staging_*pre-promote staging store): remains Phase-1-gated. F5 did not touch it live and did not lift the hold. - HOLD-2 (atomic promote transaction + rehearsal proof, FIX7-style): remains not lifted. F5 observed the checker/promote lane as documentary/HOLD-2; it is an F4-implementation subject, not an F5 one, and not resolved here.
§6 — What is still NOT authorized (after F5)
F5 authorizes no Phase-1, no live DB/runtime/production query, no schema/registry/index, no scanner / heartbeat / checker / promote / DOT / formula / assembly build or run, no canonical birth / BIRTH_STAMP / PROMOTE_STAMP / PROMOTE_BLOCKED write, no dashboard, no CONS/CELL resolution, no technical design, no decision note for blockers, and no implementation prompt. Codex PASS_WITH_MINOR_FIXES is not Owner phase-authorization.
§7 — What this unlocks: FX Program Macro only
This decision unlocks exactly one next step: the FX — Governance One Roof / Owner / Authority Gates Program Macro (framework §6c D2), run as a read-only, non-authorizing dedicated survey. FX is cross-cutting, not F6, not a second birth system, not a monster governance registry, not scanner auto-fix, not a Knowledge Graph implementation. FX must:
- Use the same 3 reuse-first Owner questions and the same deep-evidence layer (sources / evidence / authority / conflict / runtime / provenance / safety-lock).
- Read Điều 39 (Knowledge Graph Law v2.3) as a mandatory compatibility source, and determine how to preserve Điều 39 goals while adapting its rollout to the Lego/DOT/stamp model.
- Search and classify the old automatic-Governance work (reportedly completed and repaired through a third revision) for maximum reuse, without assuming it is live or authoritative.
- Stay strictly within reuse-first / documentary boundaries — no new registry, no relationship DB, no scanner auto-fix, no second birth, no 36 DOT-KG registration, no Điều 39 rewrite.
Technical design is not authorized before FX. The Cross-F Matrix flags FX readiness but does not replace the dedicated FX Program Macro.
§8 — Self-check
- Did I close F5 by recording the accepted bundle + Codex verdict + FX-pending patch + PARTIAL? — Yes (§2 D1–D4).
- Did I accept the F5 boundary without re-opening it? — Yes (§3).
- Did I keep CONS-002/003, CELL-, HOLD-1/2, STG, DOT-CAP, Nhóm R, SCAN- unresolved? — Yes (§4, §5).
- Did I record that the Cross-F Matrix is a readiness summary, not a decision note / technical design, and does not replace FX? — Yes (§2 D6).
- Did I record Điều 39 as a mandatory FX compatibility source whose goals stay required but rollout may change? — Yes (§2 D8).
- Did I avoid authorizing Phase-1 / DB / runtime / build / canonical birth / technical design / implementation? — Yes (§6).
- Did I unlock only the FX Program Macro? — Yes (§7).
- Did I preserve the 3 Owner questions? — Yes (§1).
§9 — Next action
- GPT / Owner read this F5 decision record (rev1).
- FX Program Macro runs (read-only): FX packet → internal gate → FX execution report, reading Điều 39 as mandatory compatibility source.
- GPT → Codex review the F5 decision + FX packet + FX report together.
- If accepted, Owner decides the post-survey route: A. Điều 39 compatibility / amendment note; B. blocker decision notes (CONS-002/003, CELL-*); C. Phase-1 read-only substrate/runtime survey; D. technical-design preparation; E. implementation planning later.
- Default HOLD. Codex PASS ≠ Owner phase-authorization.