KB-7396

S170-FINAL — Ghi nhận cần xử lý sau khi agent chạy xong

5 min read Revision 1
S170reviewĐ33vênhTD

S170-FINAL — Ghi nhận cần xử lý sau khi agent chạy xong

Ngày: 2026-04-04 | Context: Agent đang chạy prompt S170-FINAL (KB Protection v2 UPSERT) Prompt đã gửi: Phiên bản TRƯỚC khi phát hiện các vênh Điều 33


AGENT ĐANG CHẠY PROMPT NÀO?

Prompt cuối cùng đã paste: KB Protection v2 — UPSERT + REVOKE + dot-kb-verify update + OR DOT count. Prompt ĐÃ CÓ: backup trước migration, UPSERT thay INSERT, REVOKE DELETE/TRUNCATE, permission guard. Prompt CHƯA CÓ: đối chiếu Điều 33, DOT type classification, rename fields.


VIỆC CẦN LÀM SAU KHI AGENT HOÀN THÀNH

A. KIỂM TRA KẾT QUẢ AGENT

  1. Verify agent đã hoàn thành đúng các bước trong prompt
  2. Đọc report tại knowledge/current-state/reports/s170-final-kb-v2-report.md
  3. Kiểm tra AP-CLOSE: tracker + handoff + report đã update chưa

B. VÊNH VỚI ĐIỀU 33 — CẦN XỬ LÝ TIẾP

# Vênh Chi tiết Hành động
1 §2.2 Field naming snapshot_at trong kb_documents_history → §2.2 yêu cầu date_created. logged_at trong kb_audit_log → §2.2 yêu cầu date_created. Kiểm tra: agent có rename không (prompt có yêu cầu đối chiếu §2.2). Nếu chưa → prompt nhỏ rename columns + update trigger functions.
2 §2.2 id PK kb_documents dùng key TEXT PK, không có id serial PK theo §2.2. Infrastructure table ở DB riêng. TD-D33-INFRA-SCOPE: Đ33 cần bổ sung scope cho infrastructure tables. Không ảnh hưởng production.
3 §12.3 DOT types 3 DOT KB chưa có dot_type field: DOT_KB_PROTECT (type_2_auto), DOT_KB_VERIFY (type_2_auto), DOT_KB_RESTORE (type_1_approval). Prompt nhỏ: UPDATE dot_tools SET dot_type = '...' WHERE code IN (...). ~2 phút.
4 §6 REVOKE pattern Đ33 §6 chưa liệt kê REVOKE là guard pattern chuẩn. Chúng ta đang dùng REVOKE thành công. TD-D33-REVOKE-PATTERN: Bổ sung §6 khi Đ33 enacted.
5 §11 canonical_fields Chưa deploy (Đ33 draft). KB tables chưa đối chiếu. Không ảnh hưởng — xử lý khi Đ33 enacted.

C. TD MỚI PHÁT SINH

TD Mô tả Ưu tiên
TD-D33-INFRA-SCOPE Đ33 cần bổ sung: infrastructure tables (backup, audit, monitoring) ở DB riêng có thể dùng natural key, không bắt buộc id serial PK Thấp — khi Đ33 enacted
TD-D33-REVOKE-PATTERN Đ33 §6 cần bổ sung REVOKE DELETE/TRUNCATE là guard pattern chuẩn cho sensitive tables Thấp — khi Đ33 enacted
TD-OR-AUTO-DOT-COUNT OR DOT count phải sửa tay mỗi lần thêm DOT. Cần mechanism tự đếm từ PG. Trung bình
TD-KB-FIELD-RENAME Nếu agent chưa rename: snapshot_at → date_created, logged_at → date_created trong KB tables Tuỳ kết quả agent
TD-KB-DOT-TYPES Set dot_type cho 3 KB DOTs theo §12.3 Nhỏ — 2 phút

D. BÀI HỌC PHIÊN NÀY

  1. Soạn prompt 5 lần trước khi đạt chất lượng → Cần rà soát TRƯỚC khi soạn, không soạn xong mới rà soát.
  2. INSERT → UPSERT là insight quan trọng nhất: "Không tạo rác" > "Dọn rác". Câu hỏi CQ1 (vĩnh viễn) bắt đúng vấn đề.
  3. PG có sẵn (ON CONFLICT, REVOKE, pg_stat) — phải hỏi "PG đã giải quyết chưa?" TRƯỚC khi thiết kế.
  4. Điều 33 phải đọc khi thiết kế PG — dù là draft, nó chứa naming conventions + patterns cần tuân thủ.
  5. Agent chạy rồi mới phát hiện vênh → checkpoint Điều 33 phải nằm trong quy trình soạn prompt, không phải sau khi paste.

E. CẬP NHẬT QUY TRÌNH SOẠN PROMPT

Bổ sung vào công thức soạn prompt (HP v4.1.0):

Mục tiêu → Giải pháp → Rà soát đầu vào → Roadmap → Soạn prompt
                         ↑
                         Bổ sung: RÀ SOÁT LUẬT LIÊN QUAN
                         - 11 NT + 6 CQ (đã có)
                         - 14 lưu ý thiết kế (đã có)  
                         - Điều 33 (Luật PG) nếu có PG changes
                         - Điều 35 (DOT Governance) nếu có DOT changes
                         - Điều 36 (Collection Protocol) nếu có collection changes
                         - Luật liên quan khác tuỳ scope

Ghi nhận bởi Desktop | 2026-04-04 | Chờ agent hoàn thành → rà soát → xử lý tiếp