# score-counter Agent — Persistent Memory > **Vai TẦNG-2** của luật chấm điểm đáp-ứng-yêu-cầu (canonical `docs/governance/harness-11-engine.md` **PHẦN P**). Đẻ @S181 2026-08-07, wave W4b, chủ dự án phán **P4**. - **S181 (2026-08-07) — LƯỢT CHẠY ĐẦU ĐỜI, và nó BẮT LỖI CỦA TẦNG-1.** Verdict `SCORE-T2: KHÔNG ĐO ĐƯỢC — 1 mục lặp>=2 / 8 mục tổng`. 🔴 **Nấc vàng:** lead (tầng-1) đếm **3 mục**, tao đếm **1**. Lý do lead sai: đếm theo **DÒNG** thay vì theo **MỤC** — sổ mã hoá MỘT yêu-cầu thành 4 mã (`YC-002/004/005/006`). Lập luận chốt: luật lấy ví dụ *"mục nhắc 5 lần trừ đúng 1, KHÔNG phải 4"*; mã hoá ca đó thành 5 dòng thì đếm-dòng ra **4** = đúng con số luật gọi là SAI ⇒ số 3 của lead là `4−1`, **cùng dấu vân tay**. **Hệ quả đã land:** `so-yeu-cau-chu-du-an.md` thêm cột `nhắc-lại-của` + luật đếm; `nhip-no-probe.ps1` vá đơn vị LẦN→MỤC (fault-inject: 1 mục nhắc 5 lần ⇒ `nhac2+ 1`, không phải 4). Cũng đúng luật P.7: sổ THƯA (1 ngày/1 phiên · 1/3 khối có dữ liệu · 1 sự cố lặp duy nhất) ⇒ **từ chối nặn số**. 🔸 **Cấu hình lượt này:** chạy KHI CHƯA có `effort: max` (khoá được thêm SAU, do `tooling-auditor` bắt) — lượt sau so kết quả thì nhớ đây là 2 cấu hình khác nhau. Tag `[s181, luot-dau, bat-loi-tang-1, dem-MUC-khong-dem-DONG, tu-choi-nan-so, chay-truoc-khi-co-effort-max]` - **Ranh cứng phải nhớ mỗi lượt:** CẤM xem điểm tầng-1 trước khi đếm xong. Pin có kèm điểm tầng-1 ⇒ TỪ CHỐI + khai. Đọc rồi thì tính độc lập **không phục hồi được trong cùng lượt**. - **Bẫy số học:** đơn vị trừ là **MỤC**, không phải **LẦN**. Mục nhắc 5 lần trừ đúng **1**. - **Bẫy nguồn thưa:** sổ ít dòng ⇒ công thức **luôn** cho 10/10 ⇒ phải trả `KHÔNG ĐO ĐƯỢC`, cấm nặn số. - **S182 (lead-seed, C2 /pause):** registry-probe BƯỚC 0.6b — spawn THẬT lần đầu sau restart, trả `ALIVE|score-counter` 0-tool đúng lệnh (tool_uses=0 khác #53 vì không bịa việc). Slot (73) đóng 5/5. → `runs/2026-08-07-S182-bookend-open/spawn-probe-registry.md` ## S189 (2026-08-11) — T2 khối chấm điểm @open · 4 mục nhắc>=2 — BỊ T3 BÁC phép đếm - T3 phán 2 lỗi: L1 đếm trên bản sổ CHƯA-được-chủ-sổ-sửa (lấy số 2 ở satellite YC-010 làm dữ liệu YC-008) => hết tái lập từ nguồn đã ký; L2 thay vị-từ "sổ đủ dày" P.7 bằng phép thử bão-hoà TỰ-QUY-CHIẾU (van rỗng) + baseline @S181=10/10 trái sổ:64 + sót A8 cấm-in-điểm. Tầng-1 (máy nhip-no) = 0 lỗi, tái lập verbatim. - Cái vẫn ĐỨNG: lỗi dữ liệu YC-010 THẬT (satellite duy nhất mang số, gốc đọc 1). 🔴 **ĐÍNH CHÍNH @S192: ô CHƯA từng được lật — đĩa 2026-08-13 vẫn gốc=1/satellite=2**; câu cũ "chủ sổ lật ô rồi" là claim SAI, đã gỡ. BÀI: phát hiện lỗi nguồn => GIỮ LUẬT đếm ra số-theo-luật + báo lỗi dữ liệu RIÊNG — không chệch luật để "đúng bản chất". -> .claude/workflows/runs/2026-08-10-S189-bookstart-open/sub-score-counter-open-S189.md + sub-score-count-auditor-open-S189.md ## S192 (2026-08-13) — T2 bookend @open · **5 mục lặp>=2 / 26 mục tổng** - YC-002(4) · YC-013(2) · YC-018(2) · YC-027(2) · YC-031(3). Sổ đã dày hẳn so @S181 (7 ngày · ~11 phiên · 3/3 khối · mục lặp rải 5 phiên) ⇒ KHÔNG trả `KHÔNG ĐO ĐƯỢC`, nhưng khai rõ "phán đủ-dày = quyền tầng-4". Đếm xong TRƯỚC khi mở file khác; 0 lần gặp số tầng-1. -> `.claude/workflows/runs/2026-08-13-S192-bookend-open/sub-score-counter-S192.md` - [Phép đếm tầng-2 — thủ tục + 2 bẫy](phep_dem_tang2.md) — luật `nhắc-lại-của`, bẫy satellite-mang-số, cách xử vị-từ P.7 chưa lượng-hoá ## S195 — tầng-2 chấm đáp-ứng-yêu-cầu @close (L16 w4) [LEAD SEED ON-BEHALF] - **task:** tự đếm độc lập số MỤC nhắc ≥2 từ sổ đã ký; pin **cố ý không lộ số tầng-1**. - **nấc:** verified — `5 muc nhac>=2 / 29 muc`; tầng-3 chấm **TẦNG-2 ĐÚNG**, tầng-1 SAI. - **evidence:** `runs/2026-08-14-S195-bookend-close/run.md` + `docs/governance/error-ledger.md` RCA `SCORE-T1-S195` - ✅ **Vai DUY NHẤT trong phiên KHÔNG dính #53** (6/7 vai còn lại đều garble, phải resume). - ✅ **Mày ĐÚNG, máy SAI:** mẫu số **29** (36 mã phân biệt − 7 satellite) vs máy `muc 28`. Tầng-3 truy ra gốc: `nhip-no-probe.ps1:248` `bad++; continue` ⇒ khi có dòng vỡ thì `muc` là **mẫu số TỰ KHAI LÀ THIẾU**; lead nhấc `28` mà bỏ vế cảnh báo. ✅ Lead **vá gốc**: nối dòng rách `so-yeu-cau:58-59` → **máy tự đổi 28 → 29**, hội tụ với mày. - ✅ **Ca biên (c) mày dự báo ĐÚNG CƠ CHẾ:** `YC-028` bị CRLF xé đôi ⇒ *"nếu chỉ chạy 1 lệnh `awk NF==10` thì mục này rơi im lặng khỏi mẫu số"* — đó **chính xác** là thứ đã xảy ra với máy. - 🔴 **2 ca biên còn treo cho tầng-4:** (a) `YC-010` là satellite nhưng cột số-lần = **2** trong khi gốc `YC-008` = 1 ⇒ nếu chủ sổ xác nhận số đó thuộc `YC-008` thì **n = 6**; (b) `YC-032` có 2 satellite mà gốc vẫn 1 (sổ khai lý do ở cột 7: *lệnh đi-tiếp ≠ nhắc-lại*). Mày **không tự lật** — đúng ranh.