# harness-refine-return — @bookend-close S185 (lead scribe theo §2.1.9(c))

> Vai trả 2026-08-10 ~00:5x (sau resume limit-reset — chết 1 lần giữa "exactness pass", nối 0-mất) · label `Vòng-3 harness-refine close s185` · PIN input = `harness-eval-return.md`

REFINE: 3 action (0①/1②/1③/1④) + 15 BÁC — 0 owner-gated

## PHÁT HIỆN CHI PHỐI — span ≠ nhãn heading (suýt sinh action PHÁ)

Bản nháp A1 đầu = "move span `## S152` (2.502 B) của impl-be" — MỞ RA ĐỌC trước khi phát: span chạy tới EOF, **chứa cả entry S182 + S185 viết TỐI NAY** (`:104`=S152 thật · `:106`=S182 · `:108`=S185). Thi hành nguyên văn = archive mất nội dung phiên đang chạy. Đo 4/4 file cùng bệnh (impl-be nhãn S152/ruột-tới-S185 · lead-stale S159/S185 · ring2 S159/S182 · tooling S162/S182). Parser `memory-archive-gate.ps1:153` cắt `^#{2,3}\s`, span cuối tới EOF (`:159`), `keep_floor` giả định "bottom=newest" (`:177`) — corpus này đặt mục CẤU TRÚC (Role baseline/Runs) ở ĐẦU ⇒ máy chĩa đúng phần phải giữ. Khối byte TRÊN heading đầu không thuộc span nào: impl-be 15.309 B (60,0%) · reviewer 17.505 (55%) · ring2 16.008 (50%, +4.902 từ S173) · lead-stale 13.713 (44%) · tooling 11.398 (36%) · harvest 10.183 (36%).
Kiểm số học khớp máy từng byte: lead-stale 30.852−638(`## Role baseline`)=**30.214** = đúng signal-3; ring2 31.781−23.102=**8.679** = đúng 2 span `Role baseline`+`Runs`.

## 3 ACTION

