KB-505F

Workstream E0 — New-Law Consistency & Conflict Audit (2026-06-17, read-only, audit-only, non-authorizing)

44 min read Revision 1
laws-newnewlawslaw-revisionworkstream-e0consistency-auditconflict-audithorizontal-auditread-onlyaudit-onlynon-authorizingno-patch53-record-matrixhostile-readingdoctrine-matrixblocker-consistencypass-with-medium-findings2026-06-17

Workstream E0 — New-Law Consistency & Conflict Audit

Status: Audit report. READ-ONLY · AUDIT-ONLY · REPORT-ONLY · NON-ENACTING · NON-AUTHORIZING. Created: 2026-06-17 · Law Revision Workstream E0 · rev1. Mission: A full horizontal consistency/conflict audit across all new law-revision materials (Workstreams Catalog / A / B0 / B1 / B2 / C / D0) — comparing them with each other, with the Law Merge brief, with the F0→F5/FX design model, with source-recovery findings, and with the accepted amendment/rewrite/consolidation logic. It finds and reports; it fixes nothing. Every finding's patch_now = no. Standing rule (carried verbatim from the audited corpus): Codex/GPT/Council PASS ≠ Owner authorization. Engineering PASS ≠ Authority PASS. Default disposition: HOLD. This audit does not change that; a PASS here means only "the corpus is internally consistent enough for the Owner/GPT/Codex chain to act on," not that anything is enacted, consolidated, or authorized. Method: All evidence read first-hand from the AgentData KB (the corpus is absent from the local checkout). Core audit-subject artifacts (reading index, catalog, D0 packet + decision matrix, all 5 amendment drafts, the Đ37 rewrite) read in full by the lead auditor; comparison anchors (17 source/old laws, the F0→F5/FX design sources, the 8 execution reports, the 8 compatibility notes) gathered by 5 parallel read-only reader-agents that returned verbatim-quoting digests. No live DB/runtime query; no Phase-1; no mutation of any KB document except the creation of this one report.


0. Status

STATUS: PASS_WITH_MEDIUM_FINDINGS.

  • No CRITICAL finding. No forbidden mutation occurred (no patch, no current corpus, no laws/ edit, no adoption, no technical design, no Phase-1, no live query, no schema/registry/index creation, no blocker resolution, no authority-order change, no v0.1 baseline change, no v0.2 promotion).
  • No HIGH finding. No internal contradiction, silent blocker-resolution, or over-authorization was found that must be fixed before an Owner decision on D0.
  • 1 MEDIUM, 4 LOW, 3 INFO findings (§13). The single MEDIUM (the LAW_READING_INDEX.md staleness for the 6 AMEND/REWRITE records) is already documented in the D0 packet (§4.1), is conservative in direction (it under-claims, never over-authorizes), and its fix is explicitly scheduled inside the D0 owner-decision matrix (Option B re-points the index). It therefore does not block an Owner decision on D0; it should be addressed when/if the pointer-layer (Option B) work is opened.

The overall result: the new-law corpus is highly internally consistent. The 53-record matrix is identical across every artifact; every doctrine of the F0→F5/FX model is represented consistently; every held blocker is carried open in every relevant artifact; and 24 of 24 tested hostile readings are explicitly rejected by at least one (usually several) artifacts.


1. Executive summary

  1. Inventory is complete and clean. 28 substantive artifacts (+1 folder-anchor) under knowledge/dev/laws-new/newlaws/, in the expected shape (6 root · 5 amendments · 2 consolidation · 8 notes · 7 reports · 1 rewrite). Every artifact maps to a workstream deliverable and to the D0 matrix; no unexpected current corpus, no current/ folder, no duplicate competing draft for any one law, no orphan report.
  2. Matrix/mapping is consistent to the number. 53 records · KEEP 6 · KEEP+NOTE 25 · AMEND 5 · REWRITE 1 · DEFER 16 — identical in the catalog, the reading index, the D0 packet's full 53-row matrix, and all 8 execution reports. The 5 AMEND drafts, 1 REWRITE draft, 8 written notes, and 17 not-yet-written notes all map to the correct records.
  3. Authority/source boundary is consistent everywhere. Every artifact repeats: laws/ = source/provenance (untouched); newlaws/ = draft/workspace; Constitution v4.6.3 supreme; architecture/ = "tham khảo chi tiết" working source under the Constitution (not supreme); newlaws/ does not replace laws/; no current corpus. No line was found that reads as draft-adopted, current-corpus-exists, notes-amend-law, rewrite-in-force, architecture-wins, or D0-auto-authorizes.
  4. F0→F5/FX doctrine is faithfully and uniformly applied. TEMP-at-INSERT / canonical-at-promote, BIRTH_STAMP/PROMOTE_STAMP only at promote, checker fail-closed, scanner list-only, DOT narrow, One-Roof-not-a-registry, render-at-promote, current-corpus = pointer-layer-not-copied-text, Owner/Đ32 gate, v0.1 locked / v0.2 not-promoted — all consistent with the design sources.
  5. Amendments and the rewrite are deliberately cross-consistent. They share one discipline ("scanner detects/lists/proposes; any mutation runs design (NT15/Đ20) → checker (F4) → Owner/Mức 3/Đ32 → regression (Đ30)") and explicitly cross-reference one another (e.g. Đ38 "aligned with the Điều 36 amendment draft," "Điều 33 amendment draft A1/A3/A7," "mirrors the Điều 22 draft"; Đ36 "mirrors the Điều 33 ... and the Điều 22 ..."; L4 aligns with the Đ22 draft + Điều 4 note + B0). No contradiction was found between any two of them.
  6. No blocker is silently resolved. RISK-BYPASS, HOLD-1, HOLD-2, CONS-002, CONS-003, CELL-003/004/007, GOV-016/017, GOV-REUSE-001, Đ39 runtime-EMPTY, Đ35 production-readiness FAIL, source-recovery Đ0/0-B/0-G, Tool-Kiem-Thu v0.1/v0.2 lock — all carried open in every relevant artifact. CONS-004/005 are recorded as decided at F0 (not reopened).
  7. The one MEDIUM issue is the known index staleness (§13 E0-M1): the reading index, authored before the drafts existed, still tells a reader "no amendment/rewrite exists yet — read the old law as background only," and contains no forward-pointer to D0 or to the now-existing drafts. D0 §4.1 documents this and declares itself "the authoritative pointer"; the fix (re-pointing the index) is Option B in the D0 decision matrix.

