KB-994E rev 2

Phụ lục 02C0 Điều 38 — Legal Alignment & Law Gap Map (PASS)

13 min read Revision 2
dieu38tacphu-luc-02legal-alignmentpass

Legal Alignment & Law Gap Map

Phụ lục 02C0 Điều 38

Trạng thái: PASS — GPT review + User duyệt 2026-04-24 Mục đích: Map QĐ1–QĐ6 (02B) vào luật hiện hành. Chỉ ra: đã che phủ / cần clarify / cần amend / cần phụ lục mới. Không làm: Không viết amend chi tiết. Không thiết kế schema. Không kết luận "cứ làm rồi sửa luật sau".


QĐ1 — PG unit là đơn vị gốc

Unit đã ban hành không sửa đè — thay đổi qua version/change-set/amend path hợp pháp.

Luật Đã che phủ? Xung đột? Thiếu gì Hành động
Đ38 v3.0 §5 Một phần. normative_registry quản ở cấp document. sections JSONB lưu inline — chưa có unit riêng. Không xung đột, nhưng sections JSONB inline ≠ unit-centric model. Đ38 chưa định nghĩa "text unit" như đơn vị độc lập có lifecycle/version riêng. Chưa có addressing scheme chuẩn. Cần amend Đ38: bổ sung §5.x định nghĩa text unit, quan hệ document↔unit, addressing scheme. Hoặc viết phụ lục riêng.
Đ0-G (Birth) Một phần. Birth gate validate entities khi INSERT. Không xung đột. Đ0-G chưa bao gồm "text unit" trong scope birth gate. Chưa có species 'text_unit'. Cần mở rộng Đ0-G: thêm text_unit vào scope, hoặc amend để birth gate áp dụng cho mọi species (generic).
Đ4 (Lifecycle) Có. draft→active→deprecated→retired. Không xung đột. Unit lifecycle = subset of entity lifecycle. Đ4 nói lifecycle cho entity nói chung — áp dụng trực tiếp cho text unit, không cần sửa. Dùng nguyên. Lifecycle text unit tuân thủ Đ4.
Đ29 (Species) Có. 33 species quản phân loại. Không xung đột. Chưa có species 'text_unit'. INSERT species mới theo cơ chế mở rộng species đã enacted trong Đ29 (33 species hiện tại đều được thêm bằng data operation). Nếu cần xác nhận, ghi rõ căn cứ Đ29 cho phép tại bước triển khai.
Đ32 (Approval) Một phần. Approval ở cấp document (normative_registry). Không xung đột trực tiếp, nhưng QĐ6 nói review theo unit → cần clarify Đ32 có cho phép approval ở cấp unit không. Đ32 chưa nói rõ granularity approval (document-level hay unit-level). Cần clarify Đ32: thêm điều khoản cho phép approval ở cấp unit/change-set bên cạnh document-level.
HP NT1 (SSOT) Có. PG unit là SSOT. Không xung đột. Tuân thủ.
HP NT13 (PG First) Có. Unit trong PG. Không xung đột. Tuân thủ.
HP NT14 (Triển khai được) Chưa đủ. 02B chốt approach, chưa đủ chi tiết để triển khai. Bước C1 phải cung cấp đủ chi tiết cho NT14. Bổ sung ở C1.

QĐ2 — Vector là projection của PG unit

Luật Đã che phủ? Xung đột? Thiếu gì Hành động
Đ39 §8.1 Có. PG16 SSOT + Qdrant vectors. Sync PG→Qdrant. Không xung đột. Đ39 đã chốt vector = retrieval, PG = truth. Đ39 nói vector cho KG entity, chưa nói vector cho text unit cụ thể. Cần clarify Đ39: text unit vector tuân thủ cùng pipeline Đ39 hay tách riêng? Khuyến nghị: cùng pipeline, khác collection Qdrant.
HP NT13 Có. PG first, vector secondary. Không xung đột. Tuân thủ.
Đ43 §context pack Một phần. Context pack tự sinh từ PG data. Không xung đột. Đ43 chưa nói text unit là input cho context pack. Xem xét amend Đ43 nếu context pack nên include text unit machine view. Không urgent.

QĐ3 — Metadata có core schema + profile

