# sub-task-3 — Việc 2a: đính-chính dòng 8 adap-report bookend

> Role: implementer (Write/Edit) · Wave-1 item 4 · run S127-adap-dot-16-07 · 2026-07-16
> VERDICT: **PASS** — 1 file đích sửa đúng, 3/3 verify khớp expected, isolation sạch.

## File đích (DUY NHẤT)
`docs/governance/adap-reports/2026-07-15-Governance-h17-cadence-update-bookend.md` — dòng 8.

## Ground-truth ĐĨA trước edit (F9 anchor)
Dump `python repr` dòng 8 TRƯỚC edit:
```
'- Hub GỠ counter khỏi chính mình, chuyển **bookend** (rà đầy-đủ 2-đầu mỗi phiên). 7 khoản cũ SAI (3 nhịp · "ở nguồn" 6/15/3 · `>=`/OVERDUE · "đến hạn" trigger · "delta run-2" · self-check `>=` · "dogfood mốc-0").'
```
- BACKTICK_COUNT = 4 → 2 cặp quanh `>=` (F9 xác nhận dòng gốc CÓ backtick ×2).
- Quote-chars = chỉ `"` (U+0022 straight ASCII) — KHÔNG curly.
- Interpunct = U+00B7 (·).
- before-text KHỚP ĐĨA 100% → đủ điều-kiện exact-edit (KHÔNG DỪNG).

⚠️ F9: KHÔNG transcribe after-text từ draft:64 (draft:64 đánh rơi backtick quanh `>=`). Exact-edit lấy backtick TỪ ĐĨA.

## Diff áp (whole-line Edit, atomic)
- **Phân-loại (bước 2):** `7 khoản cũ SAI (` → `7 khoản cũ cần soi lại — **5 sai/sai-một-nửa + 2 chỉ đổi-cách-đọc** (`
- **Note 1 (bước 3):** sau `"đến hạn" trigger` chèn ` [lõi (a) máy-không-tự-bắn VẪN ĐỨNG]`
- **Note 2 (bước 3):** sau self-check `>=` (mục có backtick) chèn ` [idempotent GIỮ]`
- GIỮ nguyên 7 mục enumeration + 2 cặp backtick quanh `>=` + quote straight + interpunct U+00B7.
- File .md → em-dash `—` GIỮ (KHÔNG áp #30 pure-ASCII vốn chỉ cho .ps1).

## Dòng 8 SAU edit (PASTE thật)
```
- Hub GỠ counter khỏi chính mình, chuyển **bookend** (rà đầy-đủ 2-đầu mỗi phiên). 7 khoản cũ cần soi lại — **5 sai/sai-một-nửa + 2 chỉ đổi-cách-đọc** (3 nhịp · "ở nguồn" 6/15/3 · `>=`/OVERDUE · "đến hạn" trigger [lõi (a) máy-không-tự-bắn VẪN ĐỨNG] · "delta run-2" · self-check `>=` [idempotent GIỮ] · "dogfood mốc-0").
```

## Verify (PASTE output thật)

### V1 + V2 — Select-String -Path (F5 shape GIỮ, KHÔNG Get-Content|Select-String)
```
PATTERN_5sai_HITS: 1
  L8: - Hub GỠ counter khỏi chính mình, chuyển **bookend** (rà đầy-đủ 2-đầu mỗi phiên). 7 khoản cũ cần soi lại — **5 sai/sai-một-nửa + 2 chỉ đổi-cách-đọc** (3 nhịp · "ở nguồn" 6/15/3 · `>=`/OVERDUE · "đến hạn" trigger [lõi (a) máy-không-tự-bắn VẪN ĐỨNG] · "delta run-2" · self-check `>=` [idempotent GIỮ] · "dogfood mốc-0").
PATTERN_7khoanSAI_HITS: 0
```
- `-Pattern "5 sai"` → **1 hit** (expected 1) ✓
- `-Pattern "7 khoản cũ SAI"` → **0 hit** (expected 0) ✓

### V3 — backtick ×2 quanh `>=` + toàn-vẹn enumeration (python cross-check)
```
BACKTICK_WRAPPED_GTE_COUNT: 2
TOTAL_BACKTICKS: 4
HAS_5sai: True
HAS_old_SAI: False
HAS_note1: True
HAS_note2: True
ENUM_ITEMS_interpunct_count: 6
```
- backtick quanh `>=` = **2** (F9 GIỮ ×2) ✓ · total backtick = 4 (2 cặp) ✓
- 6 interpunct = 7 mục enumeration GIỮ nguyên (không thêm/bớt mục) ✓
- note1 + note2 present ✓ · "7 khoản cũ SAI" cũ mất ✓

## Isolation (B6/AUDIT)
`git status --porcelain` sau edit: file MÌNH đổi = CHỈ `docs/governance/adap-reports/2026-07-15-Governance-h17-cadence-update-bookend.md`.
Các file M khác (rag.json / backfill.ps1 / reviewer.md / session-start.md) = worker Wave-1 song-song (item 1/4a/4c/2b), KHÔNG phải tôi. 0 chạm agent-memory · 0 chạm MD canonical · 0 chạm sub-md agent khác · 0 store_memory/RAG.

## Acceptance-checklist
| Mục | Expected | Đo | Verdict |
|---|---|---|---|
| "5 sai" | 1 hit | 1 | PASS |
| "7 khoản cũ SAI" | 0 hit | 0 | PASS |
| backtick quanh `>=` | ×2 | 2 | PASS |
| enumeration 7 mục | GIỮ | 6 interpunct = 7 mục | PASS |
| 2 note ngoặc vuông | present | note1+note2 True | PASS |
| exact-edit before khớp đĩa | khớp | repr khớp 100% | PASS |