2. Scope and sources read

All paths under knowledge/dev/. "Read first-hand" = full content read into the auditor's own context; "Digested (agent)" = read by a read-only reader-agent that returned verbatim-quoting structured findings.

Group Count How read Notes
Law Merge foundation (catalog, exec report, survey packet, phase gate) 4 catalog read first-hand (intro + records 1–53 + Summary D/E); others digested (agent) catalog content_length 48,223
Workstream A (reading index + birth-embedded check + WS-A report) 3 index read first-hand; reports digested (agent) index 19,017 chars
Workstream B0/B1/B2 (source-recovery + 5 amendment drafts + 2 reports) 8 all 5 amendment drafts read first-hand; source-recovery + reports digested (agent) + quoted verbatim in D0 §9 amendments 15.5K–23.9K chars each
Workstream C (Đ37 rewrite + report) 2 rewrite read first-hand (§0–§14); report digested (agent) rewrite 46,462 chars
Workstream D0 (planning packet + decision matrix + report) 3 packet + matrix read first-hand; report digested (agent) packet 39,859 chars
8 compatibility notes (notes/) 8 digested (agent) with verbatim banner/terminology/blocker extraction all rev1
Source / old laws (laws/, ssot/, architecture/) 17+ digested (2 agents): constitution, existing-law-references, Đ1, Đ32, Đ4, L4, LSL-01, Đ0/0-B/0-G (architecture), operating-rules; Đ33, Đ35, Đ36, Đ37, Đ38, Đ38-appendix-01, Đ39, Đ22 comparison anchors only
F0→F5/FX + design / de-bài sources 12+ digested (agent) see §6

Sources located for §3.7 (F0→FX): laws-new/technical-slice-framework.md (rev56, §6c domain→F mapping), de-bai-cai-tien.md (rev33), matrix-stamp-governance-addendum.md (rev14), promote-checker-v0.1-spec.md (rev11), matrix-refactor-implementation-plan.md (rev5), the F0–F5 reuse-survey packets, fx-governance-one-roof-dieu39-compatibility-reuse-survey-packet.md (rev2), the F0/F4/F5 owner-decision-records, the F0–F5 cross-F evidence matrix (rev7), the FX execution report (rev6), and the 2026-06-01 one-roof-governance-decision-pack. SOURCE_NOT_FOUND: none — every §3.7 search term resolved to at least one located source; all 11 design doctrines were located with verbatim quotes.

Read boundary honestly stated: the catalog DEFER tail (records 39–53) and the Summary tables were read first-hand and confirmed identical to the D0 matrix and the index; the source/old laws and the process reports were read via reader-agents (read-only) rather than fully re-read by the lead auditor — their digests quote verbatim and were used only as comparison anchors, never as audit subjects to be patched.


3. Artifact inventory

Listing of knowledge/dev/laws-new/newlaws/ (29 documents: 28 substantive + 1 folder anchor).

