KB-1666

Handoff S178 Fix 23 — Sửa luật Đ43 Phase C + Triển khai Track A

4 min read Revision 1
handoffs178-fix23law-amendmentdieu43descriptionhealth-checkdynamic-co-phu

Handoff S178 Fix 23 → Phiên sau

Phiên: S178 Fix 23 | Ngày: 2026-04-21 Trọng tâm: Sửa luật phục vụ Đ43 Phase C (backfill description)


ĐÃ LÀM

Sửa luật — 5 luật sửa chui, Hội đồng 2 vòng APPROVE FINAL (Gemini 10 + GPT 9.4)

Luật Nội dung sửa File KB Rev
Đ3 +§2.1 quy cách description 4 tiêu chí machine-checkable (C1-C4). +§2.2 per entity type. +§2.3 classification=legacy. +§2.4 ngoại lệ backfill. +§3 notes. law-03-metadata.md rev 2
Đ35 +§4.1.1 DOT Description Contract (mục đích + trigger + paired, min 50) dieu35-dot-governance-law.md rev 7
Đ4 +§2.1 Birth Description Guard: fn_description_birth_guard(), governance_role policy axis, WARN/BLOCK, dual-trigger NT12, anti-gaming, btrim, per-table override law-04-birth-process.md rev 2
Đ24 +§X FAC-PROV facet + 3 labels (PROV-AI, PROV-HUMAN, PROV-DOT) label-law.md rev 2
Đ43 Sửa §9.1 thêm tham chiếu liên luật. +§9.2 đầu vào cho dán nhãn: §9.2.1 mapping 17 bảng, §9.2.2 sơ đồ luồng liên luật, §9.2.3 VIEW v_entity_full_classification, §9.2.4 quy trình backfill dieu43-system-context-law.md rev 40

Triển khai SQL — Agent CLI trên VPS

  • ✅ 3 dot_config keys seeded
  • ✅ FAC-PROV facet + 3 labels seeded
  • ✅ fn_description_birth_guard() created
  • ✅ 10/17 triggers gắn (mode warn)
  • ✅ VIEW v_entity_full_classification — 21 bảng, 2844 entity, 1314 missing desc (46%)
  • ⚠️ 7 trigger skip (4 bảng chưa đăng ký collection_registry, 1 locked, 1 observed, 1 thiếu cột)

Phát hiện cuối phiên — GỐC RỄ

3 tech debt (A: 4 bảng chưa đăng ký, B: PROV-* thiếu _dot_origin, C: dot_domains thiếu cột) → gốc rễ: động cơ phụ (health checks) scope quá hẹp — không tự phát hiện bảng chưa đăng ký, thiếu cột, thiếu trigger. Sửa tay/DOT = giải quyết triệu chứng, chưa giải quyết gốc.


PHIÊN SAU LÀM

Ưu tiên 1 — Mở rộng động cơ phụ (sửa luật trước, công cụ sau)

Hiến pháp yêu cầu tự động 100% + DOT cặp. Động cơ phụ phải TỰ PHÁT HIỆN + TỰ SỬA trên toàn hệ thống khi scale. Cần:

  1. Sửa luật (Đ22 hoặc Đ43 hoặc Đ36) — bổ sung 3 health check scope mới:

    • HC-REG: Bảng PG public chưa đăng ký collection_registry → cảnh báo CRITICAL
    • HC-SCHEMA: Bảng governed thiếu cột description → cảnh báo CRITICAL
    • HC-TRIGGER: Bảng governed có description nhưng chưa gắn trg_desc_guard → cảnh báo CRITICAL + auto-gắn
  2. Sửa công cụ — mở rộng DOT scanner/health để cover 3 HC mới. Đảm bảo auto-scale khi thêm bảng.

  3. Khi HC chạy lần đầu → tự phát hiện 3 TD hiện tại → DOT sửa chữa tự xử lý → 3 TD biến mất bằng cơ chế, không bằng tay.

Ưu tiên 2 — Roadmap backfill (sau khi động cơ phụ OK)

# Việc Trạng thái
1 Sửa luật Đ3+Đ4+Đ35+Đ24
2 Bổ sung Đ43 §9.2
3 Triển khai SQL ✅ cơ bản (10/17 trigger + VIEW)
3b Mở rộng động cơ phụ → tự fix 7 trigger skip ƯU TIÊN 1 phiên sau
4 Pilot batch 20-30 DOT description
5 Backfill diện rộng

TÀI LIỆU THAM CHIẾU

Tài liệu Path
Định hướng sửa luật (bản cuối) reports/dinh-huong-sua-luat-d43-phase-c.md
Dự thảo REV 3 FINAL reports/du-thao-sua-luat-track-a-d43-phase-c.md
Tổng hợp Hội đồng vòng 1 reports/council-synthesis-d43-phase-c-round1.md
Migration SQL /opt/incomex/migrations/dieu43-track-a-deploy.sql (394 dòng)

NGUYÊN TẮC GHI NHỚ

  • Luật thiếu → sửa luật trước, làm sau. Không tự sáng tác.
  • Sửa tay = vi phạm HP. Phải sửa để HỆ THỐNG tự làm (động cơ phụ).
  • Gốc rễ > triệu chứng. 3 TD là triệu chứng. Gốc = HC scope hẹp.
  • File lớn (34KB+) → giao agent CLI. Desktop chỉ sửa nhỏ.