Luật Đã che phủ? Xung đột? Thiếu gì Hành động
Đ0-G (Birth) Một phần. Birth gate validate metadata lúc INSERT. Không xung đột. Đ0-G validate metadata cho entity nói chung. Chưa có "core schema + profile" concept. Chưa rõ field nào bắt buộc cho text unit vs entity thường. Cần mở rộng Đ0-G hoặc viết phụ lục: định nghĩa core schema bắt buộc cho text unit, profile schema theo loại VB.
Fix 27-28 (Description Governance) Pattern proven. 42 triggers, 3 helpers, 10 templates. Không xung đột. Description Governance là 1 field (description). Metadata governance cho text unit = nhiều fields + profile + field responsibility. Cần mở rộng pattern, không chỉ reuse. Dùng pattern, mở rộng scope.
Đ22 (Self-healing) Một phần. Health check kiểm metadata completeness/correctness. Không xung đột. Đ22 chưa có health check cho text unit metadata quality. Cần thêm health checks cho text unit metadata ở bước triển khai (không cần amend Đ22 — chỉ INSERT system_health_checks).
Đ35 (DOT) Có. DOT paired check. Không xung đột. Chưa có DOT domain cho text unit metadata. Cần thêm DOT domain = INSERT dot_domains. Thao tác data, không cần amend Đ35.
HP NT11 (Khai tối thiểu) Có. Chỉ khai cái PG chưa biết. Rủi ro: metadata profile nếu thiết kế không cẩn thận → khai thừa → vi phạm NT11. Profile phải chỉ chứa thông tin PG không tự biết. Guardrail khi thiết kế C2: mỗi field trong profile phải justify "PG không tự biết cái này".
HP NT14 Chưa đủ. Chưa rõ field responsibility cụ thể. Bước C2 phải trả lời đủ 6 câu NT14 cho metadata. Bổ sung ở C2.

QĐ4 — Component / BOM là mô hình reuse

Luật Đã che phủ? Xung đột? Thiếu gì Hành động
Đ38 v3.0 Không. Đ38 hiện chỉ nói document + sections + binding. Chưa có concept "component" hay "BOM". Không xung đột (thiếu, không xung). Đ38 chưa có: component definition, BOM structure, reuse policy, compatibility, golden path. Cần amend Đ38 lớn hoặc viết phụ lục riêng cho component/BOM. Khuyến nghị: phụ lục riêng vì scope lớn.
Đ29 (Species) Một phần. 33 species hiện tại không có 'component'. Không xung đột. Chưa có species 'component'. INSERT species mới theo cơ chế đã enacted trong Đ29.
Đ0-G (Birth) Pattern áp dụng. Không xung đột. Birth gate cho component cần validate khác entity thường (spec, interface, compatible_species). Mở rộng birth gate cho species 'component'.
HP NT8 (Assembly First) Có. Component/BOM = tinh thần Assembly First. Không xung đột — ngược lại, rất phù hợp. Tuân thủ mạnh. QĐ4 là hiện thực hóa NT8 cho text domain.
Đ39 C13 (Negative Knowledge) Có. Anti-pattern quản trong KG. Không xung đột. Component anti-pattern nên feed vào Đ39 pipeline. Liên kết ở bước C4. Không cần amend Đ39.

QĐ5 — Hot path PG, enrichment async

Luật Đã che phủ? Xung đột? Thiếu gì Hành động
Đ33 (PostgreSQL) Có. PG First, PG Native, PG Driven. Không xung đột. Đ33 chưa nói cụ thể hot/cold path cho text unit operations. Không cần amend Đ33. Hot/cold là implementation detail trong scope Đ33 đã cho phép.
Đ43 context pack Một phần. Context pack đã dùng binding pattern (hot: PG trigger, cold: daily DOT). Không xung đột. Pattern đã proven ở Đ43. Mở rộng cho text unit tự nhiên. Dùng pattern.
Đ39 §8.1 Có. PG→Qdrant sync. Không xung đột. Vector sync cho text unit = mở rộng pipeline Đ39. Liên kết ở bước C5.
HP NT13 Có. Không xung đột. Tuân thủ.

QĐ6 — Review theo unit + change-set

Luật Đã che phủ? Xung đột? Thiếu gì Hành động
Đ32 (Approval) Một phần. Đ32 nói approval ở cấp document + quorum. Rủi ro clarify: Đ32 hiện assume approval = cấp document. Unit-level review có thể cần luật bổ sung hoặc clarify. Đ32 chưa nói: (1) review gắn vào unit, (2) change-set approval, (3) tổng hợp unit reviews → document approval. Cần clarify/amend Đ32: thêm granularity cho unit-level review. Có thể là phụ lục Đ32 hoặc amend §approval_scope.
Đ4 (Lifecycle) Có. Version/amend path cho enacted entities. Không xung đột. Unit enacted → tạo version mới = đúng Đ4. Tuân thủ.

TỔNG HỢP

Làm được ngay (không cần sửa luật)

