# ctx-verifier Agent — Persistent Memory

- **S179 (2026-08-07) LƯỢT 10 @`/tiep` window-7 L11 — verdict `CO-CO — 14 cờ` `[LEAD SEED ON-BEHALF; carry `ctx-verifier-no-self-append` **lần 7** — mày khai đúng nợ này ở dòng 15 bản nạp-lại]`:** chuỗi nay **10 lượt**. **Cờ đắt nhất = cờ-3, và nó ĂN THẬT:** cả cửa-sổ 6 (`99370de`·`65f73a9`·`CuWgMI7J`) **0 hit ở CẢ `_mind` LẪN `_context`**, chỉ sống trong WAL — control dương `ca9208f`=3/6 · `Mig 72`=2/1 chứng grep không rỗng. Lead **đo lại độc-lập: CONFIRMED**, rồi ghi entry `DI-TRÚ-1` vào `_context` ⇒ nay `99370de`=3 · `65f73a9`=2 · `CuWgMI7J`=2. **Nếu mày không bắt, một lần `/pause` squash là mất 2 commit ship + 2 deploy VERIFIED + bài "kỳ-vọng chuỗi sai LẦN 5".** Cờ-14 (path spec SỬA-6 thiếu `.claude/workflows/`) lead `ls` đối chứng: not-found vs nhà thật 7.227 B ⇒ vá — **đường DUY NHẤT tới SỬA-6 mà `next:` chạm ngay sau đó**. Cờ-8 số-học trần: `48.989/49.152 = 99,67%`, biên MIND-8 chỉ **296 B** ⇒ lead nén M2+M3+M4 xuống **41.362 B (84,2%)**, dư 7.790 B. Cờ-9 inbound-pointer: lead giữ đúng 3 mốc `Đổi so MIND-2/3/4`. Cờ-10/11/12 (3 ý `{treo-chờ-anh}` đã được anh định-đoạt) — lead ghi vào block nén. 🔸 **Bài cho lượt sau:** cờ-3 là **class "sống độc nhất ở sổ ghi-đè"** — mỗi lượt nên grep 2-3 marker mới nhất của cửa-sổ xem chúng có nhà NGOÀI WAL chưa. Tag `[s179, luot-10, song-doc-nhat-o-WAL, di-tru-cuu-2-commit, path-spec-gay, tran-99-67, seed-on-behalf-lan-7]`

- **S171+S172 (2026-08-04→05) 2 LƯỢT L10 gộp-seed @S172 `[LEAD SEED ON-BEHALF @closeout; carry `ctx-verifier-no-self-append` **lần 5** — S171 chạy 15:47 mà sổ vẫn dừng S168, chính mày bắt datum này @S172 cờ-5]`:** chuỗi thật nay **9 lượt** (S156·S158·S162·S165·S166·S167·S168·S171·S172). ① **S171 `_tiep-2.md` = `NAP-LAI-SAN-SANG — 9 cờ`** (nặng: acceptance `ctx-audit:314` chưa đạt · run.md 3 ô stale · mồi @close "6" vs đĩa 7 — lead vá 2 cái sau ngay). ② **S172 = `NAP-LAI-SAN-SANG — 9 cờ`, return CLEAN 0-garble.** 🔴 **Cờ đắt nhất ②-cờ-2 = nghề grep-control-dương ĂN TIỀN LẦN 2** (sau ca S168 bác "PARK-1..6"): `run.md` S171 **0 hit** cho `cicd`·`deploy`·`push`·`commit`·`998ea55`·`#446/#447` (**6 từ khác nhau**) trong khi control-dương `canPe`=1 **trong chính file đó** ⇒ chứng phép grep không rỗng ⇒ `cicd-verify-998ea55.md` **MỒ CÔI ngay trong run-folder của nó**, ledger dừng `[ ] E` ⇒ **spawn nào PIN `run.md` để nối sẽ KHÔNG thấy việc duy nhất đang dở**. Lead áp liền: PIN thẳng file cicd + ghi cấm-pin-run.md vào WAL. **Bài nâng 1 nấc:** mồ-côi-trong-chính-nhà-mình là class KHÁC con-trỏ-thối — path đúng, file đúng, **chỉ thiếu người trỏ VÀO** (đảo chiều của inbound-pointer S166). ②-cờ-8/9 lớp **số thối**: "thư day-wake 1 món" thật đĩa **5**; "quá hạn 3 ngày" viết 08-04 nay 08-05 = **4** ⇒ **số đếm TƯƠNG-ĐỐI rụng 1 đơn-vị mỗi cửa**. ②-cờ-4 mù-CÓ-LÝ-DO: STATUS §CURRENT còn "S161→S168 L9" (advance @closeout) ⇒ **đừng đọc STATUS làm bản-đồ hiện-hành giữa phiên**. ②-khoản-4 SẠCH 0 cờ: chạm đĩa kiểm 5/5 chú-thích byte khớp (44.830·11.650·13.132·10.156·74.070) — khác ca S156 chú-thích sai. Delta: `mind_ctx_kb`=48 (owner nâng @S167) ⇒ `_mind` 27.519/49.152 = **56,0%**, dư ~2,6 block ⇒ **luật "nén xong trước pause" S166/S168 HẾT hiệu-lực tới ít nhất MIND-4**. Tag `[s171-s172, luot-8-9, grep-control-duong-lan-2, mo-coi-trong-chinh-nha, so-dem-tuong-doi-thoi, STATUS-khong-phai-ban-do-giua-phien, seed-on-behalf-lan-5]`

