KB-5182 rev 2

Handoff S177 Fix 8 — Đ35 v5.1 FINAL BAN HÀNH + Post-merge TODO

9 min read Revision 2
handoffsessions177fix8dieu35-v5.1-finalpost-merge-todo

HANDOFF S177 Fix 8 → Phiên sau

Phiên đóng: 2026-04-14 S177 Fix 8 Trạng thái: Đ35 v5.1 FINAL ĐÃ BAN HÀNH trên KB. Council 2 vòng DONE. 0 blocker.


§1. Tóm tắt 1 câu

Đ35 v5.1 FINAL BAN HÀNH chính thức 2026-04-14 sau Council 2 vòng (R1: Gemini 9/10 + GPT 8.3/10 APPROVE WITH CHANGES → fix 5 blocker; R2: Gemini 9.8/10 APPROVE FINAL + GPT 9.1/10 APPROVE WITH MINOR → apply 7 fix inline). File chính knowledge/dev/laws/dieu35-dot-governance-law.md đã được overwrite từ v5.0 → v5.1 FINAL. File draft đánh dấu SUPERSEDED. Backup v5.0 giữ ở file riêng. HP cập nhật v4.5.1 → v4.5.2.


§2. Quyết định kỹ thuật CỤ THỂ đã chốt

# Quyết định Vị trí trong luật
1 dot_tools 11 fields (thêm _dot_origin NOT NULL DEFAULT 'unknown') §4.1
2 dot_config.value nullable (cho phép seed law_v5_1_enacted_at=NULL) §4.4
3 18 operations trong dot_operations (9 cũ + 9 mới từ CLI S177 C6) §4.1
4 fn_is_in_grace_period() SECDEF + SET search_path + fail-open §4.1B
5 fn_log_issue() signature = md5(source|category|entity) — BỎ severity §4.1B
6 fn_birth_gate configurable mode qua dot_config.birth_gate_mode §8.3
7 14 health checks (H1-H14) — H14 mới bắt grace_never_set §8.1
8 4 DOT tự quản trị — dot-metadata-repair MỚI (cron 1h) §8
9 §5.1 infer fail = CẤM POST partial row (chống RC-4 lặp lại) §5.1
10 BLOCK 4 checklist 13 bước (4.0 snapshot → 4.13 cleanup) §9.2
11 §11 Retrofit clause — áp cả luật mới lẫn đã ban hành §11
12 4 tiêu chí cứng warn → block (0 drift 3 ngày + 0 dup + repair LIVE + H10-14 PASS) §10

§3. File đã cập nhật trên KB

Path Thao tác Revision cuối
knowledge/dev/laws/dieu35-dot-governance-law.md Overwrite v5.0 → v5.1 FINAL 2
knowledge/dev/laws/dieu35-dot-governance-law-v5-0-backup.md Tạo mới (AP-21 backup) 1
knowledge/dev/laws/dieu35-dot-governance-law-v5-1-draft.md Đánh dấu SUPERSEDED (giữ trace Council) 11
knowledge/dev/laws/constitution.md Patch mục lục Đ35 v5.0 → v5.1 + changelog v4.5.2 17
knowledge/current-state/reports/council-review-dieu35-v5-1-gemini-round1.md Đã có (Gemini R1)
knowledge/current-state/reports/council-review-dieu35-v5-1-gpt-round1.md Đã có (GPT R1)
knowledge/current-state/reports/council-review-dieu35-v5-1-gemini-round2.md Đã có (Gemini R2)
knowledge/current-state/reports/council-review-dieu35-v5-1-gpt-round2.md Đã có (GPT R2)
knowledge/current-state/prompts/council-prompt-dieu35-v5-1-round2.md Đã có

§4. POST-MERGE TODO — phiên sau làm ngay theo thứ tự

CẤP BÁCH: Luật ban hành trên KB nhưng VPS chưa chạy gì. 272 DOT vẫn vênh. Phải triển khai.

