Điều 22: Luật Tự sửa chữa + Tự cải tiến — v1.1 BAN HÀNH
ĐIỀU 22: LUẬT TỰ SỬA CHỮA + TỰ CẢI TIẾN — v1.1 BAN HÀNH
v1.1 BAN HÀNH | 2026-04-18 | Amend bởi S178 Fix 15 — DOT Repair Governance v4 FINAL Base: v1.0 / revision 1 cùng path. Phạm vi amend v1.1: kỹ thuật hoá nguyên tắc “phơi bày ra ánh sáng”, cấm silent-fail trong
ops-code/, bổ sung scanner theo cặp và cơ chế coalesce issue parent/child.
§1. Vòng lặp Tự sửa chữa
NHẬN DIỆN → LIỆT KÊ → XỬ LÝ → XÁC NHẬN → CẢI TIẾN → (lặp lại)
- NHẬN DIỆN: DOT quét + trigger/flow realtime phát hiện vấn đề.
- LIỆT KÊ: ghi
system_issuesvới category, severity, provenance. - XỬ LÝ: tự sửa khi rule rõ; nếu không rõ → tạo APR / task chuẩn hoá.
- XÁC NHẬN: quét lại. Pass → đóng. Fail → escalate.
- CẢI TIẾN: pattern lặp lại → đề xuất đổi kiến trúc/quy trình.
§2. Nguyên tắc Sổ kế toán kép
Mọi số liệu quan trọng phải có ít nhất 2 hướng đếm độc lập:
- Xuôi (snapshot)
- Ngược (transaction log)
Xuôi = Ngược → tin được. Xuôi ≠ Ngược → cảnh báo ngay.
§3. Ba danh mục song song trên Registries
| Danh mục | Nội dung | Trạng thái |
|---|---|---|
| Danh mục hệ thống | atoms / tổng hợp / cấu trúc | Có |
| Danh mục vấn đề | lỗi, drift, vi phạm, thiếu dữ liệu | Có |
| Danh mục cải tiến | đề xuất tối ưu / tiến hoá | Kế hoạch |
§4. Chiến lược “Phơi bày ra ánh sáng” — DOT Tầng 5
Mọi vấn đề phải được phơi bày; không giấu, không chờ ai hỏi.
DOT scripts Tầng 5 = hệ thống kiểm tra tự động. Tự chạy → tự phát hiện → tự liệt kê vào system_issues.
§4.1 CẤM Silent-Fail Pattern trong ops-code/
Cấm 3 pattern sau khi chúng ảnh hưởng control-flow, gate, validation, mutation hoặc che khuất lỗi thực thi:
2>/dev/nullở ngữ cảnh gate / validation / SQL query.|| truesau lệnh thay đổi trạng thái.set +ekhông có cặpset -ekèm comment lý do.
§4.1.1 Annotation exception bắt buộc
Chỉ cho phép ngoại lệ nếu có marker comment ngay phía trên:
# silent-fail-allow: probe-only# silent-fail-allow: cleanup# errexit-allow: bounded-capture
Suppress stderr hợp lệ phải redirect vào biến/log có tên; không được nuốt câm hoàn toàn.
§4.1.2 Scanner 3 mức
- critical: pattern đi kèm
psql, DML/DDL, file write, gate logic → auto tạo APRfix_repair_dot. - warning: pattern probe-only chưa có marker → ghi
system_issues, không auto-APR. - allow: có marker hợp lệ → skip.
§4.1.3 Coalesce issues parent/child
Scanner batch cùng session phải gộp issue theo coalesce_key:
- issue đầu nhóm = parent (
parent_issue_id IS NULL) - issue còn lại trỏ
parent_issue_idvề parent
Mục tiêu: không tạo 13 issue rời cho cùng một pattern hàng loạt.
§4.2 DOT cặp cho silent-fail
dot-ops-silent-fail-scan(A-tier): cron daily, quétops-code/theo registry/config.dot-ops-silent-fail-propose(B/pseudo): tạo APR suggestion, không auto-fix toàn diện bằng regex rewrite trừ mẫu cực chắc chắn.
§4.3 Retrofit clause
- 14 ngày: remediation 13 DOT legacy Đ38 có silent-fail pattern đã inventory hoá.
- 30 ngày: paired test retrofit cho nhóm DOT lõi (
nrm-*,apr-*,dot-dot-*). - 90 ngày: paired test retrofit cho DOT canonical legacy còn lại.
Trong thời gian chờ 90 ngày, mọi fix mới theo fix_repair_dot phải có test hồi quy tối thiểu cho bug đang sửa.
§5. Triết lý 2 Động cơ
- DOT kiểm tra = nhiệt kế, không phải thuốc.
- DOT kiểm tra phải làm việc = hệ thống đang hỏng = phải sửa gốc.
- Mục tiêu: DOT kiểm tra IDLE = thiết kế tốt.
§6. Áp dụng Tầng 4 (mở rộng)
Cùng cơ chế áp dụng cho quy trình nghiệp vụ: đề xuất cải tiến, phản hồi khách hàng, cải tiến vận hành → vào system_issues/APR/task theo mức rõ ràng của rule.
§7. Thước đo
- Mọi vấn đề tự phát hiện trước khi người dùng thấy.
- ≥50% lỗi rõ ràng tự sửa không cần người.
- Pattern lặp lại → tự sinh đề xuất cải tiến.
CHANGELOG
| Version | Nội dung |
|---|---|
| v1.0 | Luật gốc: vòng lặp tự sửa, sổ kế toán kép, triết lý phơi bày vấn đề. |
| v1.1 | S178 Fix 15 BAN HÀNH. Kỹ thuật hoá §4 bằng cấm silent-fail trong ops-code/, marker annotation, scanner 3 mức, coalesce parent/child, DOT cặp và retrofit 14/30/90 ngày. |
Điều 22 v1.1 BAN HÀNH | Amend trực tiếp bởi DOT Repair Governance v4 FINAL