- **S165+S167+S168 (2026-07-31→08-01) 3 LƯỢT L9 gộp-seed @S168 `[LEAD SEED ON-BEHALF @closeout-nợ; nguồn từng lượt ghi trong thân — carry `ctx-verifier-no-self-append` lần 4]`:** ① **@`_tiep-2` S165 = `CO — 9 cờ`** (trần-mind 84,8% · run.md tách K1-K8 · 2-vá-WAL — nguồn `_mind-s-9` MIND-3 §E + `_tiep-2.md`). ② **@`_tiep-4` S167 = `CO — 11 cờ`** (3 áp liền: verify-trỏ-gate-K6 · STATUS-622 · chữ-B4; còn lại vào WAL-notes — nguồn `_context-s-9`:164 PAUSE-4(3); 🔴 **`_tiep-4.md` 211B RỖNG RUỘT không mang verdict** — chính mày bắt lại @S168 thành cờ ⑧). ③ **@`_tiep-5` S168 = `CO — 11 cờ`, return CLEAN 0-garble:** cờ đắt: **④ claim "PARK-1..6 nhà HANDOFF" BỊ BÁC bằng grep 0-hit + control-DƯƠNG (`carry:` = 41 hit chứng lệnh sống)** — nghề grep-với-control-dương thành khuôn · ⑤⑥ MIND-2 gánh **3 inbound-pointer / 22 ý** + số-học trần: MIND-5 vừa, **MIND-6 vượt** ⇒ nén phải xong TRƯỚC pause-6 · ⑧ → **LUẬT: verdict PHẢI vào biên-nhận ngay tại cửa** (lead áp liền @`_tiep-5` dòng 6) · ⑨ con-trỏ `_context:61` **sai-ngay-lúc-viết** (file append-only không thối theo thời gian) — class khác con-trỏ-thối. 🔸 Đính-chính đếm lượt: entry S166 dưới tự ghi "LƯỢT 4" là **thiếu S165** — chuỗi thật S156→S158→S162→S165→S166→S167→S168 = **7 lượt**. Tag `[s165-s167-s168, luot-5-6-7, grep-control-duong, inbound-3-pointer-22-y, verdict-vao-bien-nhan, sai-luc-viet, seed-on-behalf-lan-4]`

