KB-3E96

Codex Review - Đ38/Đ39 Text as Code v6 Alignment - 2026-04-24

9 min read Revision 1
codextext-as-code-v6dieu38dieu39legal-architecture

Báo cáo rà soát Đ38, Đ39 và luật nền theo Text as Code v6

  • Ngày: 2026-04-24
  • Agent: Codex
  • Nguồn: VPS SSOT contabo, DB directus, bảng knowledge_documents và governance tables trong DB directus
  • Phạm vi: rà soát và đề xuất patch; không enact; không sửa trực tiếp luật enacted

1. Cách đọc và nguồn

Tôi không dùng local làm SSOT. Tôi kiểm tra trên VPS: current_database=directus, current_user=directus. Governance/law/KB tables đọc từ DB directus, không đọc incomex_metadata.

Tài liệu đã đọc: 4 report nền ngày 2026-04-23; Hiến pháp v4.6.3; Điều 1; Đ32, Đ33, Đ35, Đ37, Đ38, Đ39, Đ41, Đ43; NĐ-36-01; Assembly Module SSOT. Các DB id chính: HP 945, Đ1 936, Đ32 1085, Đ33 1086, Đ35 1088, Đ37 1089, Đ38 1090, Đ39 1015, Đ41 1317, Đ43 1245, NĐ36 1091.

2. Bảng đối chiếu 4 cột

Hướng v6 muốn gì Hiến pháp nói gì Đ38/Đ39 hiện nói gì Kết luận
Text -> Code -> Workflow -> Knowledge NT6/NT10/NT13/NT14 bắt PG truth, 5 tầng, PG-driven, triển khai được Đ38 chia thẻ/binding; Đ39 Data -> Graph -> KG -> Priority Khớp, nhưng cần ghi rõ đây là trục nghiệp vụ dưới 5 tầng, không phải kiến trúc song song
Text as Code không phải text sinh code tự do NT9 không chắc = sai; NT10 PG truth Đ38 chưa nói đủ về machine semantics và giới hạn sinh code/config Thiếu; cần amend Đ38
Mọi văn bản quản trị HP không bó hẹp pháp quy Đ38 viết “mọi văn bản pháp quy” rồi liệt kê policy/quy định Vênh wording; cần scope-amendment
SSOT Catalog + Component Registry + Reuse Governance NT1/NT8/NT11/NT13 ủng hộ reuse và PG-driven Đ38 chưa có component/BOM/compat/golden path; Đ39 không phải registry Thiếu ở Đ38
BOM, traceability, lifecycle, compatibility, variant NT8 Assembly First; NT12 paired-check Đ38 có lifecycle/binding nhưng chưa có BOM/compat/variant/golden path Cần bổ sung Đ38
Registry không khai lại PG catalog NT11 rất rõ Đ38 chưa khóa; Đ39 có chống duplicate ontology Cần anti-dup clause ở Đ38
Workflow trace không tự thành truth NT9/NT10 Đ39 có provenance/authority nhưng một số câu dễ đọc rộng Cần clarification Đ39
KG không thay workflow engine NT1 chống trùng vai Đ39 C5 đã cấm routing/retry/error handling Khớp, thêm §0 clarification để chắc hơn
Knowledge proposal không mặc định truth NT9; Đ39 nguyên tắc vàng Đ39 có kg_auto_approve_rules, nhưng “ABox thường AI tự thực hiện” dễ hiểu rộng Cần wording rõ hơn
NT12 paired architecture HP/Đ1/Đ35 rất rõ Đ39 có 36 DOT/18 cặp; Đ38 chưa nêu cặp cho binding/render/BOM Thiếu ở Đ38
NT14 executable bridge HP/Đ1 có 6 câu hỏi Đ38 v3.0 còn “chi tiết sẽ cập nhật” Cần thêm gate NT14 trong Đ38

3. Kết luận chính

Hướng v6 khớp Hiến pháp. Không cần amend semantic Hiến pháp. NT11, NT12, NT13, NT14 đã đủ để chống duplicate registry, bắt paired-check, PG-driven và khả thi triển khai.

Blocker chính là Đ38: file current knowledge/dev/laws/dieu38-normative-document-law.md là v3.0 DRAFT, nhưng Hiến pháp/normative_registry vẫn coi Đ38 v2.3 là enacted. Không được xem file current này là law enacted. Cần status clarification trước vòng v6.

Đ39 v2.3 nhìn chung đúng: có provenance, source authority, temporal, negative knowledge, TBox/ABox, auto/manual rules, ranh giới với Đ34. Tuy nhiên cần khóa wording để không ai hiểu KG là workflow engine, workflow trace là truth, hoặc KG là Component Registry.

Đ32/33/35/37/41/43 nhìn chung mở đường được. Điểm cần chỉnh thật sự là Đ33: thực tế phiên này và nhắc lại của Chủ tịch cho thấy runtime DB user cho directusdirectus, governance tables nằm trong DB directus, không phải incomex_metadata. Đ33 §14.2 còn ghi PG_USER_DIRECTUS=workflow_admin; nên clarify tách DB owner/admin role với runtime/application user.

4. Patch cụ thể