# Việc Ưu tiên Phụ thuộc
T1 Tạo file knowledge/current-state/retrofit-audit-tracker.md — tracker 5 luật cần amend retrofit (Đ36/37/38/39/41) theo §11.4. Theo Council R2: ưu tiên xếp hạng Đ36 > Đ37 > Đ39 > Đ38 > Đ41 CRITICAL Không
T2 dot-dot-register script trên VPS: payload POST phải đủ 11 fields (§5.1) + infer logic (naming convention + file_path content + dot_config) + CẤM POST partial row (infer fail → APR) CRITICAL Không
T3 BẬT Directus flow [AUTO-ID] DOT Tools ACTIVE (lưới đỡ phụ giai đoạn warn) CRITICAL Không
T4 Tạo DOT mới dot-metadata-repair (Tier B, cron 0 * * * *, paired dot-dot-health) HIGH T2
T5 Chạy BLOCK 4 checklist §9.2 — 13 bước từ 4.0 snapshot → 4.13 cleanup. Ước tính 1-2 ngày (bao gồm 24h observation) CRITICAL T2 + T3 + T4
T6 Sau BLOCK 4 PASS: UPDATE dot_config SET value=to_char(NOW() AT TIME ZONE 'UTC','...') WHERE key='law_v5_1_enacted_at' CRITICAL T5 PASS
T7 Amend OR soạn luật v1.0 → v1.1: checklist "Prompt bootstrap đối chiếu §4+§9, ghi TÊN không chỉ số" (Gap-1 §10.1 Phụ lục Đ41) HIGH Không
T8 Thêm AP-22 vào anti-patterns.md: "Đếm số không đo tên" (handoff ghi N artifact không kèm danh sách tên = anti-pattern) HIGH Không
T9 Update Skill Handoff v7: bắt buộc ghi TÊN khi ghi N artifact. Lint DOT scan regex "N tables/DOT/files" không kèm tên MEDIUM T8
T10 Kick DOT_BIRTH_BACKFILL + DOT_METADATA_AUDIT + DOT_METADATA_FILL (6 DOT birth-related đang last_executed=NULL — chưa chạy) CRITICAL T5
T11 Audit chéo 5 luật Đ36/37/38/39/41: luật nào tác động bảng có data cũ + chưa có §retrofit → mở amend (§11.4) HIGH T1
T12 TD-KB-OWNER-DRIFT — 3 bảng kb_documents/_history/audit_log owner đang là incomex thay vì workflow_admin. Fix: 1 lệnh ALTER TABLE ... OWNER TO workflow_admin MEDIUM Không

§5. Phiên mới mở bằng

search_knowledge("handoff s177 fix 8 dieu35 v5.1 FINAL BAN HÀNH")
search_knowledge("post-merge TODO dieu35 v5.1 retrofit")
recent_chats(n=3)

Rồi đọc:

  • knowledge/dev/laws/dieu35-dot-governance-law.md (v5.1 FINAL — luật hiện hành)
  • knowledge/dev/laws/dieu41-phu-luc-ke-hoach-trien-khai.md §13.5 (14 TODO triển khai — QUAN TRỌNG NHẤT)
  • Handoff này

§5.1 — ★ VIỆC ĐẦU TIÊN PHIÊN SAU (không nhảy)

Chiến lược T1-T7 song song (2-4h công việc văn bản, không đụng VPS):

Phiên sau bắt đầu bằng T5-T6-T7 đầu tiên (amend OR + AP-22 + Skill v7) vì đây là điều kiện cần cho các TODO sau — agent CLI khi vá dot-dot-register (T2) cần đọc OR v1.1 mới.