Folder Files (count) Revisions Verdict
root .folder-anchor.md, LAW_READING_INDEX.md, law-merge-catalog-2026-06-16.md, law-merge-execution-report-2026-06-16.md (rev2), law-merge-survey-packet.md, law-merge-administrative-phase-gate-2026-06-17.md (6) rev1 (catalog/index/packet/gate), rev2 (exec report) expected; anchor is a folder marker
amendments/ dieu22, dieu33, dieu36, dieu38-normative-document-law-v3, l4-birth-gate-extension (5) rev1 exactly the 5 AMEND records (#2–#6)
rewrites/ dieu37-governance-organization-law-rewrite-draft (1) rev1 exactly the 1 REWRITE record (#1)
notes/ constitution, dieu1-foundation-principles, dieu32-approval-owner-gate, dieu35-dot-governance, dieu38-text-as-code-appendix01, dieu39-knowledge-graph, dieu4-birth-process, terminology (8) rev1 exactly the 8 written KEEP+NOTE notes (#8/11/12/13/14/15/16/23)
consolidation/ law-revision-consolidation-planning-packet, owner-decision-matrix (2) rev1 D0.1 + D0.2
reports/ birth-embedded-…-check, law-revision-workstream-a-…, law-revision-workstream-b0-b1-… (rev8), law-revision-workstream-b2-… (rev10), law-revision-workstream-c-dieu37-rewrite-…, law-revision-workstream-d0-…, source-recovery-dieu0-dieu0b-dieu0g-… (7) mostly rev1; B0/B1 rev8, B2 rev10 D0.3 + per-workstream reports

Checks:

  • Expected files exist: yes — all task-§3 paths resolved.
  • No unexpected current corpus: confirmed — no current/, laws-current/, newlaws/current/, or copied-law file anywhere; list_documents on the prefix returns only the 29 above.
  • No duplicate competing draft for the same law: confirmed — each law has exactly one artifact type (a note OR an amendment OR a rewrite), never two.
  • No orphan report: confirmed — each report maps to a workstream deliverable.
  • No deliverable missing from the D0 matrix: confirmed — D0 §3 maps all 53 records; §5 maps the 5 amendments; §6 maps the rewrite; §7 maps the 8 notes; §8 lists the 17 not-yet-written notes (8 + 17 = 25 KEEP+NOTE).
  • Observation (INFO, E0-I2): the WS-B0+B1 report (rev8) and WS-B2 report (rev10) have far higher revisions than the rev1 artifacts they describe — evidence of heavy GPT/Codex patch cycles on the reports. First-hand reading of the rev1 amendments confirms they still match the reports' descriptions; no drift detected.

4. Matrix / mapping consistency

Check Result Evidence
53 records remain 53 Consistent Catalog "53 records"; index "53/53 records mapped"; D0 §3 "sum = 53"; WS-A/B0-B1/B2/C/D0 reports all "= 53".
Category totals 6/25/5/1/16 Consistent Index "Catalog totals (verified, sum = 53): KEEP 6 · KEEP+NOTE 25 · AMEND 5 · REWRITE 1 · DEFER 16"; D0 §3 "KEEP 6 (records 32–37) · KEEP+NOTE 25 (records 7–31) · AMEND 5 (records 2–6) · REWRITE 1 (record 1) · DEFER 16 (records 38–53)"; catalog Summary D/E identical.
#1 Đ37 = REWRITE Consistent Catalog #1 REWRITE; index §3.4; D0 §6; rewrite draft "catalog record #1 = REWRITE".
#2–#6 = AMEND (Đ22/Đ33/Đ36/L4/Đ38) Consistent Catalog #2–#6; index §3.3; D0 §5; each amendment header cites its own catalog #.
8 written notes → #8/11/12/13/14/15/16/23 Consistent index §3.2; D0 §7; Sub-agent note-digest confirms each note's self-declared record # matches.
17 unwritten notes → #7/9/10/17–22/24–31 Consistent index §3.2 ("future"); D0 §8 table.
No DEFER record used as an active design source Consistent DEFER rows all carry DEFER_DO_NOT_USE; no amendment/rewrite/note targets a DEFER record.
No KEEP record amended/rewritten by accident Consistent KEEP records 32–37 have artifact "✗ (none needed)"; no amendment/note targets them.

Sub-finding (LOW, E0-L2): the reading index uses the label strings READ_NEW_AMENDED_VERSION_PENDING / READ_NEW_REWRITE_VERSION_PENDING for the 6 AMEND/REWRITE records, while D0 uses READ_AMENDMENT_DRAFT_PENDING_OWNER / READ_REWRITE_DRAFT_PENDING_OWNER for the same records. This is a label divergence between two live artifacts (root cause = the index predates the drafts; see E0-M1). Both label-sets map cleanly from the same catalog disposition, so the classification is consistent; only the vocabulary differs.


5. Authority / source-boundary consistency

Every audited artifact restates the same boundary, and none contradicts it.

Boundary rule Status Representative evidence
Constitution v4.6.3 supreme; F0→FX is a method under it Consistent index §1 "Supremacy unchanged … the Constitution remains the supreme text"; rewrite §8 "Constitution remains supreme"; constitution note "stays supreme; F0→FX is a method under it".
laws/ = source/provenance, untouched Consistent catalog folder-policy table "laws/ … NO — read-only"; D0 §1.2 "the old laws stay exactly where and as they are"; every amendment "does not change laws/…".
newlaws/ = draft/workspace; does not replace laws/ Consistent index §1 "No old law is replaced unless this index explicitly says so after review"; rewrite §8; D0 §13 #2.
architecture/ = working source under Constitution, not supreme Consistent D0 §9 "architecture/ is the temporary/detailed working source … but is not supreme and not the enacting authority by itself"; L4 §3 A5; rewrite §8; B0 source-recovery quotes existing-law-references.md "File architecture/ = tham khảo chi tiết".
Codex/GPT PASS ≠ Owner authorization; Engineering PASS ≠ Authority PASS Consistent present in every artifact's banner.
No current corpus created Consistent D0 §1.2 "create a current corpus … none is created"; owner-matrix §1 "Builds a current corpus? No" for all 4 options.

No over-reading line found. The audit specifically searched for any sentence that could be read as: draft is adopted / current corpus exists / notes amend old law / amendment replaces old law now / rewrite is in force / architecture wins over Constitution / D0 auto-authorizes current corpus. None was found. Each such reading is, on the contrary, explicitly listed and rejected (index §4; D0 §13; rewrite §12; each amendment §7).


6. F0→F5/FX consistency

The design model was located in the F-layer survey packets, the technical-slice framework (rev56, §6c domain→F mapping: D1=F0, D2=FX, D3+D10a=F1, D4+D5=F2, D6+D7=F3, D8+D9+canonical-output-of-D10=F4, D11+D12=F5), the addendum, the promote-checker spec, and the one-roof decision pack. Each load-bearing doctrine is represented consistently in the new-law artifacts:

Doctrine Status Evidence in new-law artifacts
TEMP_ID at INSERT vs canonical at promote Consistent L4 §3 A1 "INSERT … uncertified (certified=false) … Canonical/kernel/enacted status is conferred [at promote], never at INSERT"; Đ4 note "identity-root, not canonical status".
BIRTH_STAMP / PROMOTE_STAMP only at promote Consistent L4 "BIRTH_STAMP / PROMOTE_STAMP … written … only through the fail-closed promote checker + Owner"; catalog invariant "BIRTH_STAMP + canonical birth = output at promote (F4)".
Checker = fail-closed verdict, not approval Consistent rewrite §6 P5 "Checker = a fail-closed verdict — 'no checker, no lane' … A checker verdict is not an approval"; Đ32 note "checker … escalates to Điều 32 on kernel/canonical".
Scanner = list-only Consistent all 5 amendments + rewrite §6 P4 "Scanner = list-only … No auto-fix. No full-table-scan."
DOT = narrow task, not engine Consistent rewrite §6 "DOT = a narrow info-completion machine … not a broad engine"; Đ35 note "DOT = một việc hẹp".
One-Roof = roof over existing ledgers, not a registry Consistent rewrite R1 + §5 "no new governance_registry is created … ownership via the existing governance_role/owner edges — reused, not rebuilt".
Render-at-promote, not auto-output Consistent Đ38 A3 "output … rendered at promote … rendering is not an authorization to auto-publish".
Current corpus = later pointer layer, not copied text Consistent D0 Option B / owner-matrix §3 "a pointer document, not copied law text"; D0 §12 "never copied law text that could drift".
Owner / Đ32 / Mức 3 gate before mutation Consistent the shared mutation lane in every amendment + rewrite §6.
v0.1-stable locked; v0.2-hardening not promoted Consistent index §5, D0 §14, rewrite §10 — all carry the Tool-Kiem-Thu safety lock verbatim; design source confirms v0.2 "NON_AUTHORITY · NOT_PROMOTED".

Note (INFO, E0-I1) — "canonical (F4)" vs the layer name "F5": the artifacts uniformly place canonical birth output at F4 (promote), which matches the F-model's "F4 = D8+D9+canonical-output of D10". They keep this distinct from the "current corpus / current working understanding" — a separate, non-enacting pointer/reading layer (D0 Option B), not an F-layer output. There is no artifact contradiction; the two "current/canonical-ish" notions are kept apart. A future pointer-layer should preserve that distinction explicitly so a reader does not conflate "canonical birth (F4 output)" with "the consolidated current reading (D0 pointer layer)."


7. Amendment / rewrite cross-consistency

The 5 amendments + 1 rewrite were compared pairwise on each contested topic. No contradiction found; the cross-references are explicit and mutually reinforcing.

Topic Đ22 Đ33 Đ36 L4 Đ38 v3.0 Đ37 rewrite Cross-consistent?
auto-fix → proposal-only (A1–A6) scanner detect+propose no auto-fix (A2) scanner list-only Yes
auto-DDL / schema-auto-change blocked → design chain (A1–A3) HC-SCHEMA detect-only; fix via Đ33 chain (A6) no Đ0-G schema change no auto-schema; via Đ33 chain (A7) no in-law schema Yes (Đ36/Đ38 defer to Đ33)
cell_id / Species Matrix / canonical_fields defer materialization while CONS-003+CELL open (A4) not auto-generated / not materialized while CONS-003+CELL open (A2) no cell_id; CONS-003 carried no materialization (A7/§0) no cell_id/dot_role/canonical materialized Yes
birth INSERT vs promote reverse-trace not canonical proof (A4) two-phase: TEMP at INSERT, canonical at promote (A1–A4) birth precedence ref Đ0-G Yes (matches Đ4 note)
Text-as-Code / output render / auto-rewrite render-at-promote; no auto-rewrite of enacted text (A3/A4) Yes
One-Roof / governance_registry retire central registry (R1) Yes (no amendment reintroduces it)
Owner gate / Đ32 A7 authority clause A7 A7 A6 A10 §6 P5 Yes (uniform)
blocker carry RISK-BYPASS/HOLD-2/CONS-003/CELL CONS-003/CELL/HOLD-2/RISK-BYPASS/CONS-002 CONS-003/CELL/HOLD-2/RISK-BYPASS/CONS-002 HOLD-2(primary)/RISK-BYPASS/CONS-003/CELL CONS-002(primary)/CONS-003/CELL/Đ39-empty/HOLD-1 full list incl GOV-016/017, GOV-REUSE-001 Yes

Explicit cross-references found (evidence of intentional consistency): Đ38 §3 "mirrors the Điều 22 draft … and the Điều 33 draft … aligned with the Điều 36 amendment draft"; Đ38 A7 "(Điều 33 amendment draft A1/A3/A7.)"; Đ36 §3 "This mirrors the Điều 33 amendment draft … and the Điều 22 amendment draft"; Đ36 A6 "(Điều 33 amendment draft, A1/A3)"; L4 §3 "This aligns with the Điều 22 draft … and the B0 source-recovery". The 3 draft-target amendments (L4, Đ36, Đ38) each disclose that their target is itself a non-enacted draft (see E0-L3).


8. Terminology consistency

Term family Status Notes
scanner (list-only) / checker (fail-closed) / DOT (narrow) / stamp (marker) Consistent Identical usage across all amendments, the rewrite, and the 8 notes.
TEMP_ID / identity-root / uncertified / certified=false Consistent (mapped) Used as one class: L4 "identity-root + uncertified (certified=false)"; Đ4 note "TEMP_ID … certified=false at INSERT". This is a new term not in the old laws; the terminology note correctly tags it "candidate vocabulary, not yet added to the enacted glossary."
canonical / promote / F4 Consistent Always "canonical at promote (F4)". See E0-I1 for the F4-vs-"F5" framing note.
BIRTH_STAMP / PROMOTE_STAMP / OWNER_STAMP / GOV_STAMP / completeness(TEMP)-stamp Consistent but proliferating Birth stamps (L4/Đ4 note) and governance stamps (rewrite: OWNER_STAMP→governance_audit_log, GOV_STAMP→governance_role) are distinct families, used correctly. L4 also introduces a "completeness stamp at the TEMP stage" distinct from BIRTH_STAMP. See E0-L4.
Owner / Mức 3 / Điều 32 Consistent (loose) Used interchangeably as "the heavy-governance gate," though they are three distinct things (an authority / a risk level / an approval law). See E0-L4.
6 Lớp / CELL / Species Matrix / 7 dimensions Consistent (as an open conflict) The 6-vs-7 divergence is CONS-003 itself, flagged open everywhere — a tracked blocker, not an accidental drift.
Information Unit / Smart Brick / unit_version Consistent Đ38 A8 + Đ38-appendix-01 note: "unit (unit_version) is the SSOT subject; file/vector = projection".
current corpus / pointer layer / current working understanding Consistent All three used for the same non-enacting reading layer (D0); kept distinct from "canonical birth".
newlaws/ / laws/ / architecture/ Consistent Stable meanings across all artifacts (§5).

No term was found used with two contradictory meanings. The flagged items (E0-L4) are imprecision/proliferation risks, not contradictions, and the terminology note already scopes a future Owner-gated glossary addition for exactly these candidate terms.


9. Blocker consistency

Blocker Required state Observed across artifacts Verdict
RISK-BYPASS open carried open in index §7, D0 §10, rewrite §11, Đ22/Đ33/Đ36/L4/Đ38 §6, notes #3/#4/#6 Consistent (open)
HOLD-1 open D0 §10, rewrite §11, Đ38 §6, note #5 Consistent (open)
HOLD-2 open D0 §10, rewrite §11, L4 §6 (primary), Đ22/Đ33/Đ36 §6, note #7 Consistent (open)
CONS-002 open D0 §10, rewrite §11, Đ38 §6 (primary), Đ33/Đ36 §6, notes #1/#5 Consistent (open)
CONS-003 open everywhere relevant (catalog, index, D0 §10, rewrite §11, all 5 amendments, notes #1/#7/#8) Consistent (open)
CELL-003/004/007 open D0 §10, rewrite §11, Đ33/Đ36/L4/Đ38 §6, notes #7/#8 Consistent (open)
GOV-016/017 open D0 §10, rewrite §11, note #6 Consistent (open)
GOV-REUSE-001 open D0 §10, rewrite §5 + §11, note #6 Consistent (open)
Đ39 runtime-EMPTY open index §4 #5, D0 §10, rewrite §7+§11, Đ38 §6, note #6 Consistent (open)
Đ35 production-readiness FAIL open index §4 #10, D0 §10, rewrite §11, note #4 Consistent (open)
source-recovery Đ0/0-B/0-G open (5 items) D0 §9, B0 report, L4 §3 A5, Đ36 §6, Đ4 note, rewrite §8 Consistent (open)
Tool-Kiem-Thu v0.1/v0.2 lock locked / not promoted index §5, D0 §14, rewrite §10 Consistent (locked)
CONS-004 / CONS-005 decided at F0, not reopened D0 §10 "Recorded as DECIDED (not blockers)"; rewrite §11 same Consistent (decided) — but see E0-L1

No blocker is described as resolved/closed/fixed anywhere. Each appearance is "carried, not resolved" or equivalent.

Sub-finding (LOW, E0-L1): LAW_READING_INDEX.md §7 and the WS-A report list CONS-004/005 inside the "does not resolve any held blocker (CONS-002/003/004/005 …)" enumeration — lumping the two decided items with the open ones — whereas D0 §10 and the Đ37 rewrite §11 cleanly separate them ("Recorded as DECIDED, not blockers"). No artifact actually reopens or re-decides CONS-004/005 (index §1 itself records CONS-004 as the F0 authority-order decision), so this is loose wording, not a substantive reopening, but it could confuse a reader about their status.


10. Hostile-reading audit

All 24 required hostile readings were tested against the full corpus. Result: 24 REJECTED, 0 AMBIGUOUS, 0 NOT-REJECTED, 0 CONTRADICTED.

# Hostile reading Result Where rejected (representative)
1 D0 means current corpus exists REJECTED D0 §1.2, §13 #3; owner-matrix §1
2 Option B allows copied current law text REJECTED owner-matrix §3 "a pointer document, not copied law text"; "No copying or moving of law files"; D0 §12
3 Option D authorizes blocker resolution REJECTED owner-matrix §5 "It verifies; it does not resolve"; "Resolution … is a further Owner-gated step"
4 Đ37 rewrite is in force REJECTED rewrite §0 + §12 #1; D0 §13 #8; index §4 #4
5 Đ22/Đ33/Đ36/L4/Đ38 amendments enacted REJECTED each amendment §0 banner + §7 #1; D0 §13 #9; index §4 #3
6 Notes amend old laws REJECTED every note banner ("does not amend"); D0 §13 #10; index §4 #2
7 LAW_READING_INDEX stale pointer is already fixed REJECTED D0 §4.1 "D0 records this … without editing the index"; re-pointing is future Owner-gated (Option B). (The stale text is NOT fixed — it is deferred; see E0-M1 for the conservative-direction risk.)
8 architecture/ Đ0/0-B/0-G is supreme REJECTED D0 §9; B0 source-recovery; L4 §3 A5; rewrite §8; constitution note
9 CONS-003 is resolved REJECTED open everywhere; Đ36 §0 "does NOT treat the 6-Lớp vs 7-dimension conflict as resolved"
10 cell_id may now materialize REJECTED Đ33 A4; Đ36 A2; L4/Đ38 §0; D0 §12
11 Birth canonical status at INSERT REJECTED L4 §3 A1 + §7 #2; Đ4 note; index §4 #8
12 completeness stamp = canonical certification REJECTED L4 §3 A4 "Completeness ≠ canonical"; §7 #4; Đ4 note
13 DOT 100% regenerates outputs automatically REJECTED Đ38 A1/A2 + §7 #2
14 Text-as-Code can auto-rewrite law REJECTED Đ38 A4 + §7 #3
15 Đ33 permits schema auto-change REJECTED Đ33 A1–A3 + §7 #2/#3
16 Đ22 permits auto-fix on clear cases REJECTED Đ22 A1 "'Rule rõ' … does not authorize the scanner to mutate"; §7 #2
17 Đ37 One-Roof creates governance_registry REJECTED rewrite R1, §5, §12 #2/#18
18 scanner may mutate REJECTED rewrite §6 P4, §12 #3; all amendments
19 checker may approve without Owner REJECTED rewrite §6 P5, §12 #4 "A checker verdict is not an approval"
20 Codex/GPT PASS authorizes technical design REJECTED every artifact's standing rule; index §4 #1; D0 §13 #4
21 Phase-1 is now authorized REJECTED D0 §1.2/§12; owner-matrix Option D ("choosing D is that authorization" — i.e. not auto-authorized)
22 technical design is now authorized REJECTED D0 §1.2/§12; rewrite §12 #17
23 v0.2-hardening replaces v0.1 REJECTED index §5 + §4 #12; D0 §14; rewrite §10
24 DEFER docs usable as sources for new design REJECTED DEFER_DO_NOT_USE category; D0 §4; index §3.5

Adjacent risk noted (not in the list of 24, feeds E0-M1): "If I read LAW_READING_INDEX.md alone, the 6 AMEND/REWRITE records say no amendment/rewrite exists yet — read the old law as background only, so I will ignore the drafts." This reading is enabled by the stale index in isolation (the index has no forward-pointer). Its direction is conservative/safe (it under-claims; it never authorizes anything), and D0 §4.1 is the documented mitigation — but it is the substantive reason E0-M1 is MEDIUM rather than LOW.


11. Gap audit

Gap Classification Documented where Next action
17 KEEP+NOTE notes not yet written FUTURE_WORK / OWNER_DECISION_REQUIRED D0 §8; index §3.2; owner-matrix (future Batch-A) Owner may direct writing them (read-only, non-enacting); interim rule = read old law + §13 bad-reading rejections
Source-recovery Đ0/0-B/0-G 5 Owner-gated items not taken OWNER_DECISION_REQUIRED (blocks birth technical design) D0 §9; B0 report Owner-gated source-recovery pass; do not build birth design until reconciled
LAW_READING_INDEX stale for the 6 AMEND/REWRITE records (+ no forward-pointer) CAN_CARRY now / fix-before-pointer-layer D0 §4.1 See E0-M1; addressed by Option B (re-point index)
No current pointer layer exists FUTURE_WORK (by design) D0 Option B Owner Option B scopes a non-enacting drafting workstream
No Phase-1 blocker verification done OWNER_DECISION_REQUIRED (the real gate to design) D0 Option D; §10 Owner Option D opens a scoped read-only Phase-1
No final Owner adoption/consolidation decision OWNER_DECISION_REQUIRED owner-matrix §7 (decision record blank) Owner chooses A/B/C/D after GPT→Codex on D0
D0 itself not yet Codex-reviewed NOT_A_PROBLEM (expected) D0 banner "has not yet been Codex-reviewed" GPT → Codex → Owner
Glossary not updated for new terms (TEMP_ID, stamps, scanner/checker, cell_id, One-Roof) FUTURE_WORK terminology note ("candidate vocabulary") future Owner-gated glossary addition (see E0-L4)

All gaps are known and documented in the corpus itself — none is hidden. The audit's role here is to confirm they are tracked (they are) and correctly classified (they are).


12. All-new vs all-new doctrine matrix

Rows = doctrines; columns = artifact groups. C = consistent · = not addressed by that group (by scope; not a conflict) · no cell is "conflicting/over-authorizing/stale" except as footnoted.

Doctrine Index Notes B0 src-rec B1 amend B2 amend Đ37 rewrite D0 F0→FX
source boundary (laws/ vs newlaws/) C C C C C C C C
authority boundary (PASS ≠ Owner) C C C C C C C C
Owner / Đ32 gate before mutation C C C C C C C
scanner list-only C C C C C C C
checker fail-closed C C C C C C C
DOT narrow C C C C C C
no auto-fix C C C C C C C
no auto-DDL C C C C C
birth TEMP at INSERT C C C C(L4) C C
canonical at promote (F4) C C C(L4) C C C
text-as-code render-at-promote C(#5) C(Đ38) C C
One-Roof no registry C C C C
current corpus pointer-only C C C
blocker carry C C C C C C C C
Tool-Kiem-Thu lock C C C C C C
DEFER not active source C C C

¹ Index states it via the bad-reading rejections (§4) rather than a positive clause. ² Index predates the pointer-layer concept; consistent at the boundary level (newlaws/ does not auto-replace laws/), with the staleness caveat E0-M1. Blank cells are scope omissions, not conflicts — e.g. the birth amendments don't discuss One-Roof, and the governance rewrite doesn't discuss text-as-code. No cell is a contradiction.


13. Findings register

Every finding: patch_now = no (E0 reports; a later Owner-gated workstream may patch).

E0-M1 — LAW_READING_INDEX.md is stale for the 6 AMEND/REWRITE records and carries no forward-pointer

  • Severity: MEDIUM
  • Artifact(s): LAW_READING_INDEX.md §3.3/§3.4/§4 ↔ the 5 amendments/ drafts + 1 rewrites/ draft; reconciled only in D0 §4.1.
  • Evidence: Index §3.3 category definition: "READ_NEW_AMENDED_VERSION_PENDING — … No amendment exists yet. Until it exists, read the old law as background only." §3.4: "No rewrite exists yet." Reality: amendments/ holds 5 drafts and rewrites/ holds the Đ37 draft. D0 §4.1: "the index file is partially stale for exactly these 6 records, and this packet is the authoritative pointer … Re-pointing the index … is an Owner-gated change reserved for a future consolidation step." The index file itself has no pointer to D0 or the drafts.
  • Why it matters: LAW_READING_INDEX.md is the named, natural entry point for "which law source to read." A reader using it in isolation would conclude the drafts don't exist and read only the old law. The error direction is conservative (it under-claims; it cannot over-authorize), and D0 documents the mitigation — but it is a stale primary artifact, and (with E0-L2) the two artifacts use different reading-rule labels.
  • Recommended next action: When/if Option B (pointer-layer) is opened, re-point the 6 records to READ_AMENDMENT_DRAFT_PENDING_OWNER / READ_REWRITE_DRAFT_PENDING_OWNER, add a forward-pointer banner ("drafts now exist — see D0 packet + amendments/ + rewrites/"), and unify the reading-rule label vocabulary with D0. Until then, treat D0 §3–§4 as the authoritative reading map (as D0 already declares). Does not block an Owner decision on D0 (Option A only accepts the map, and the map = D0 is correct).
  • patch_now: no.

E0-L1 — CONS-004/005 lumped with open blockers in the index and WS-A report

  • Severity: LOW
  • Artifact(s): LAW_READING_INDEX.md §7; WS-A execution report ↔ D0 §10; Đ37 rewrite §11.
  • Evidence: Index §7 "…resolve any held blocker (CONS-002/003/004/005, …)"; WS-A "no resolution of CONS-002/003/004/005". D0 §10: "Recorded as DECIDED (not blockers): CONS-004 (authority order) and CONS-005 (freeze-candidate baseline) were decided at F0; they are not re-opened." Rewrite §11 agrees.
  • Why it matters: Mild status inconsistency: two artifacts list the decided CONS-004/005 inside an open-blocker enumeration. No artifact reopens them (index §1 records CONS-004 as the F0 decision), so it is loose wording, but could confuse a reader.
  • Recommended next action: In the same future index patch, move CONS-004/005 to a "decided at F0" note, aligning with D0 §10.
  • patch_now: no.

E0-L2 — Reading-rule label vocabulary diverges between the index and D0

  • Severity: LOW
  • Artifact(s): LAW_READING_INDEX.md (READ_NEW_AMENDED_VERSION_PENDING / READ_NEW_REWRITE_VERSION_PENDING) ↔ D0 (READ_AMENDMENT_DRAFT_PENDING_OWNER / READ_REWRITE_DRAFT_PENDING_OWNER).
  • Evidence: index §3.3/§3.4 vs D0 §3/§4 (two label-sets for the same 6 records). Root cause = the index predates the drafts (E0-M1).
  • Why it matters: Two live artifacts use different labels for the same reading rule; a future pointer layer + index must settle on one vocabulary to avoid implementation confusion.
  • Recommended next action: Unify the label vocabulary during the Option B re-point (fold into E0-M1's fix).
  • patch_now: no.

E0-L3 — "AMEND" disposition applied to 3 non-enacted draft targets

  • Severity: LOW
  • Artifact(s): catalog records #4/#5/#6; the Đ36 / L4 / Đ38 amendment drafts; index §3.3.
  • Evidence: Đ36 amendment "Target is itself a DRAFT 30% … v4.0 was ENACTED"; L4 amendment "the target is itself DỰ THẢO — chờ Council review + User duyệt"; Đ38 amendment "the target is itself a DRAFT — chờ Huyền duyệt". (By contrast Đ22/Đ33 amend enacted laws.)
  • Why it matters: "Amending" a non-enacted draft is conceptually "revising a draft's direction," not amending enacted law. The amendments handle this correctly (each discloses target draft-status and "does not enact or adopt"), but a future pointer layer should mark these 3 distinctly from amend-enacted records.
  • Recommended next action: In the pointer layer, annotate the 3 draft-target AMEND records as "revise-draft-direction" vs Đ22/Đ33 "amend-enacted".
  • patch_now: no.

E0-L4 — Gate-naming used interchangeably + growing stamp vocabulary, not yet glossary-anchored

  • Severity: LOW
  • Artifact(s): all amendments/notes/rewrite; terminology note.
  • Evidence: "Owner / Mức 3 / Điều 32" used as one gate throughout (three distinct things: authority / risk level / approval law). Stamp family spans BIRTH_STAMP, PROMOTE_STAMP, OWNER_STAMP, GOV_STAMP, plus L4's "completeness stamp at the TEMP stage" (and CELL_STAMP/IO_STAMP referenced in notes). Terminology note: these are "candidate vocabulary, not yet added to the enacted glossary."
  • Why it matters: Interchangeable gate-naming and a proliferating stamp family, not yet anchored in the enacted glossary, risk implementation/legal confusion downstream.
  • Recommended next action: A future Owner-gated glossary addition (already scoped by the terminology note) should enumerate the stamp family and define the Owner/Mức 3/Đ32 relationship precisely.
  • patch_now: no.

E0-I1 — "Canonical (F4)" vs the "F5" layer name; canonical-birth vs current-corpus distinction

  • Severity: INFO
  • Evidence: artifacts uniformly say "canonical birth = output at promote (F4)" (catalog, L4, Đ4 note), matching the F-model "F4 = D8+D9+canonical-output of D10". "Current corpus" (D0 Option B) is a separate non-enacting pointer layer, not an F-layer output.
  • Why it matters: No contradiction; flagged so a future pointer layer keeps "canonical birth (F4)" distinct from "current working understanding (D0 pointer layer)."
  • patch_now: no.

E0-I2 — Exec-report revision asymmetry (B0/B1 rev8, B2 rev10 vs rev1 artifacts)

  • Severity: INFO
  • Evidence: reports rev8/rev10 describe rev1 amendments. First-hand read of the rev1 amendments matches the reports' descriptions — no drift.
  • Why it matters: Observation only; documents that the reports were heavily patched in review while the drafts stayed stable.
  • patch_now: no.

E0-I3 — Source-recovery / version-drift caveats open and consistently carried

  • Severity: INFO
  • Evidence: Đ0-B v3.0(title)/v3.1(body) drift; Đ1 v3.3(body)/v3.0(metadata); Đ35 v5.2(header)/v5.1(footer); Constitution 15-NT-table vs 13/11-inline; broken law-00*.md refs; law-00sml-amendments.md absent. All flagged as documentary caveats for the Owner-gated source-recovery pass (D0 §9); none silently resolved.
  • Why it matters: Confirms the gap audit — these are OWNER_DECISION_REQUIRED and block birth technical design only; consistently carried.
  • patch_now: no.

  1. Send E0 through GPT → Codex (the standing chain). E0 is read-only and authorizes nothing.
  2. Owner may proceed with D0 as planned despite E0-M1: Option A (accept the map) is unaffected, because the map (D0) is correct — only the older index file is stale, and D0 §4.1 already supersedes it as the authoritative pointer.
  3. If/when Option B (pointer layer) is opened, fold the E0-M1 / E0-L1 / E0-L2 / E0-L3 fixes into that workstream: re-point and forward-banner the index, unify the reading-rule labels, separate CONS-004/005 as "decided," and annotate the 3 draft-target AMEND records.
  4. Schedule the glossary addition (E0-L4) as part of any pointer-layer/terminology work, enumerating the stamp family and the Owner/Mức 3/Đ32 relationship.
  5. Independent of the above, Option D (scoped read-only Phase-1) remains the real gate to any future technical design (RISK-BYPASS / HOLD-1/2 / Đ39 runtime / Đ35 production-readiness verification) — unchanged by E0.
  6. Do not treat this PASS_WITH_MEDIUM_FINDINGS as authorization for anything. All findings are reports; a later, separate, Owner-gated patch workstream may act on them.

15. Non-authorization

This audit:

  • no patch: confirmed — nothing was edited or patched; the only KB write is the creation of this report under newlaws/reports/.
  • no current corpus: confirmed — none created or implied.
  • no adoption: confirmed — no note/amendment/rewrite adopted or enacted.
  • no technical design: confirmed.
  • no Phase-1: confirmed — no scoped runtime survey opened.
  • no runtime query: confirmed — no live DB/runtime query (no query_pg, pg_schema, Directus, or VPS access); all reads were AgentData KB reads.
  • no implementation: confirmed — no schema/table/registry/index/DOT/trigger.
  • no source law edit: confirmed — knowledge/dev/laws/, ssot/, architecture/ untouched.
  • no blocker resolved: confirmed — all carried blockers reported open; E0 resolves none.
  • no authority change: confirmed — CONS-004 authority order unchanged.
  • no v0.1 baseline change: confirmed — Tool-Kiem-Thu v0.1-stable / FIX7 V3 untouched.
  • no v0.2 promotion: confirmed — v0.2-hardening not promoted.

Folder policy: the only output is knowledge/dev/laws-new/newlaws/reports/workstream-e0-new-law-consistency-conflict-audit-2026-06-17.md. No file created under any forbidden path (laws/, laws-new/laws/, laws/newlaws/, any current/ variant, or any source-law/current-corpus path). No output leak.

Codex/GPT/Council PASS ≠ Owner authorization. Engineering PASS ≠ Authority PASS. Default disposition: HOLD.


16. Readiness for GPT / Codex review

Ready for GPT/Codex review: YES. E0 maps the full inventory, the 53-record matrix consistency, the authority/source/F0→FX/amendment-cross/terminology/blocker dimensions, the 24-reading hostile audit, the gap audit, and the all-new-vs-all-new doctrine matrix; it records 1 MEDIUM + 4 LOW + 3 INFO findings, all patch_now = no; and it changes, enacts, resolves, and authorizes nothing.

Recommended chain: GPT reviews E0 → (if accepted) Codex reviews E0 → on PASS/PASS_WITH_MEDIUM_FINDINGS, the Owner decides whether to open (a) a patch workstream for the E0 findings, (b) the Option B pointer-layer workstream (which would naturally absorb E0-M1/L1/L2/L3), and/or (c) the Option D scoped read-only Phase-1. If a reviewer re-scores E0-M1 to HIGH, the disposition becomes HOLD and the index patch should precede pointer-layer work.

Workstream E0 rev1 | 2026-06-17 | read-only · audit-only · non-authorizing | 28 artifacts audited · 53/53 records cross-checked · 24/24 hostile readings rejected · 1 MEDIUM + 4 LOW + 3 INFO | PASS_WITH_MEDIUM_FINDINGS | Codex PASS ≠ Owner authorization

Back to Knowledge Hub knowledge/dev/laws-new/newlaws/reports/workstream-e0-new-law-consistency-conflict-audit-2026-06-17.md