- **S166 (2026-08-01) LƯỢT 4 @`/tiep` window-4 L9 — verdict `CO — 11 cờ` `[LEAD SEED ON-BEHALF NGAY TẠI CỬA (không đợi closeout — F-01 vá nhịp); nguồn = `_tiep-3.md:6` + return CLEAN 0-garble]`:** B↔`next:` khớp 3/3 (lần đầu 0-lệch sau 4 lượt). **Cờ đắt nhất ⑥ = NÂNG CẤP luật S162 của chính mày:** S162 dạy *"nén = đối chiếu TỪNG ý D có nơi đi"*; nay thấy TRƯỚC khi nén — MIND-2 §D là **NHÀ ĐANG GÁNH 2 con-trỏ** (MIND-1 nén trỏ vào + MIND-3 carry trỏ vào, 22 dòng D) ⇒ **nén một block phải đi TÌM ai đang trỏ VÀO nó trước** (inbound-pointer check), không chỉ soát ý của chính nó. **⑨ số-học chặn trước:** nén MIND-2 theo khuôn cũ chỉ dư 6.331 B < MIND-4 dự phóng 6.776 B ⇒ THIẾU ~445 B — lời khuyên hành-động: MIND-4 viết ≤6.331 B hoặc nén sâu hơn. **⑦ class `claim > việc` bắt ở lớp mềm:** PAUSE-3 khai *"áp CẢ 10"* điểm curator, đĩa chứng bundle 12-ý-1-dòng vẫn nguyên (`_mind:103`) — luật bị phạm nằm NGAY TRONG bundle. **① nghề đọc-vớt artifact chết:** cicd-K3 2.640 B "chỉ §0 = 0/6" NHƯNG vớt mốc recycle-proof PID 5364 @17:11:25 làm thước đo deploy cho lượt re-verify — artifact chết vẫn để lại thước. ⑩ header nén tự-tuyên "18 ý" thật 19 (lần 2 class này — S158 đã dạy "header tự tuyên = phải kiểm"). Tag `[s166, lan-chay-4, inbound-pointer-check-truoc-nen, so-hoc-nen-chan-truoc, claim-ap-ca-10-thuc-mot-phan, artifact-chet-de-lai-thuoc, seed-on-behalf-tai-cua]`

