[CLAUDE] Docs: S146 closeout — session-model 3 owner-decision + hook 4-path + H24 auto
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 5m25s

Ap spec-apply-hub-s145-v2 (5 axis, governance-only: 0 prod-code, 0 migration).
Workflow S145 chet giua chung -> /tiep §4 relaunch-cat-gon wf_3d803740-41d 3/3 DONE.

Owner-decision @S146:
- session_ctx_kb = 64 TUONG-MINH (giu nguyen caveat ghost-wire: 0 reader)
- session-model: scaffold IDEMPOTENT (tach cap-SO vs tao-THU-MUC) · closed.md WIRE
  (session-end §6.3-bis) · V2 AUTO (go cong NGUOI, GIU cong NHIP 6/15/3)

Landed: C7 §N.8 predicate 4-ve · hook wal-flush.ps1 4 path (+.claude/sessions/)
· San-3 tin-hieu ⑤ + ORPHAN-L · D2 KIEM end-only · §L.c completeness-gate co RANG.
LIVE-VERIFY hook 4-path PASS repo THAT (da7ee8a). Session-model chay TRON VONG dau
tien: pause-S146 -> resume-S146 -> ORPHAN-L can so.

H24 force-fire (P=8 pause >= 1, luat auto moi): 2 vai + h24-audit -> 7 FLAG, va het:
- sweep-consent sot 6 site (h24-audit.md:4 = frontmatter description)
- closed.md wired-but-declared-unwired (ghost-wire CHIEU NGUOC)
- owner-decision [7] BI GHI DE do tai-dung slot-index -> mat uy-quyen push
3/3 vai lane-H24 garble #53: ghi-dia-SOM cuu tron, ghi-MUON mat trang.

So: orphan run-folder 3->0 · carry 14->20 (co tag [carry:*]) · +E-013 +E-014
error-ledger · +memory feedback_absence_looks_like_clean · .gitignore +lock file.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
pqhuy1987
2026-07-23 00:16:37 +07:00
parent a1e2416f37
commit 8b6df0a396
86 changed files with 5683 additions and 113 deletions

View File

