KB-31DE

F5 Owner Decision Record — Scanner / Observability / Runtime Safety (2026-06-16)

14 min read Revision 1
laws-newF5decision-recordgovernanceread-onlynon-authorizing

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_issues was 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.json rev6 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:

  1. Use the same 3 reuse-first Owner questions and the same deep-evidence layer (sources / evidence / authority / conflict / runtime / provenance / safety-lock).
  2. 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.
  3. 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.
  4. 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

  1. Did I close F5 by recording the accepted bundle + Codex verdict + FX-pending patch + PARTIAL? — Yes (§2 D1–D4).
  2. Did I accept the F5 boundary without re-opening it? — Yes (§3).
  3. Did I keep CONS-002/003, CELL-, HOLD-1/2, STG, DOT-CAP, Nhóm R, SCAN- unresolved? — Yes (§4, §5).
  4. 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).
  5. Did I record Điều 39 as a mandatory FX compatibility source whose goals stay required but rollout may change? — Yes (§2 D8).
  6. Did I avoid authorizing Phase-1 / DB / runtime / build / canonical birth / technical design / implementation? — Yes (§6).
  7. Did I unlock only the FX Program Macro? — Yes (§7).
  8. 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.