- **S162 (2026-07-30) LƯỢT 3 @`/tiep` window-4 L8 — verdict `CO-CO — 8 cờ` `[LEAD SEED ON-BEHALF @closeout — nguồn: đĩa `_tiep-3.md:6` + return; H2 F-01 HIGH bắt: mày CHẠY THẬT 3 phiên (S153 seed · S158 seed · S162 seed) mà **CHƯA LẦN NÀO tự APPEND** ⇒ hỏng ở khâu GHI, không ở phát hiện; vá gốc = wire diary-append vào `tiep.md §3-ter`, đã lên HANDOFF NEXT-em #1]`:** 8 cờ K1-K8. **Cờ đắt nhất K7 = biến-thể LÙI-MỘT-TẦNG của chính nấc-vàng S156:** S156 mày dạy *diff tập-ý D block-trên vs block-dưới*; lead làm đúng (MIND-3→MIND-4 **SẠCH 6/6**) — nhưng rò **tụt xuống block ĐÃ NÉN**: nén MIND-1 @PAUSE-3 chỉ cấp disposition `(nay …)` cho **3/5 dòng D**, và **đúng 2 dòng không disposition = 2 ý biến mất**: `slot-45` (tiền-đề đã LẬT — trần thật 89,06%) + `detectors :1095/:1760 lọc sub-* sót trio-return (C11b)` (**0 hit ngoài MIND-1** ⇒ nén lần nữa là MẤT HẲN). ⇒ **LUẬT MỚI: nén block = phải đối chiếu TỪNG ý mục D có nơi đi (đóng/carry/con-trỏ), không chỉ đếm byte.** **K2/K3 lớp mới:** con-trỏ `WAL:49` chết + `WAL:8,10` giải-nhầm IM-LẶNG — WAL **tái sinh + đánh số lại mỗi `/pause`** ⇒ mọi con-trỏ số-dòng vào WAL **thối trong 1 cửa**, và thối im lặng vì path vẫn tồn tại nên máy con-trỏ (phép 4) KHÔNG kêu ⇒ **trỏ WAL theo NỘI-DUNG**. K4 orphan ×3 (1 **dương-giả TÊN** — H2 sau đó bác chẩn đoán của lead: glob `*-synthesis.md` **neo ĐUÔI**, không phải thiếu dấu `-`) · K5 nhãn chưa hạ dù đã thi hành · K6 trần đo tươi 89,1% · K8 OVERDUE 8/6→9/6 (sổ máy tươi thắng CẢ WAL lẫn `_mind`). Lead áp: K7 di-trú 2 ý vào WAL→HANDOFF (`[carry:mind-tran-nen-moi-cua]` slot 58) · K8 vá 2 nơi · K2/K3 thành bài học session-log. Tag `[s162, lan-chay-3, van-chua-tu-append-3-lan, ro-tut-xuong-block-da-nen, con-tro-WAL-theo-noi-dung, glob-neo-duoi, seed-on-behalf]`
- **S156 (2026-07-27) LƯỢT CHẠY ĐẦU ĐỜI — spawn-probe ALIVE, nấc `file-land`→CHẠY THẬT @`/tiep` §3-ter (L7 window 3):** verdict `CO-CO — 10 cờ`. Nấc-vàng học được: **4 khoản của mày ĐỀU ra cờ, nhưng cờ NẶNG nhất KHÔNG nằm ở khoản nào cả** — nó là **biến-thể NGƯỢC của khoản 3**: ý mục D **rơi IM-LẶNG** giữa 2 block (MIND-1→MIND-2 mất 3 ý, 0 khai) trong khi khoản 3 chỉ dạy soi "định-đoạt mà chưa đổi nhãn". ⇒ **LUÔN diff tập-ý D block-trên vs block-dưới**, đừng chỉ đọc block top (đúng vệt `absence_looks_like_clean`). Ca đắt nhất: ý "trần `mind_ctx_kb`=32KB" {treo-chờ-anh} rơi ĐÚNG lúc nó thành ràng-buộc thật — đo ra `_mind` **85,5% trần (28.010/32.768 B), dư 4.758 B < mọi block (5.767-7.536)** ⇒ MIND-3 sẽ vượt, luật buộc nén MIND-1.
  **2 nghề rẻ mà ăn tiền:** (a) **đo byte từng block** (`python` split theo `## MIND-`) — 1 lệnh ra cờ trần + số để lead quyết nén · (b) **chạm ĐĨA để bác chú-thích lớp mềm**: §E ghi `sub-implementer-backend-1.md` "(file này không còn)" mà `ls` ra **3.499 B, commit `9c0ac68`, ruột toàn `⏳`** ⇒ nhãn đúng = `skeleton-ruột-rỗng` CÒN SỐNG. Máy `mind-check` chấm `dat` vì nó chỉ soi path TỒN TẠI — **máy đúng, chữ sai**; khoản 4 phải soi CHÚ-THÍCH chứ không chỉ đọc verdict.
  **Bẫy bản-đồ 2 chiều (khoản 2):** `run.md` tail còn `[ ] Đ2-W1/W2/W3` dù WAL `[x]` đã deploy — **ledger run-folder tụt hậu so WAL**; và việc sinh SAU mốc block-top (commit `f4494cf`) thì `_mind` mù **có lý do chính đáng** — vẫn cờ, nhưng phải nói rõ "mù có lý do" kẻo lead đọc thành lỗi cẩu-thả.
  Tag `[s156, lan-chay-dau, spawn-probe-alive, y-D-roi-im-lang, do-byte-tung-block, tran-85-5, chu-thich-vs-dia, ledger-tut-hau]`

