[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
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:
@ -39,6 +39,7 @@
|
||||
- [Return terminates agent](feedback_return_terminates_agent.md) — CẤM lệnh "trả verdict TRƯỚC, làm việc SAU" = bất-khả-thi vật-lý; sub mô-tả ý-định rồi tắt → claim-sai mà lỗi ở LỆNH lead; thứ-tự đúng = làm→verify→return, hoặc lead ghi on-behalf sau VERIFY-đĩa (S119) · **+S123: prompt-đúng KHÔNG chặn được #53** (cấm bẫy từ prompt đầu cho cả 3 sub, cả 3 vẫn garble ×4) ⇒ chặn được = **ghi-đĩa-TRONG-lúc-làm** (harvest-curator vớt ngay từ đĩa; 2 vai kia phải resume) + resume-in-session; reviewer **tự rút luật "ghi diary TRƯỚC return"** từ garble-1 và nhờ đúng nó mà garble-2 vớt được
|
||||
- [Citation-trap self-reference](feedback_citation_trap_selfreference.md) — doc định-nghĩa anti-pattern TẤT-YẾU chứa mẫu đó ⇒ detector khớp-mẫu bắt chính nó, **lây qua trích-dẫn** (3 đời/1 wave); discriminator = **enclosure use⟂mention**, KHÔNG port charset-guard; vá 1 CLASS ⇒ grep MỌI matcher cùng-lớp TRONG diff (gen-2 xảy ra thật)
|
||||
- [Goodhart: rời tập-đo](feedback_goodhart_leave_measurement_set.md) — "vá" bằng đổi HÌNH-DẠNG thứ đang bị đo = rời tập-đo; **flag-count giảm trông y hệt thành công** ⇒ hỏi "cái mất đi là dương-giả hay CHỨNG-NHÂN?"; kể chuyện bằng THÀNH-PHẦN không bằng tổng; +2 phép thử rẻ (trục-nào-KHÔNG-có-ca · áp-luật-cho-nhánh-anh-em)
|
||||
- [Vắng-mặt trông giống ổn](feedback_absence_looks_like_clean.md) — slot-index tái-dụng xoá IM-LẶNG (mất uỷ-quyền owner, hỏi lại 3 lượt) · phép trích RỖNG đọc thành sạch (`.{50}x` vs `.{0,60}x`) · ghost-wire soi 2 CHIỀU (wired-but-declared-unwired); vá xong PHẢI grep lại bằng lệnh KHÁC (S146)
|
||||
- [Edit phải có trước review](feedback_edit_must_predate_review.md) — edit-cần-review (nhất là file vai reviewer) LAND TRƯỚC lượt L3 (no-self-exempt cần vật tồn-tại trong diff); spec tự-mâu-thuẫn → fix-mới thắng footer-cũ + khai trong report (anh ratify S139)
|
||||
|
||||
## Project — ongoing decisions / context
|
||||
|
||||
26
.claude/auto-memory/feedback_absence_looks_like_clean.md
Normal file
26
.claude/auto-memory/feedback_absence_looks_like_clean.md
Normal file
@ -0,0 +1,26 @@
|
||||
---
|
||||
name: feedback-absence-looks-like-clean
|
||||
description: "Vắng-mặt trông giống ổn — slot-index tái-dụng xoá im-lặng, phép trích rỗng đọc thành sạch; vá xong phải grep lại bằng lệnh KHÁC"
|
||||
metadata:
|
||||
node_type: memory
|
||||
type: feedback
|
||||
originSessionId: 55aae6bd-8d74-4018-a203-343da07d3618
|
||||
modified: 2026-07-22T17:15:28.207Z
|
||||
---
|
||||
|
||||
**Ba ca cùng một lớp, đo được @S146 (2026-07-22/23) — "cái BỊ MẤT không tự tố-giác".**
|
||||
|
||||
**(1) Slot-index tái-dụng = xoá im-lặng.** Owner nói *"còn lại xử lý hết xong rồi session-end"*; lead ghi đúng vào `WAL` slot `[7]` = uỷ-quyền commit+push. Sau đó lead thêm mục mới và **tái-dụng `[7]`** ⇒ dòng cũ **biến mất, 0 hit toàn repo**. Hệ-quả: lead **hỏi lại 3 lượt** đúng thứ owner đã trả lời, ngay dưới khối tên *"ghi đè, KHÔNG hỏi lại"*.
|
||||
🔴 Khác **đổi giá-trị** (còn thấy giá-trị cũ để grep) — **đè slot thì không còn gì để grep**. Và **máy MÙ hoàn-toàn**: không detector nào biết `[7]` từng là thứ khác.
|
||||
**Why:** WAL **ghi-đè toàn-file** ⇒ mất-mát không đi qua diff-review từng dòng.
|
||||
**How to apply:** khối đánh số (`[n]`, checklist, enum) **CHỈ TĂNG index, CẤM tái-dụng**. Đối-chứng mất-mát trong WAL = `git show <sha>:.claude/WAL.md`. Catch-layer duy nhất = vai soi **CÁI THIẾU** ([[feedback_meta_count_selfcoverage_blindspot]]).
|
||||
|
||||
**(2) Phép trích rỗng ⟂ không có gì.** Vá 6 site theo danh-sách người khác liệt → **vá 5 sót 1**. Cơ-chế: `grep -oE '.{50}consent.{80}'` đòi **đúng 50 ký-tự TRƯỚC** match; match ở offset ~30 ⇒ **0 match ⇒ RỖNG** ⇒ đọc thành *"dòng này sạch"*. Đúng phải `.{0,60}`.
|
||||
🔴 Nguy hơn bẫy `grep -c` (đã có trong [[feedback_resume_premise_reverify]]): `grep -c` trả **`0` — một con SỐ**, nhìn là biết đang đếm; cửa-sổ hỏng trả **rỗng**, **trông y hệt sạch**.
|
||||
**How to apply:** **vá xong PHẢI tự grep lại bằng lệnh KHÁC lệnh đã dùng để tìm** (khác mẫu, khác cửa-sổ). Vá-theo-danh-sách mà không tự-verify = đời-3 của cùng lớp lỗi.
|
||||
|
||||
**(3) Ghost-wire soi được 2 CHIỀU.** Trước giờ chỉ canh *khai-có-mà-không-chạy*. @S146 gặp chiều ngược: `tiep.md` PROSE khai *"`closed.md` CHƯA wire"* trong khi **MÁY ngay phía trên đã đọc `closed.md` thật** — **wired-but-declared-unwired**, và nằm đúng dưới nhãn *"chống ghost-wire H18"*.
|
||||
**Why:** khai-chưa-xong cho thứ đã xong khiến người sau đi vá cái đã lành, và làm mất niềm tin vào chính lưới đó.
|
||||
**How to apply:** khi lật một cơ-chế sang "đã wire", grep **mọi surface khai nó chưa wire** — cùng kỷ-luật [[feedback_cardinality_change_grep_consumers]].
|
||||
|
||||
🔸 **Neo chung cả 3:** thứ *có mặt sai* thì grep ra; thứ *vắng mặt* thì **không**. Nên với xoá/đè/rỗng, **bằng-chứng phải đến từ NGUỒN KHÁC** (git history · lệnh khác · người khác), không từ chính bề-mặt đang soi.
|
||||
@ -5,9 +5,10 @@ metadata:
|
||||
node_type: memory
|
||||
type: project
|
||||
originSessionId: 5337f05f-50e4-42e8-bf54-2f9bfa9a32da
|
||||
modified: 2026-07-22T15:43:25.999Z
|
||||
---
|
||||
|
||||
**H22 WAL session-continuity — ADOPTED S111 (2026-07-12), mark `RC-pqhuy1987-12-07-2026-11-43-45` (AH thứ 6).** Sổ `.claude/WAL.md` ≤40 dòng ghi-đè (chain-bằng-chứng + next + verify, ground-truth thắng; detector C5 bắt >40) · Stop-hook `.claude/hooks/wal-flush.ps1` persist-only (per-path+CAND+exit-0; 3 path: WAL/agent-memory/runs) qua `.claude/settings.json` (file ĐẦU TIÊN của repo) · `/pause`·`/tiep` MỘT đường recovery · session-start BƯỚC 0.7 (ngoại-lệ CHỜ duy-nhất) + session-end §5.0 squash `wal:`-trailing-chưa-push + §6.4 reset · **FLIP-policy: run ≥3 task HOẶC >5' = BẮT BUỘC RUN-TRACE** (hmw.js :9/:19 + workflows/README) + run.md `## taskList snapshot` + dòng `wf:` 5-trường.
|
||||
**H22 WAL session-continuity — ADOPTED S111 (2026-07-12), mark `RC-pqhuy1987-12-07-2026-11-43-45` (AH thứ 6).** Sổ `.claude/WAL.md` ≤40 dòng ghi-đè (chain-bằng-chứng + next + verify, ground-truth thắng; detector C5 bắt >40) · Stop-hook `.claude/hooks/wal-flush.ps1` persist-only (per-path+CAND+exit-0; **4 path** kể từ S146: WAL/agent-memory/runs/**sessions** — path thứ-4 `.claude/sessions/` = thư-mục phiên-LOGIC, đẻ CÙNG tín-hiệu MẠNH ⑤ + ORPHAN-L ở `tiep.md §0`) qua `.claude/settings.json` (file ĐẦU TIÊN của repo) · `/pause`·`/tiep` MỘT đường recovery · session-start BƯỚC 0.7 (ngoại-lệ CHỜ duy-nhất) + session-end §5.0 squash `wal:`-trailing-chưa-push + §6.4 reset · **FLIP-policy: run ≥3 task HOẶC >5' = BẮT BUỘC RUN-TRACE** (hmw.js :9/:19 + workflows/README) + run.md `## taskList snapshot` + dòng `wf:` 5-trường.
|
||||
|
||||
**Why:** phiên chết giữa mạch = mất trí-nhớ chưa-ghi + đốt-lại token (sự-cố thật: WF2 S101 mất theo CLI-restart; diary transcript-lost ×2 S110; W3 return-truncate ngay run adopt — per-agent-file cứu).
|
||||
|
||||
|
||||
Reference in New Issue
Block a user