# File Patch Mục đích Loại
1 knowledge/dev/laws/dieu38-normative-document-law.md Thêm block trạng thái: v3.x là DRAFT, không thay Đ38 enacted nếu chưa qua Đ32/Đ37/normative_registry Chặn nhầm draft thành luật clarification-only
2 Đ38 MT1 đổi “mọi văn bản pháp quy” -> “mọi văn bản quản trị có hiệu lực vận hành” Mở scope đúng v6 scope-amendment
3 Đ38 Thêm § Text as Code != LLM sinh code tự do Khóa boundary wording-amendment
4 Đ38 Thêm 4 lớp atom: human_text, machine_semantics, binding/provenance/effectivity, render_view Text đủ máy đọc và render không là SSOT wording-amendment
5 Đ38 Thêm SSOT Catalog + Component Registry + Reuse Governance + BOM/compat/variant/golden path/traceability Trụ cột v6 wording-amendment
6 Đ38 Thêm NT11 clause: Registry/Catalog chỉ khai phần PG không tự biết Tránh duplicate PG catalog cross-law-alignment
7 Đ38 Thêm paired-check cho atomize/binding/render/BOM/compat/trace Áp NT12 cross-law-alignment
8 Đ38 Thêm NT14 handoff: data, writer, checker, trigger, validation, failure handling Khả thi thiết kế cross-law-alignment
9 knowledge/dev/laws/dieu39-knowledge-graph-law.md Thêm §0.1 ranh giới Workflow/KG/Registry/truth promotion Chống hiểu lệch clarification-only
10 Đ39 Sửa B2 “KG+AI thay workflow cứng” -> “KG+AI đề xuất/ưu tiên; workflow engine thực thi choreography” KG không thay engine wording-amendment
11 Đ39 Sửa C1 “Đ38 -> AI graph hóa” -> “Đ38 annotation/binding đã validate -> DOT scaffold; AI chỉ propose” Proposal vs truth wording-amendment
12 Đ39 Sửa §7B ABox thường: AI/DOT chỉ auto trong kg_auto_approve_rules, có provenance/authority/validation Chặn proposal thành truth clarification-only
13 knowledge/dev/laws/constitution.md Corrective: “13 nguyên tắc” -> “14 nguyên tắc”; optional note runtime user vs owner Dọn mismatch, không đổi nguyên tắc constitution-touch / clarification-only
14 knowledge/dev/laws/law-01-foundation-principles.md Optional thêm ví dụ NT13: reuse_policy, compatibility_matrix, authority_model, golden_path, assembly_rules, routing metadata đều PG-driven Làm NT13 nổi rõ clarification-only
15 knowledge/dev/laws/dieu33-postgresql-law.md §14.2 đổi runtime Directus user sang directus, hoặc tách owner/admin workflow_admin với runtime user directus; ghi governance tables ở DB directus Khớp VPS SSOT cross-law-alignment
16 knowledge/dev/laws/dieu32-approval-law.md Trước khi enact v6, implement/clarify amend_law/law_clarification handler Hiện amend_law reserved/unimplemented cross-law-alignment
17 knowledge/dev/laws/dieu35-dot-governance-law.md Không sửa ngay; khi triển khai tạo DOT domain/pairs cho normative.text_code Đ35 đã đủ clarification-only
18 knowledge/dev/laws/dieu37-governance-organization-law.md Không sửa luật; seed jurisdiction/governance rows khi thiết kế Text-as-Code platform Đ37 đã đủ clarification-only
19 knowledge/dev/laws/dieu41-luat-van-hanh-ma-vps-v1.1.md Không sửa VPS SSOT/trace/rollback đã đủ no-change
20 knowledge/dev/laws/dieu43-system-context-law.md Optional add approved v6 design docs/pattern hẹp vào context pack sau khi được duyệt Giúp agent đọc đúng nền v6 cross-law-alignment optional

5. Draft đi kèm

Tạo draft riêng tại:

knowledge/dev/reports/draft-amend-clarification-d38-d39-text-as-code-v6-2026-04-24.md

Draft đó có câu chữ đề xuất cho Đ38, Đ39, Đ33, Đ32 và note Hiến pháp/Đ43.

6. Tự kiểm

  1. Có tạo kiến trúc song song với Hiến pháp không? Không. Text -> Code -> Workflow -> Knowledge được đặt dưới 5 tầng và PG truth.
  2. Có biến KG thành workflow engine không? Không. Patch Đ39 khóa routing/retry/error handling về workflow engine/Đ34.
  3. Có biến knowledge proposal thành truth mặc định không? Không. Promotion cần rule auto/manual + provenance + authority + validation.
  4. Có khiến Registry/Catalog khai lại PG catalog không? Không. Patch Đ38 thêm NT11 anti-dup.
  5. Có làm hẹp tầm nhìn để vừa luật cũ không? Không. Đề xuất mở Đ38 thay vì co v6.
  6. Có chỗ chưa đạt NT14 không? Có nếu giữ Đ38 hiện tại; patch đề xuất thêm NT14 handoff bắt buộc.
  7. Có đáng amend Hiến pháp không? Không cần amend semantic. Chỉ có corrective/clarification nếu dọn wording/runtime user.

7. Kết luận

Nên tiếp tục v6 nhưng không enact trên nền Đ38 lẫn trạng thái. Thứ tự đúng: chốt trạng thái Đ38, amend Đ38 về scope/Text-as-Code/component governance, clarify Đ39 boundary, dọn Đ33 runtime user, rồi mới thiết kế Normative Core/Component Registry/BOM theo NT14.