[CLAUDE] Docs: S135-S136 adap khung-nhip-nam-vong 7-item — tick da-diem-vao OR-guard+label-pin + force-fire consent + nhip-no-probe 3-ve + 2 detector H25 (fault-inject 9/9, FP W3 tail-adjacency classified) + residual do-token e0bb5bbf + luat non-JSON-args + sleep-khuon; AC A10/10 B6/6 C8/8; reviewer GO 0C/0M/2n

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
pqhuy1987
2026-07-17 19:12:41 +07:00
parent 36ccf3bbe8
commit da349fc2c9
10 changed files with 413 additions and 39 deletions

View File

@ -28,7 +28,7 @@ Mỗi lần chạy engine-đắt PHẢI kết-tinh 1 spec theo pipeline **propos
1. **Engine propose-only** — vai chạy top-model đề-xuất [đề-bài · cách làm · checklist]. Engine KHÔNG tự ghi.
2. **Lead verify** — lead soi + chỉnh nội-dung propose.
3. **Lead ghi** file `.claude/workflows/runs/<run-id>/spec-<tên-tính-năng>-<dd-mm-yyyy>.md`**3 heading cố-định:** ① Tính-năng/đề-bài · ② Cách implement · ③ Checklist (vai + deliverable + acceptance **ĐO ĐƯỢC**).
4. **Worker thực-thi THEO spec** — spec bơm **QUA ARGS/prompt** (worker KHÔNG tự Read file).
4. **Worker thực-thi THEO spec** — spec bơm qua args = **CON-TRỎ** file spec (`runs/<id>/spec-*.md`, bản lead-đã-verify) + digest ngắn / AC-ids; worker Read **ĐÚNG file con-trỏ** (B6 chốt-2 args-mỏng); CẤM tự lục **spec/nguồn** ngoài con-trỏ (file làm-việc của lane vẫn Read bình thường).
- 🔒 **Honest-note (c):** file spec do **LEAD ghi SAU khi verify** — engine KHÔNG tự ghi.
- 🔒 **Honest-note (d):** run **chấm/verify CŨNG sinh spec-file** (kế-hoạch xử issue = "cách làm" cần kết-tinh).
@ -40,6 +40,7 @@ Mỗi lần chạy engine-đắt PHẢI kết-tinh 1 spec theo pipeline **propos
## 🔴 Cờ `args.run` — RUN-TRACE (Sàn-1 H22, cơ-khí-hoá S121 W2)
Lead **PHẢI** @P1 scaffold `.claude/workflows/runs/<run-id>/` (TRACKED, kèm `run.md` + `## taskList snapshot`) rồi truyền `args.run = { name:'<run-id>', dir:'.claude/workflows/runs/<run-id>' }` khi gọi Workflow `hmw`.
🔸 **Khai thật — ở lệnh NÀY gate hiếm khi cắn:** `/fable-real` = **single deep-pass 1 lane**`taskList.length = 1` < 3 `hmw.js` **KHÔNG throw**. Nhưng cờ vẫn **PHẢI** truyền, §H21 buộc run này **kết-tinh spec-file** vào `runs/<run-id>/` cần run-folder làm **dấu-vết artifact** cho `/tiep` + harvest; nếu lúc lệnh này fan-out 3 thì gate cắn ngay. Đừng đọc "gate không cắn" thành "khỏi cần cờ".
> 🔴 **LUẬT non-JSON-args (per `6c2eb2b1` — B6 chốt-3):** `args` (kể cả `args.run`, `args.taskList`, `args.spec`) LUÔN là **object JSON thật** khi gọi Workflow `hmw` — lead **KHÔNG** tự `JSON.stringify` args. Dòng normalize trong `hmw.js` (`typeof args === 'string' ? JSON.parse(args)`) chỉ là **LƯỚI-CUỐI** đỡ ca tầng-máy tự stringify object, **KHÔNG phải giấy phép** để lead tự stringify args khi truyền.
## 🔴 Guard (§K engine — bất-biến)
- **Single deep-pass RETURN-only**; em-main **single-writer** (B3) ghi **1 MEMORY entry** đúng vai đó + **gắn nhãn engine đã dùng** (hmw SCHEMA `memoryDelta` KHÔNG field engine em-main stamp @P3 harvest).