- **S153 (2026-07-26) SINH RA — vai-2 vòng Ctx `[seed on-behalf by lead @closeout M9 — mày CHƯA chạy lần nào; nguồn = đĩa]`:** sinh bởi **OWNER-VETO @S153** (anh chốt trực tiếp *"Build đủ 3 vai như hub"* qua AskUser = **owner chốt THẬT**, không phải delegated). Khai-sinh tên `ctx-reload`, **RENAME `ctx-verifier` CÙNG PHIÊN** theo lệnh anh *"đặt tên giống hub/sisters để dễ audit"* — 🔴 lưu ý nghịch-lý dễ nhầm: **VIPIX gọi vai này ĐÚNG là `ctx-reload`** (trùng tên khai-sinh của mày), nhưng **hub** gọi `ctx-verifier`; luật SE = **hub-form khi hub≠sister** (tiền lệ S149 `lead-*`) ⇒ tên mày theo hub.
  **Việc của mày:** @MỖI `/tiep`, **SAU** máy `mind-check` full (~55ms), làm **4 khoản đối-chiếu** rồi trả **BẢN NẠP-LẠI ≤15 dòng**: (1) mục B hướng-tiếp vs WAL `next:` — lệch ⇒ 🔴 **TIN SỔ MÁY** + giương cờ (WAL = sổ chốt; `_mind` = lớp mềm) · (2) mục C kế-hoạch vs bản-đồ việc (WAL chain + run-folder + STATUS §In Progress) · (3) ý mục D đã ĐỊNH-ĐOẠT mà chưa đổi nhãn ⇒ cờ (đổi nhãn = việc lead ở block kế) · (4) con-trỏ mục E — đọc verdict 3-trạng-thái của máy, KHÔNG tự phán lại.
  🔴 **Dòng BẮT BUỘC cuối return:** `LEAD-PHAI-NHAC-LAI: <tên-ý-D> · <E-verdict>` — đây là **bằng-chứng NỘI-DUNG** của sàn khoản 3 thư hub: lead phải nhắc lại chi tiết chỉ-biết-nếu-đã-đọc; câu "đã nạp" suông KHÔNG tính, metadata ts/hash KHÔNG tính. Thiếu dòng này = sàn khoản 3 thành khai suông.
  **Ranh:** KHÔNG nạp NỀN hộ lead — nạp nền = nghi-thức LEAD theo khoá `tiep_reload` (mode `rut-gon`, ~40-60K tok; nền-full SE đo tươi **596.316B ≈ 149-199K tok**, nặng hơn nền hub 1.36× nên rút gọn là quyết (37)(b)). Mày CHỈ lo lớp mềm.
  **Nấc THẬT:** `file-land @S153` — **spawn-probe ALIVE CHƯA CÓ** (T9 phiên sau restart CLI); lượt chạy đầu = dogfood 4-cửa @T9. Wire: `tiep.md §3-ter`.
  Tag `[s153, sinh-ra, owner-veto-3-vai, rename-hub-form-nghich-ly-vipix, vai-2-nap-lai-@tiep, lead-phai-nhac-lai, chua-spawn-probe]`

## S158 (2026-07-28) @`/tiep` L7 window 5 — verdict `CO-CO 8 cờ`

- **Gói `[LEAD SEED ON-BEHALF @closeout M9 — mày CHẠY THẬT nhưng KHÔNG tự ghi; nguồn = `_tiep-4.md` + xác nhận H2 `grep -c S158`=0]`:** cờ NẶNG nhất **K3** — **7 ý mục D của MIND-3 rơi IM-LẶNG sang MIND-4, 0 khai**, trong khi header nén MIND-3 **tự khai** *"MIND-4 đã nhận lại các ý còn sống"* ⇒ **claim BỊ BÁC bằng grep** (`ring5`/`slot (41)`/`liên-lane`/`mẫu-số`/`vòng KIỂM`/`nhịp` = 0 hit). Đây là biến-thể mày đã học @S156 (*"LUÔN diff tập-ý D block-trên vs block-dưới"*) — nay nâng 1 nấc: **header nén TỰ TUYÊN đã bảo toàn = phải kiểm, đừng tin** (lớp `absence_looks_like_clean`).
  **2 nghề rẻ mà ăn tiền, dùng lại lần 2 và trúng cả 2:** (a) **đo byte từng block** ⇒ bắt trần 92,5%, dư 2.463 B, MIND-5 cần 6.536 B, MIND-1 chỉ còn 1.868 B ⇒ **luật nén KHÔNG đủ chỗ** — lead re-đo độc lập xác nhận, thành câu chờ-owner (45); (b) **chạm ĐĨA bác chú-thích** ⇒ đóng cờ C9 cửa trước (`sub-implementer-backend-1.md` CÒN SỐNG 3.499 B).
  🔴 **Cờ K1 nhỏ mà đắt:** ý *"thứ tự wave"* chỉ còn sống ở `WAL:24`, **0 hit** trong `_mind`+`_context` ⇒ WAL bị §6.4 reset là mất hẳn. Bài: ý chỉ-sống-ở-WAL = ý **sắp chết**, phải nêu để lead di-trú.
  🔸 **Lead re-đo bác 1 điểm của mày (nhận):** mày báo `Gate 5 anchor` *"chưa có nhà"* — thật ra `WAL:18` đã có; nhưng `lead-gap` sau đó chứng **WAL sắp bị reset** nên kết luận *"vô gia cư"* vẫn đúng ở tầng hệ-quả.
  Tag `[s158, lan-chay-2, header-nen-tu-tuyen-phai-kiem, do-byte-tung-block-lan-2, y-chi-song-o-WAL-la-y-sap-chet, seed-on-behalf]`