Hành động Cơ sở
INSERT species 'text_unit', 'component' vào entity_species Đ29 cho phép mở rộng species theo cơ chế đã enacted
INSERT DOT domains mới vào dot_domains Đ35 cho phép đăng ký domain mới
INSERT health checks mới vào system_health_checks Đ22 cho phép mở rộng
Dùng Đ4 lifecycle nguyên vẹn cho text unit và component Đ4 là generic
Dùng birth gate pattern đã proven (Fix 27-28) làm cơ sở thiết kế cho text unit; phần áp dụng chính thức phải bám Đ0-G mở rộng Pattern, áp dụng chính thức theo Đ0-G
Dùng binding_registry cho text↔code traceability Đ38 đã enacted
Dùng universal_edges cho ref chéo Đã live
Hot/cold path trong scope Đ33 đã cho phép Đ33 PG First

Cần clarify/amend (phải xử lý TRƯỚC khi thiết kế chi tiết)

Luật Cần gì Mức độ Ghi chú
Đ38 Amend §5 hoặc phụ lục: định nghĩa text unit, addressing, document↔unit relationship LỚN Đây là amend lớn nhất. Nên viết phụ lục riêng.
Đ38 Amend hoặc phụ lục: component, BOM, reuse policy LỚN Scope lớn — khuyến nghị phụ lục riêng.
Đ0-G Mở rộng birth gate scope cho text_unit + component TRUNG BÌNH Có thể amend §scope hoặc thêm phụ lục birth gate mở rộng.
Đ32 Clarify granularity approval: unit-level review + change-set approval NHỎ-TRUNG BÌNH Thêm 1 điều khoản hoặc phụ lục ngắn.

Cần liên kết (không cần sửa luật, chỉ align ở bước thiết kế)

Luật Liên kết gì Khi nào
Đ39 Text unit vector pipeline = mở rộng Đ39 DOT-KG-SIMILARITY Bước C5
Đ43 Context pack include text unit machine view Bước C6
Đ39 C13 Component anti-pattern feed vào negative knowledge Bước C4
Đ43 Tái sử dụng có chọn lọc các pattern đã proven: context pack, governance seed/verify, health threshold/checksum, issue logging, self-healing/re-check loop. Không reuse nguyên trạng description governance — chỉ lấy pattern birth gate/trigger/checker và bài học thiết kế. Rà ở C1–C2, xác nhận phạm vi reuse chi tiết trước design

Chưa đủ căn cứ pháp lý (cần viết luật/phụ lục mới)

Bài toán Thiếu gì Hành động
Metadata governance package (core schema + profile + field responsibility) Chưa có luật nào định nghĩa "metadata schema chuẩn cho text unit", "profile theo loại VB", "field responsibility matrix" Cần phụ lục metadata governance — có thể gắn vào Đ0-G hoặc Đ38. BLOCKER: Không được chuyển từ concept metadata sang schema metadata khi chưa có phụ lục này che phủ.
Component/BOM governance Chưa có luật cho: component lifecycle governance, BOM integrity, reuse enforcement, compatibility rules Cần phụ lục component governance — gắn vào Đ38 hoặc viết luật mới. BLOCKER: Component/BOM không chỉ là pattern kỹ thuật; đây là cơ chế governance mới, không đủ căn cứ nếu chỉ dựa vào practice hoặc config.

THỨ TỰ HÀNH ĐỘNG PHÁP LÝ

Ưu tiên Hành động Lý do
1 Data ops: INSERT species, DOT domains, health checks Không cần luật. Chỉ là data. Làm ngay khi triển khai.
2 Clarify Đ32 granularity approval Nhỏ nhất. Unblock QĐ6 cho thiết kế C1.
3 Amend/phụ lục Đ38 cho text unit Lớn nhất nhưng cần sớm nhất — C1 phụ thuộc vào định nghĩa text unit.
4 Mở rộng Đ0-G birth gate cho text_unit + component Phụ thuộc species mới (đã INSERT ở bước 1).
5 Phụ lục metadata governance Cần trước C2.
6 Phụ lục component/BOM governance Cần trước C3.

Nguyên tắc: Không thiết kế chi tiết (C1–C7) khi luật chưa che phủ. Viết/amend luật trước, thiết kế sau. Concept model được phép chạy song song với soạn luật để làm rõ khái niệm và phạm vi. Nhưng mọi quyết định chuyển thành schema, trigger, DOT, write path, migration hoặc implementation detail đều phải chờ luật/phụ lục che phủ xong.

Đánh giá xung đột: Chưa phát hiện xung đột trực tiếp ở mức concept; chủ yếu là thiếu che phủ hoặc cần mở rộng/clarify.


PASS 2026-04-24 | 02C0 Legal Alignment | 6 QĐ × luật | GPT review + 6 chỉnh áp dụng | User duyệt