KB-E997

03 — Law Cross-Check Matrix (4-angle)

5 min read Revision 1
architecturesecond-passlawscross-checknormative-registrylaw-catalog

03 — Law Cross-Check Matrix

Each mandatory law cross-checked from 4 angles: (A) KB search, (B) normative_registry live, (C) law_catalog live, (D) prior reports/handoffs. Columns: KB? · NRM? · LC? · status · first-pass captured? · missed content.

Legend: NRM = normative_registry; LC = law_catalog; ✓ present, — absent.

# Law KB NRM LC Status 1st-pass captured Missed / note
1 HP Constitution NRM-CON-HP-V4P6P3 (v4.6.3 enacted; v4.6.2 retired) enacted yes
2 Đ0-G Birth NRM-LAW-00G v1.0 (dieu28 row mislabels "Khai Sinh"→birth) enacted yes LC mislabel = Đ0-G content tagged as dieu28
3 Đ23 DOT Scanning dot-scanning-system.md (rev4; header v2.0 / first pass said v2.1) enacted/frozen (KB) yes (flagged absent) minor version label drift v2.0↔v2.1
4 Đ26 Pivot/Đếm NRM-LAW-26 v4.0 dieu26 "Luật Đếm" v2.1.1→meta_catalog enacted yes LC version v2.1.1 vs NRM v4.0 (drift)
5 Đ28 Display/Nuxt NRM-LAW-28 v2.0 ✓(MISLABELED "Luật Khai Sinh" v1.0→birth_registry) enacted yes LC dieu28 row is wrong law
6 Đ30 Rollback NRM-LAW-30 v1.2 dieu30 v1.0 enacted yes LC v1.0 vs NRM v1.2 (drift)
7 Đ31 Integrity NRM-LAW-31 v1.2 dieu31 v1.3→system_issues enacted yes LC v1.3 vs NRM v1.2 (drift, opposite direction)
8 Đ35 DOT Governance ✓ v5.2 FINAL (S178 Fix15) NRM-LAW-35-V5P2 (base 35 retired) enacted yes origin report S178 not cited (doc 10)
9 Đ36 Collection ✓ v5.0 DRAFT 30% (v4.0 enacted) NRM-LAW-36 v4.0 enacted v4.0 yes
10 Đ37 Governance Org ✓ v3.3 (S165 restored 2,297→15,148 chars) NRM-LAW-37 v3.3 enacted yes S165 restore + Đ37-bootstrap not cited
11 Đ38 Normative/IU ✓ v2.3 NRM-LAW-38 v2.3 enacted yes S164 (14 DOT) / S150+ bootstrap not cited
12 Đ39 KG ✓ v2.3 NRM-LAW-39 v2.3 enacted yes
13 Đ43 System Context ✓ v1.2 FINAL NRM-LAW-43 v1.2 enacted yes
14 Đ44 IU profile/schema ✓ design pack (v0.1.2 controlled DRAFT) DRAFT (not enacted) yes (flagged absent, correctly)
15 Đ45 Event/Queue ✓ v1.0 BAN HÀNH 2026-05-26 (enactment_approved=true) enacted yes (flagged absent) enacted law invisible to PG law-queries

Cross-check conclusions

  1. 15/15 mandatory laws independently re-located. No mandatory law silently missing. First-pass law index = verified.
  2. Three laws enacted/active but NOT in normative_registry: Đ23 (frozen), Đ45 (enacted 2026-05-26), Đ44 (controlled DRAFT — correctly absent). Anyone SELECT … FROM normative_registry WHERE status='enacted' silently misses Đ23 and Đ45. → RECONCILE (doc 11).
  3. law_catalog (5 rows) is stale AND wrong — not merely "version drift": its dieu28 row maps article 28 (Display/Nuxt) to birth_registry with name "Luật Khai Sinh" (that is Đ0-G). Citing law_catalog for law metadata is unsafe. → DEPRECATE / RECONCILE; treat normative_registry as the single law-metadata SoT.
  4. Articles never registered (beyond mandatory): 20, 21, 25, 27, 40, 42. Not on the mandatory list; flagged for completeness only — may be unallocated/reserved numbers. No evidence they are enacted-but-hidden.

Angle-D (prior reports) law provenance — newly surfaced this pass

  • Đ37 v3.3 was restored in S165 (KB integrity check; 12 TĐ confirmed). Đ37/38 bootstrap (S150+, OR v7.35): normative_registry grew 39→47 articles; bootstrap trigger gate. Đ38 got 14 normative DOTs in S164 (DOT total 265 then → 309 now). Đ35 v5.2 came from S178 DOT Repair Governance (Council 9.2/10). S165-KB restored cut Đ35/Đ36 files and established the reference-table/config-table anti-hardcode pattern. None of these change the 15-law set; they are the history behind already-captured laws and are logged here so the provenance is not forgotten.
Back to Knowledge Hub knowledge/dev/reports/architecture/law-capability-discovery-second-pass-cross-check-2026-05-30/03-law-cross-check-matrix.md