> **Persistent diary cross-session.** Auto-injected first ~200 lines at spawn (L1 HOT).
> Update BEFORE every stop. Tiered Memory v1: L1 HOT soft-cap ~30KB · L2 `archive/` on-demand · L3 RAG just-in-time. Keep entry ≤ 1.5K chars (gotcha #53).
> **NEW agent S153 (2026-07-26)** — vai-2 vòng Ctx; anh em: `ctx-curator` (@pause) · `ctx-audit` (@2-bookend).

## S175 (2026-08-05) — vòng Ctx @`/tiep` cửa-sổ 3 phiên-LOGIC L11 [LEAD SEED ON-BEHALF @pause cổng C2 — mày trả `NAP-LAI-SAN-SANG — 13 cờ`, tools khai KHÔNG Write/Edit nên không tự ghi được]

- **Verdict:** `NAP-LAI-SAN-SANG — 13 cờ`. Lead tự đo lại **2 cờ nặng nhất, CẢ HAI CONFIRMED** — đây là lần vai-2 bắt đúng thứ lead không thấy:
  - **Cờ 3:** `runs/2026-08-05-S174-khkk-style-audit/run.md` bảng Owner-items còn ghi **O2 "chưa làm"** (thật ra `a1b9cbb` đã ship, prod verify byte-level) và **O3 "cần BE+migration"** — trong khi **dòng 72 CỦA CHÍNH FILE ĐÓ** ghi claim ấy là *"SAI, đã đính chính"*. Bản sai nằm **Ở TRÊN**, chỗ người đọc chạm trước. Lead đã flush ngay.
  - **Cờ 12:** verdict vòng Ctx cửa-sổ-2 **chỉ sống ở `_mind:94/96`** — `grep ctx-verifier _context` = **0**; `ctx-curator` = 2 hit nhưng **cả 2 ở PAUSE-1** (control-dương `PAUSE-2` = 3 ⇒ grep sống). Con-trỏ trỏ tới **cái nhà chưa từng nhận hàng**.
- 🔴 **Nghề rút ra (mới, chưa có trong sổ):** con-trỏ hỏng có **2 tầng** — tầng PATH (file tồn tại không) và tầng NỘI-DUNG (đích có thật chứa thứ được trỏ không). Máy `mind-check` phép (4) chỉ soi tầng PATH ⇒ **mù hoàn toàn tầng 2**. Vai người là lớp duy nhất bắt được. ⇒ khi kiểm con-trỏ, luôn `grep` chuỗi đích **TRONG file đích**, đừng dừng ở `ls`.
- **Cờ 11 — truy được GỐC RỄ một phép đo sai của lead:** WAL ghi 2 thư `loi-do-luong` "0 hit toàn đĩa" trong khi thư đã tồn tại 5,5 giờ. Nguyên nhân: probe dò `../AI_INFRA` (không tồn tại — nhà thật là `D:\Dropbox\CONG_VIEC\AI_INFRA`) **+ `2>/dev/null`** ⇒ **0-hit RỖNG đọc thành "chưa có"**. Mày tự nhận cũng dính bẫy này ở lượt đo đầu, thoát nhờ đếm tổng file làm control-dương.
- **Khoản 1 (hướng-tiếp vs `next:`):** `next:` chỉ chở **3/6 chặng** của §B — 3 đuôi (*thăng luật E4 ➊ · synthesis S173 · 5 điểm governance*) chỉ sống ở `_mind` + chain. Lead đã nối đuôi vào `next:`.
- Tag `[s175, ctx-verifier, con-tro-2-tang-may-mu-tang-noi-dung, 0-hit-rong-vi-sai-duong-dan, next-cho-thieu-chang, seed-on-behalf]`
