wal: pause

This commit is contained in:
pqhuy1987
2026-08-07 17:37:03 +07:00
parent 40914682b1
commit b8d22741c7
25 changed files with 1733 additions and 99 deletions

View File

@ -0,0 +1,97 @@
# _mind-s-12 — SESSION-MODEL lớp MỀM (trí-nhớ suy-nghĩ 4 tầng)
<!-- SCAFFOLD-META: sID=12 | ts-moc=2026-08-07T17:34:01+07:00 | nguon-ts=git log -1 --format=%cI @ HEAD 4091468 | render=lead Write @session-start Phase 3.5 (session-scaffold.ps1 KHONG render tep nay) -->
<!-- MIND-RULES-START -->
> **sID (LOGIC-session) = 12.** Tệp này giữ 4 thứ KHÔNG nằm ở WAL / HANDOFF / `_context`: **(A)** gói-turn · **(B)** hướng-tiếp · **(C)** kế-hoạch delta-suy-nghĩ · **(D)** đang-thảo-luận (+ **(E)** dòng-sống spawn). Nhà: `.claude/sessions/session-12/_mind-s-12.md`.
> ts-mốc khởi-tạo = **2026-08-07T17:34:01+07:00** (nguồn: `git log -1 --format=%cI @ HEAD 4091468`) — mốc git-committer, KHÔNG phải wall-clock tuỳ-tiện.
>
> **GHI = lead (single-writer)** @4 nhịp: block-0 cuối bootstrap · refresh @`/pause` · đọc + đối-chiếu @`/tiep` · mục E gom MỌI spawn/engine-run. **KIỂM = máy + vai** (tách khỏi ghi): `python scripts/session_ctx.py mind-check --session 12` mỗi cửa (~$0) + vai `ctx-audit` @2 bookend (INFORM-only, quyền phán TRƯỢT).
> **Trần tệp** = khoá `mind_ctx_kb` trong `.claude/agent-memory/memory-budget.json` — **B1: trỏ khoá, CẤM chép số vào tệp này.**
### 🔴 CHIỀU CHÈN — NGƯỢC với `_context` (đọc trước khi chèn block đầu tiên)
- **`_mind` = MỚI-NHẤT-Ở-TRÊN.** Block mới chèn NGAY DƯỚI **dòng marker điểm-chèn** (dòng comment nằm ngay trên block top, dưới khối luật này).
- **3 dòng comment marker của tệp** (mở khối luật · đóng khối luật · điểm-chèn) xuất hiện **ĐÚNG 1 LẦN** mỗi cái. Vì vậy phần chữ ở dưới CHỈ gọi chúng bằng **mô-tả**, KHÔNG viết lại tên marker — máy/người tìm-chuỗi sẽ không bắt nhầm anchor rồi chèn vào giữa khối luật. Máy khớp anchor bằng **token** trên dòng bắt đầu `<!--` (KHÔNG kèm `-->`, vì marker có chú-thích viết cùng dòng — mirror `FLOW-START` của `session-context-template.md`).
- **`_context` FLOW = MỚI-NHẤT-Ở-CUỐI** (`.claude/templates/session-context-template.md`, dòng `FLOW-START`). **HAI TỆP NGƯỢC CHIỀU NHAU** — CẤM "adopt verbatim" khuôn bên kia sang đây. Lý-do: `_mind` đọc để **nạp lại trạng-thái** ⇒ thứ mới nhất phải ở màn hình đầu; `_context`**biên-niên-sử durable** ⇒ đọc xuôi thời-gian.
- **Số hiệu = ĐẾM số block hiện có TRƯỚC KHI chèn** (block-0 chiếm số 0 ⇒ đang có n block thì block mới là `MIND-n`). Máy chỉ đòi *số duy-nhất* + *block top ≥ mọi số dưới* — KHÔNG neo công-thức đếm, nhà đổi công-thức vẫn kiểm được.
- **Block cũ BẤT BIẾN** (append-only, không rewrite / không tự-tóm). **Ngoại lệ DUY NHẤT**: nén khi vượt trần — nén block CŨ NHẤT **trừ block-0 và block top**, verbatim vẫn còn trong git; **<3 block TỪ-CHỐI nén**, giương cờ vượt trần (nợ hiển thị, không xoá chứng-nhân).
- **Việc ĐÃ-CHỐT chỉ con-trỏ** (`.claude/WAL.md` · `docs/HANDOFF.md` · `.claude/workflows/runs/<id>/…`) **CẤM chép nội-dung** (2-sự-thật + phình trần).
- **Mục trống ghi đúng chuỗi `(trống — khai)`** trên 1 dòng riêng, KHÔNG thêm chữ, KHÔNG bọc dấu nhấn (máy so chuỗi). CẤM bỏ heading vắng-mặt trông giống ổn.
- **5 heading trong mỗi block = `### A.` `### E.`** (thứ tự AE cố định) đây hợp-đồng hình-dạng cho máy `mind-check` vai `ctx-audit`.
- **Mục D: mỗi ý 1 dòng + BẮT BUỘC nhãn**, viết **đúng chuỗi CÓ DẤU**: `{mới-nêu | đang-cãi | gần-chốt | treo-chờ-anh}`. Máy so chuỗi viết không dấu = **trượt-cấu-trúc**. (Phần chữ hướng-dẫn trong khối luật này theo khuôn nhà thể không dấu, nhưng **token máy đọc thì giữ dấu** đừng chép ngược.)
### 3 RÀO NỘI-DUNG (máy `mind-check` phép 1-3 — mỗi rào kèm LÝ-DO ĐO ĐƯỢC)
1. **Rào-1 — CẤM verbatim lời anh.** Dạng bị bắt = dòng blockquote mở đầu bằng `anh` + hai chấm, ví-dụ:
> anh: <lời anh nguyên-văn — dòng NÀY hợp-lệ vì nằm TRONG khối luật, xem mục enclosure>
*Lý-do đo được:* verbatim lời anh **nguồn-duy-nhất** = `_context` FLOW (`### PAUSE-<k>` dòng quote). `_mind` lớp mềm bị nén/diễn-giải mỗi cửa chép verbatim vào đây tạo bản-thứ-2, khi 2 bản lệch thì bản mềm (đọc trước, giàu ngữ-cảnh hơn) sẽ thắng bản durable. Trong `_mind` chỉ được TRỎ: `xem PAUSE-<k>`.
2. **Rào-2 — CẤM khoá `ts:` ở ĐẦU DÒNG** (mọi biến thể: thụt space/tab, hoa/thường, khoảng trắng trước dấu hai chấm). Mốc thời-gian sống **trong dòng heading, sau em-dash**: `## MIND-<k> — <ISO-8601> @ <HEAD>`.
*Lý-do đo được:* marker nhà (`_pause-*` · `_tiep-*` · `_snapshot-*`) mang khoá đó đầu dòng **by-design**; reader-mốc TƯƠNG-LAI (gap C10-LATENESS của `scripts/governance-detectors.ps1` C10 tự khai "no reliable source" cho ts-compare) sẽ quét cả `session-<N>/_*` **không lọc theo tên tệp** một dòng khoá trong `_mind` đủ để lấy sai "mốc gần nhất". Regex canonical = `_TS_KEY_RE` trong `scripts/session_ctx.py`; **CẤM cài bản thứ 2** bất kỳ máy nào (2-sự-thật chính thứ rào này chặn).
3. **Rào-3 — CẤM secret, KỂ CẢ dưới dạng ví-dụ.** Tập tiền-tố cấm = `SECRET_PATTERNS` trong `scripts/session_ctx.py` **trỏ nguồn, KHÔNG chép mẫu vào tệp này**. Ngoại lệ DUY NHẤT: nhãn đã che `[đã che <8-hex>]`. Bắt buộc quét NHÁP **trước** khi chèn: `mind-check --session 12 --draft <tệp-nháp-scratchpad>`.
*Lý-do đo được, 2 tầng:* (i) block BẤT BIẾN secret lọt **vĩnh viễn** (còn trong git xoá sau); (ii) **enclosure KHÔNG đối-xứng giữa 2 lưới**: `mind-check` chỉ soi DƯỚI marker đóng khối luật, còn `secrets-sweep` (cùng `session_ctx.py`, chạy auto-snapshot mỗi `/pause`) **rglob TRỌN `session-<N>/` và không biết khối luật này** một mẫu secret viết làm ví-dụ ngay tại đây sẽ **chặn commit ở MỌI cửa pause**. thế rào-2 rào-3 trên **cố ý KHÔNG có ví-dụ literal**; chỉ rào-1 , rào-1 chỉ `mind-check` đọc enclosure-aware.
### Enclosure use ⟂ mention
Máy chỉ quét phần **DƯỚI** marker đóng khối luật (dòng comment cuối cùng của phần luật này). Khối luật được phép chứa chuỗi bị cấm để **giải thích** (citation-trap: doc định-nghĩa anti-pattern tất-yếu chứa chính mẫu đó). Hệ quả 2 chiều: **đừng** dịch ví-dụ xuống dưới marker đóng, **đừng** viết nội-dung thật lên trên .
<!-- BLOCK-SCHEMA (guidance, KHONG phai block that /pause dien; parser real-block match `^## MIND-\d+`, placeholder `<k>` khong false-match).
Prose huong-dan duoi day khong dau theo khuon nha; TOKEN may so chuoi thi GIU DAU: nhan muc D + chuoi muc trong `(trống — khai)`.
## MIND-<k> — <ISO-8601> @ <HEAD ngan> (window <w>)
### A. Goi-turn
<1-3 gach dau dong: turn vua roi lam gi, ket qua gi GOI lai, khong ke lai>
### B. Huong-tiep + nhanh-da-loai
<di dau tiep VA nhanh nao da LOAI + vi sao loai (chong dao lai vong cu)>
### C. Ke-hoach (delta suy-nghi)
<phan SUY-NGHI doi so lan truoc CAM chep checklist/todo (cho o WAL/HANDOFF)>
### D. Dang-thao-luan
<moi y 1 dong + nhan CO DAU: {mới-nêu | đang-cãi | gần-chốt | treo-chờ-anh}>
### E. Dong-song spawn/engine-run
<1 dong / spawn hoac engine-run: <vai><verdict><con-tro path (run-folder / sub-file / commit)>>
<muc trong dung chuoi: (trống khai)>
-->
<!-- MIND-RULES-END -->
<!-- diem-chen: block MOI chen NGAY DUOI dong marker duoi day (moi-nhat-o-TREN -- NGUOC chieu _context FLOW).
Marker duoi day phai giu NGUYEN-VAN, KHONG viet chu-thich cung dong: may khop chuoi DAY-DU
(`_MIND_TOP_MARKER` trong scripts/session_ctx.py) -- khac khuon `FLOW-START` cua _context (khong may nao doc). -->
<!-- MIND-TOP -->
## MIND-0 — 2026-08-07T17:34:01+07:00 @ 4091468 (window 1)
### A. Gói-turn
Phiên mở bằng `/session-start` (bookend @open 5 vòng, 8 vai) rồi anh giao chuỗi 5 nấc adap gói 7-GĐ. Đã đóng **4 wave** (W0·W1·W2·W3) + trả sạch 3 nợ máy-bắt. Anh chốt **6 quyết định owner**, trong đó 3/4 đợt-2 **ngược khuyến nghị lead** — hướng: nhận ĐỦ hình hub.
### B. Hướng-tiếp + nhánh-đã-loại
**Hướng:** gom **5 câu chờ anh** hỏi 1 lần → P2 thi hành (sửa `tiep.md:181` tường minh có vết) → W4 → W5 (vá defect `spawn-model-audit`) → W3b/W4b/W5b/W6.
**Nhánh đã LOẠI:** (a) *"W5 ghép W2"* của N1 — **BÁC VĨNH VIỄN** (vi phạm điều-kiện-vào GĐ-5 + OD-2) · (b) redesign 7 baseline `-Expect` ngay lượt này — loại vì vứt bằng chứng fault-inject W1 và là quyền anh · (c) sửa mojibake `sub-w3` tới cùng — loại sau 4 vòng, lợi ích biên < rủi ro ghi đè.
### C. Kế-hoạch (delta suy-nghĩ)
Delta lớn nhất so lúc mở: **luật "sạch tới đúng độ sâu máy KIỂM"** (W1-a đo được) đã trở thành ràng buộc xuyên mọi wave áp 4 lần liên tiếp (W1 chuẩn tên · W2 vị từ ghi đĩa · W3 nhãn nghi thức · chính máy W2 nấc mã-hoá). **mọi wave sau phải khai NẤC nó ép được**, không sâu hơn máy.
### D. Đang-thảo-luận
- `{treo-chờ-anh}` **P3** tập-tín-hiệu ĐÓNGMỞ · **P5** luật tự-trị 3 bậc · **P7** vị trí sổ-lượt-đắt · **P8** wire khối chấm · **lược đồ cột `status`**.
- `{gần-chốt}` **V-5 vị-từ mã-hoá** lead đã viết spec 1 dòng grep + phân biệt 2 nấc (`U+FFFD>0` = mất dữ liệu moji-only = sửa được); chỉ chờ chỗ cắm.
- `{đang-cãi}` 7 baseline `-Expect`: giữ-tripwire-thêm-ngày tách-file-dữ-liệu. Cả hai đều đổi thiết kế máy governance.
- `{mới-nêu}` F-1 gửi ngược hub: 4 thư mang `status: DRAFT` + `reviewer_gate: PENDING` đã phát.
### E. Dòng-sống spawn/engine-run
- `/fable-real investigator-codebase` (N1) `PHỦ ĐỦ 7GĐ/12TC/9LỖI` `sub-invest-fitmap-S180.md`
- `/fable-real reviewer` (N2) `PASS_WITH_FIXES 0C/5M/6m`, **claim-không-đứng = 0** `sub-review-n2-S180.md`
- `/fable-clone reviewer` ×6 lane (N3) A/B/C/D/E/F 6 file `sub-n3-lane-*.md`
- `/fable-real reviewer` (N4) **7 wave + 3 sub gated, 0 loại** `wave-plan-S180.md`
- W0 ×2 · W1 ×2 · W2 · W3 4 wave đóng, vật land `docs/governance/` + `scripts/`
- bookend @open 8 vai `bookend-open-synthesis.md`
🔴 **21 vai dính #53, recover 21/21, mất 0 byte** · **vai bác lead 11 lần, 11/11 đúng**
🔸 **KHAI TRỄ:** block-0 này đáng ra ghi **Phase 3.5 `/session-start`**; không chạy anh giao việc ngay sau Phase 3 REPORT. Ghi tại `/pause` cửa-1, nên **không có bản-nháp để `ctx-curator` kiểm** cửa này cửa `/pause` kế sẽ đủ.