| # | action | lớp | đối-tượng | trigger | chốt-dừng | owner-gate |
|---|---|---|---|---|---|---|
| A1 | Move dòng `:104` (bullet S152 thật, **431 B đo tươi**) → `archive/2026-07.md` + đổi tiêu-đề `:103` khớp ruột (S182+S185) | ③ | `implementer-backend/MEMORY.md:103-104` | T7+signal-2 (99,7%, còn 85 B; máy KHÔNG bao giờ đề-xuất được — dưới cap thì skip, over thì keep_floor che) | attempt-1; vẫn ≥99% hoặc tái-vượt → leo-thang, CẤM lần 2 | N |
| A2 | Distill `## 📅 Runs` (**8.463 B**, 27,4% file) → tóm ≤2.100 B + con-trỏ; verbatim moved-not-cut → `archive/2026-07.md` (vai 0 file archive) | ④ | `lead-stale-auditor/MEMORY.md` span `## 📅 Runs` | T5 120,5% · T6 >soft · T16 WARN keep-floor · signal-3 (after-est 30.214 vẫn >cap; máy tự in lối `:201` "SPLIT/condense by hand") | attempt-1 (khai tiền-sử S173 xếp #2 nhưng 0 action); còn >25.600 → leo-thang | N |
| A3 | Promote luật vào diary harness-refine: *"span ≠ nhãn. CẤM neo action vào tiêu-đề span / PROPOSE gate mà chưa mở span đọc DÒNG MỚI NHẤT. Pool drain = span ngoài last-5 theo VỊ TRÍ — corpus đặt mục cấu-trúc ở đầu ⇒ máy chĩa vào phần phải giữ."* | ② | `harness-refine/MEMORY.md` (59% cap, an toàn) | T16 + signal-3/4; lặp ≥2 (S173 mù-trên-heading-đầu → S185 4/4 file + suýt action phá) | attempt-1; vòng sau vẫn lọt → leo-thang (luật-vào-diary-không-đổi-hành-vi = build-gap) | N |

## LỚP ① REINJECT = 0 CÓ LÝ DO
T24 impl-fe 12/13 ⇒ đúng 1 mục MISS nhưng eval không nêu TÊN; `.mfe-state.json` 0 per-item; cửa duy nhất = `mfe-eval.ps1 -Detail` (`:32`, comment `:285-286` ghi đích danh mục đích cho reinject-lane) — grep toàn repo **vẫn 0 call-site** truyền `-Detail`. Lead chạy tay 1 lần @S173, chưa cắm nghi-thức ⇒ attempt-2 cùng vật cản ⇒ **ESCALATE E1, không đề-xuất lại**. 5 vai vượt cap KHÔNG phải floor-rot (nội dung còn trên đĩa — tràn cap, đúng lớp ③/④).

## 5 ESCALATE (bối cảnh, không phán quyết)
- **E1** `-Detail` chưa cắm cửa gọi — 12 phiên sau S173; lane ① mù vòng 3/4. Đề nghị: eval-return kỳ sau chở kèm output `-Detail`, hoặc cắm 1 dòng vào bookend. Wiring ⇒ ngoài 4 lớp.
- **E2** baseline `measured` rữa 16/17 + 9 vai 0-row + hẹn re-sync trễ: `measure-agent-memory.ps1` là print-only 0-writer ⇒ đây là **phép chép** (số tươi 28/28 có sẵn trong script-arm-output), không phải phép đo lại — trình lead.
- **E3** archive-gate 2 khuyết cùng parser: (i) 36-60% byte trên heading đầu ngoài pool; (ii) keep_floor giả định newest-ở-đáy ngược corpus. Sửa script = tooling; đổi quy-ước hình-dạng diary = quyền OWNER (tiền-lệ S173). Chỉ nộp số.
- **E4** tooling-auditor tái-phình 19.055→30.981 (+11.926/23 phiên) sau archive S162 ĐẠT — câu hỏi đúng là TỐC-ĐỘ không phải MỨC; lặp archive mù = vá mức cho bệnh tốc-độ.
- **E5** (INFORM cho C-6 đang treo): PROPOSE ring2 "move 2 lowest-value" thực chất = 2 span `Role baseline`+`Runs` (8.679 B khớp), `Role baseline` ring2 chứa nội dung tới S182 ⇒ **value-scan của lead bác ĐÚNG** — máy không đưa "2 mục giá-trị thấp", nó đưa 2 span duy nhất lọt ngoài last-5 vì file chỉ 7 span. Chốt C-6 trên căn cứ này.

## 15 BÁC (tóm — đủ danh mục trong output nguyên văn vai, giữ tại transcript + các số đã chép đủ ở trên)
(1) ring2 archive-lần-2 khi C-6 đang bay = vòng CG-1 cấm → E5 · (2) reviewer 122,4% — vừa harvest 15' trước + WARN value-floor, động vào = tháo việc vừa làm · (3) tooling → E4 · (4) harvest-curator — sổ của vai vừa harvest · (5) BÁC suy-luận CỦA CHÍNH MÌNH "S185=0 ⇒ không bị harvest tối nay" (nhãn = phiên NGUỒN, con ĐO từ chối phán — neo vào proxy đã hạ cấp = bẫy S153) · (6) bản nháp A1 span-2.502B — tự bác, thành A1-431B · (7) ctx-audit 97,4% — kỷ luật 1-vách/lượt, ghi tên vòng sau · (8) baseline → E2 (ngoài 4 lớp) · (9) T27/T28 hotload+headroom — NHƯỜNG lead-gap (6/6 nguồn là hot-feed LEAD; target 210K = số OWNER) · (10) T31 deep — đang chạy cùng bookend, đề-xuất = rác · (11) T14 index-freshness — proxy đã hạ cấp · (12) T17/T19 strike-state — lane tooling · (13) T36 tuổi-gist — action không neo số · (14) promote riêng bài "-Detail" — thuốc là cắm dây, không phải ghi nhớ → gộp E1 · (15) distill archive/2026-06 impl-be — đã có twin gist (bài S162-A2 kiểm twin trước).

## 3 CAVEAT
1. A1 KHÔNG giải quyết impl-be (còn ≈98,0% — khối thật 15.309 B trên heading đầu, chưa liệt per-bullet nên không đề action không-neo). Đừng đọc thành "đã sạch".
2. Diary S173 chép low-water 21.760 — key `low_watermark_bytes` nay đọc None ⇒ có thể đổi tên/dời; lead đừng dùng số diary mà không mở budget.
3. Read-only = chặn-thiếu-tool; 0 redirect lượt này; lead soát git status + wal-commit (Stop-hook auto-commit agent-memory).