@ -20,6 +20,17 @@ Thực-hiện **tuần-tự 5 bước** sau; trong lúc chạy **KHÔNG nhận v
- Đẩy mọi trí-nhớ đang dirty (chưa ghi) xuống đĩa (agent-memory / run-folder).
- Ghi-chú-dở **DÀI** (context, phân-tích giữa chừng) để ở **run-folder / work-state**, **KHÔNG** nhét chi-tiết dài vào WAL — WAL phải giữ tính "liếc một cái là biết".
## 2.6 Ghi context-block vào thư-mục phiên-LOGIC (S146 — lane CỘNG-DỒN, cặp với `/tiep §2.6`)
- **Append MỘT khối mới** vào `.claude/sessions/session-<N>/pause-S<nn>-<yyyyMMddTHHmm>.md` (`<N>` = phiên-LOGIC **đang mở** — xem [`session-start.md`](session-start.md) BƯỚC 0.8).
- 🔴 **Scaffold idempotent (owner chốt @S146 "giống hub"):** thư-mục chưa có ⇒ **TẠO**; đã có ⇒ **DÙNG LẠI, CẤM đè**. Chạy lại nhiều lần vô hại.
- 🔴 **NHƯNG `/pause` KHÔNG BAO GIỜ tự tăng `<N>`** — cấp-số là **độc-quyền `/session-start`** (BƯỚC 0.8, canonical; B1 — mục này chỉ TRỎ). `/pause` chỉ tạo thư-mục cho số **đang mở**. Không có số nào đang mở (vào thẳng bằng `/tiep` rồi `/pause`, chưa từng `/session-start`) ⇒ dùng `max+1` **và ghi 1 dòng khai** trong khối: `N-cap-ngoai-session-start: <N> (ly-do: <...>)` — để `<N>` không bao giờ xuất-hiện mà không ai biết nó ở đâu ra.
- 🔴 **ACCUMULATE — CẤM ghi đè, CẤM sửa khối cũ.** Mỗi `/pause` = **một file mới**. (Ghi đè = mất chính thứ mà lane này sinh ra để giữ.)
- **3 trường** (đúng khuôn VC-3 draft): **(1) quyết-định đã CHỐT trong cửa này** · **(2) delta còn SỐNG** (việc/nghi-vấn mang sang cửa sau) · **(3) con-trỏ** run-folder / commit / file.
- 🔴 **Ranh với WAL — KHÔNG nhập một:** WAL = **mạch-sống, ghi-đè, cứng ≤40 dòng** (liếc-một-cái-là-biết, bước 3 dưới). Context-map = **bối-cảnh tích-luỹ, không cap 40 dòng**. Ghi-chú-dở DÀI thuộc **về đây**, KHÔNG nhồi vào WAL.
- **CẤM secret** (thư-mục này sẽ được commit — cùng kỷ-luật WAL bước 3).
- 🔸 Hook `wal-flush.ps1` đã phủ `.claude/sessions/` (path thứ-4, S146) ⇒ khối này **tự vào `wal:` commit** ở turn-boundary. Vẫn **PHẢI add đích-danh** ở bước 4 (đừng dựa vào hook để chốt điểm dừng — hook là lưới, không phải nghi-thức).
## 3. Cập-nhật `.claude/WAL.md` đúng schema
- **`chain:`** — đầy-đủ mọi mục trạng-thái (`[x]` đã-xong · `[!]` đang-dở · `[ ]` chưa-làm), **KÈM BẰNG-CHỨNG** là một lệnh / đường-dẫn / hash chứng-minh trạng-thái đó (KHÔNG mô-tả suông).
- **`next:`** — đúng **một mệnh-lệnh cụ-thể**: làm gì tiếp theo.
@ -28,10 +39,10 @@ Thực-hiện **tuần-tự 5 bước** sau; trong lúc chạy **KHÔNG nhận v
## 3.5 TICK counter (H24 — TRƯỚC commit bước 4; Item 1(c) S135)
- Tick `.claude/governance/.session-counter.json` **theo contract** (idempotent — NO-OP nếu cùng nhãn-phiên/cùng HEAD) — 🔴 **CON-TRỎ `session-start.md §2.1.8`, CẤM chép logic tick** (B1 canonical).
- 🔴 **TRƯỚC commit bước 4** ⇒ delta counter được gộp vào commit `wal: pause` (file NGOÀI hook-3-path nên PHẢI add đích-danh ở bước 4).
- 🔴 **TRƯỚC commit bước 4** ⇒ delta counter được gộp vào commit `wal: pause` (file NGOÀI hook-4-path nên PHẢI add đích-danh ở bước 4).
## 4. Commit ĐÍCH-DANH — message `wal: pause`
- `git add` **đích-danh** đúng các path: **WAL + path persist** (agent-memory / run-folder) **+ `.claude/governance/.session-counter.json`** (🔴 M-7: tick bước 3.5 nằm TRONG commit `wal: pause` — file ngoài hook-3-path nên PHẢI add đích-danh; thiếu dòng này thì claim "tick nằm trong wal: pause" SAI) **+ file dở**, rồi `git commit -m "wal: pause"`.
- `git add` **đích-danh** đúng các path: **WAL + path persist** (agent-memory / run-folder / **`.claude/sessions/session-<N>/` — context-block bước 2.6, S146**) **+ `.claude/governance/.session-counter.json`** (🔴 M-7: tick bước 3.5 nằm TRONG commit `wal: pause` — file ngoài hook-4-path nên PHẢI add đích-danh; thiếu dòng này thì claim "tick nằm trong wal: pause" SAI) **+ file dở**, rồi `git commit -m "wal: pause"`.
- 🔴 **TUYỆT ĐỐI KHÔNG `git add -A`** — chỉ add đúng path cần chốt, tránh nuốt file rác / secret ngoài ý-muốn.
- **KHÔNG push.** (Repo trong Dropbox → thư-mục `.git` được cloud-sync, nên commit local vẫn **durable** qua tắt-máy / đổi-acc.)
@ -42,6 +53,7 @@ Báo đúng sáu ý:
3. **workflow bỏ lại** (nếu có) — dòng `wf:` đã ghi.
4. "**an-toàn để thoát, đổi acc, hoặc tắt máy**".
5. **dòng-nợ (Item 2 S135):** gọi `powershell.exe -ExecutionPolicy Bypass -File scripts/nhip-no-probe.ps1` in dòng-nợ 4-vế (nhịp-kiểm đọc post-tick bước 3.5). 🔴 **probe KHÔNG chặn điểm dừng**: lỗi → in `probe-loi (khong chan)` → đi tiếp, VẪN tuyên-bố "an-toàn để thoát".
> 🔗 **Predicate C7 đầy-đủ (probe nào được phép chạy ở điểm dừng) = canonical [`harness-11-engine.md`](../../docs/governance/harness-11-engine.md) §N.8.** 🔴 **B1 — dòng này CHỈ TRỎ, CẤM chép predicate sang đây.**
6. **🧾 MASTER-CHECKLIST rút-gọn (S138):** derive từ WAL vừa ghi (bước 3) + HANDOFF — in **Tầng-1** mỗi arc 1 dòng `{đóng · đang · chưa}` + **đếm 4-nhóm** (`xong` / `đang-dở` / `chờ-anh` / `chưa-làm`) + **liệt nhóm chờ-anh — 🔢 BẮT BUỘC ĐÁNH SỐ** (anh trả lời bằng số). 🔴 **Checklist = VIEW derive tươi — CẤM tạo file checklist nguồn-đôi (sàn-3).**
Rồi **DỪNG HẲN**, KHÔNG nhận việc mới.