All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 5m35s
§L.a RCA: - E-012 + AS-16 NEW "bằng-chứng-tự-huỷ-sau-squash": outward artifact cite sha chưa-push / stamp trước khi git status sạch. Root = tiêu-chí verify chọn theo cái MÌNH đo được, không theo cái NGƯỜI NHẬN sẽ đo (cùng lớp E-010). Đối chứng: wave trước cite commit đích -> sống hết. §L.b: - (c) memory-triple: do exit 0 · de-xuat A7 251/251 · kiem reviewer FAIL 1C/4M/4m/1nit · do-record TOTAL 47 + nhip-no 4-vế. sleep-check 4d < 7d -> không INFORM. - (d)(f) harvest-curator GATE-PASS-5, 5-trục PASS, Fidelity on-behalf PASS STRONG 0-fabrication, C5 dạng-1 đủ, orphan 0/40, Sàn-5 khớp. Spawn-record 5 sub. - (g) tooling-auditor DRIFT-FOUND(4) -> vá hết: F-A doc "3-vế" vs script 4-vế (7 site prescriptive; giữ 15 file frozen) · F-B ghost-enum HIGH (mở enum 10->11 mà quên chính vai dùng nó + 2 site số) · F-C lead-model pin chưa ghi sổ (thêm dòng Lead row S143; cell canonical để owner quyết) · F-D marketplace. - (j) H24: class_repeat cập theo 2 vai · last_audit light/deep = 17 · history +S143 (khai rõ force-fire SỚM 1 nhịp theo lệnh owner, KHÔNG tới-hạn tự-nhiên). - (k) trio SKIP có vết (cần restart CLI) -> ghi CẢ session-log vì §6.4 reset WAL. Sửa-một-phía bắt được 4 lần trong phiên (tool-grant · enum · sổ đếm garble · _note counter) -> bài: đổi một con số thì grep con số đó repo-wide trước khi đóng. #53: 5/5 sub garble, 0 mất dữ-liệu nhờ ghi-đĩa. Tally ×20 -> ×25, +path-4 lead-on-behalf khi resume không cứu được diary. Test 528 kế-thừa (0 file src/fe/tests bị đụng, verify bằng diff). Bundle FROZEN. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
5.1 KiB
5.1 KiB
description: /pause — chốt điểm dừng chủ-động (Harness-22 WAL session-continuity). Ghi mạch việc dở vào .claude/WAL.md ≤40 dòng + commit 3. Cập-nhật
4. Commit ĐÍCH-DANH — message
wal: pause ĐÍCH-DANH rồi DỪNG HẲN — an-toàn để thoát / đổi acc / tắt máy. Nối lại DUY-NHẤT bằng /tiep.
argument-hint: (không tham số)
/pause — chốt điểm dừng chủ-động (Harness-22 WAL session-continuity)
Mục-đích: chốt trạng-thái làm-việc hiện-tại xuống đĩa một cách an-toàn, để có thể thoát / đổi tài-khoản / tắt máy mà KHÔNG mất trí-nhớ đã có và KHÔNG phải đốt lại token cho phần đã xong. Cặp với
/tiep(đường recovery duy-nhất). 🔴 restart Claude Code sau khi tạo/sửa command.md(no hot-reload).
Thực-hiện tuần-tự 5 bước sau; trong lúc chạy KHÔNG nhận việc mới:
1. NGỪNG spawn mới — xử-lý task đang chạy
- KHÔNG spawn / phóng thêm bất-kỳ task hay workflow nào nữa.
- Với task đang chạy (background hoặc workflow):
- Sắp-xong (ước
< ~2 phút) → CHỜ nhận kết-quả rồi harvest-liền (append phần trí-nhớ đã verify) trước khi chốt. - Còn lâu → KHÔNG chờ. Ghi vào WAL một mục
[!]đủ trường. Nếu là workflow → ghi một dòngwf:năm-trường:wf:<mục-đích> run=<run-folder> runId=<id|pending> args=<snapshot> done=<k>/<N> harvested=no(nhánh khôi-phục xem/tiep).
- Sắp-xong (ước
2. Flush trí-nhớ dirty xuống đĩa
- Đẩ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".
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.verify:— ít nhất một lệnh CHẠY ĐƯỢC cho từng mục[!], để/tiepchạy được và đối-chứng.- 🔴 WAL ghi-đè toàn-file (KHÔNG append), cứng ≤ 40 dòng. CẤM secret (WAL sẽ được commit): không key, không token, không credential.
3.5 TICK counter (H24 — TRƯỚC commit bước 4; Item 1(c) S135)
- Tick
.claude/governance/.session-counter.jsontheo 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).
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 commitwal: 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ồigit 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.)
5. Báo-cáo ngắn rồi DỪNG HẲN
Báo đúng sáu ý:
- goal — mạch việc đang dở là gì.
- mục
[!]đầu-tiên — bước dở gần nhất. - workflow bỏ lại (nếu có) — dòng
wf:đã ghi. - "an-toàn để thoát, đổi acc, hoặc tắt máy".
- dòng-nợ (Item 2 S135): gọi
powershell.exe -ExecutionPolicy Bypass -File scripts/nhip-no-probe.ps1in 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 → inprobe-loi (khong chan)→ đi tiếp, VẪN tuyên-bố "an-toàn để thoát". - 🧾 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.
🔒 Bất-biến: commit ở bước 4 xảy ra TRƯỚC tuyên-bố ở bước 5 — chết ngay sau khi tuyên-bố "an-toàn để thoát" cũng KHÔNG mất gì (điểm dừng đã nằm trên đĩa).
👉 Nối lại = /tiep (MỘT đường recovery duy-nhất — kể cả khi user gõ "làm tiếp" bằng text thường, KHÔNG tự recovery cách khác).