Thứ tự cụ thể:

  1. T5 Amend OR v1.0 → v1.1 (30 phút): thêm checklist Gap-1 vào operating-rules-law-drafting.md
  2. T6 AP-22 + mở rộng AP-19 (15 phút): patch anti-patterns.md
  3. T7 Skill Handoff v7 update (20 phút): bắt buộc ghi TÊN khi ghi N artifact
  4. T1 Tạo retrofit-audit-tracker.md (20 phút): tracker 5 luật
  5. T2 + T3 + T4 — soạn prompt giao CLI (30 phút soạn, CLI chạy ~1 giờ): vá dot-dot-register + BẬT flow [AUTO-ID] + tạo dot-metadata-repair DOT
  6. T8 BLOCK 4 — soạn prompt giao CLI chạy (1-2 ngày bao gồm 24h observation): 13 bước từ 4.0 snapshot → 4.13 cleanup
  7. T9-T14: kèm sau T8

Lý do chọn thứ tự T5-T7 trước: văn bản framework (OR/AP/Skill) là điều kiện cần cho agent CLI. Nếu vá dot-dot-register trước mà chưa có OR v1.1 + AP-22, agent CLI có thể lặp lại anti-pattern mà không nhận ra.

§5.2 — Prompt mẫu cho CLI T2 (vá dot-dot-register)

Không soạn trong handoff này — để phiên sau Desktop soạn tại thời điểm. Nhưng lưu ý cấu trúc:

  • CHECKPOINT đầu prompt (đọc Đ35 v5.1 §5.1 + §5.2, OR v1.1, AP-22)
  • PRECHECK: SSH alias contabo, DB directus cho dot_tools (không phải incomex_metadata)
  • CONSTRAINT: CẤM POST partial row (Đ35 v5.1 §5.1)
  • DELIVERABLE: script mới + unit test local + dry-run output + KHÔNG push cho đến Desktop duyệt

§6. Sai lầm + bài học phiên này

Sai Gốc Biện pháp
Rev 1 viện dẫn NT12+NT13 sai (HP v4.5.1 chỉ có 11 NT) Không verify HP trước khi viết draft Memory #12: Mọi quyết định đọc lại luật trước. Đã verify trực tiếp constitution.md lần R2.
Rev 2 dot_config.value NOT NULL nhưng seed law_v5_1_enacted_at=NULL → migration sẽ fail ngay câu đầu SQL chưa chạy dry-run mentaly — copy structure v5.0 quên điều chỉnh semantic v5.1 GPT R2 bắt đúng. Bài học: mọi SQL migration trong luật phải mental-execute dry-run
Rev 2 fn_log_issue signature có severity → warning→critical đẻ 2 row song song Chưa đối chiếu với Đ31 severity escalation model GPT R2 bắt đúng. Bài học: signature dedupe phải tính escalation pattern
Rev 2 đã fix rất nhiều nhưng chưa precheck dedupe system_issues trước CREATE INDEX — lặp lại đúng bài B4 Học bài B4 cho dot_tools.file_path nhưng không áp sang system_issues GPT R2 bắt đúng. Bài học: mỗi CREATE UNIQUE INDEX BẮT BUỘC kèm preflight dedupe

§7. Tài liệu tham chiếu

  • Luật hiện hành: knowledge/dev/laws/dieu35-dot-governance-law.md rev 2
  • Backup v5.0: knowledge/dev/laws/dieu35-dot-governance-law-v5-0-backup.md rev 1
  • Draft trace Council: knowledge/dev/laws/dieu35-dot-governance-law-v5-1-draft.md rev 11 (SUPERSEDED)
  • HP: knowledge/dev/laws/constitution.md rev 17 (v4.5.2)
  • Phụ lục điều tra: knowledge/dev/laws/dieu41-phu-luc-ke-hoach-trien-khai.md
  • Council reports R1: knowledge/current-state/reports/council-review-dieu35-v5-1-{gemini,gpt}-round1.md
  • Council reports R2: knowledge/current-state/reports/council-review-dieu35-v5-1-{gemini,gpt}-round2.md
  • Council prompt R2: knowledge/current-state/prompts/council-prompt-dieu35-v5-1-round2.md

Handoff S177 Fix 8 | Claude Desktop | 2026-04-14 Đ35 v5.1 FINAL BAN HÀNH. 0 blocker. Sẵn sàng triển khai theo §4 TODO.