# adap-report — 2026-06-15-Governance-harness-7-writing-quality

> SISTER = SOLUTION_ERP. Report-format LOCK (5 trường). Tạo ở S64 (2026-06-15), áp bởi em main solo (governance authoring là single-writer, đúng tinh thần H6.1 "trivial/governance → solo"). Báo cáo này tự nó là nội dung hướng ra ngoài, nên được viết theo đúng luật Harness-7 mà nó đang adopt.

## 1. id-broadcast

`2026-06-15-Governance-harness-7-writing-quality` (from: ai_infra · category: **Governance** · reviewer_gate: **PASS_WITH_FIXES** — 0C/2M/2m, tất cả fix đã áp pre-publish · nac: published · targets: **all-fit** · content_sha256 `a4580ea9…` đã verify khớp). Nội dung broadcast: một sàn chất lượng văn bản cho phần **hướng ra ngoài**, gồm ba điều khoản — **O1** mọi giao tiếp hướng ra ngoài phải viết tiếng Việt rõ nghĩa, câu hoàn chỉnh, đủ dấu câu, đúng ngữ pháp; **O2** ranh giới bất đối xứng, phần nội bộ vẫn giữ lối viết nén; **O3** thực thi qua cổng reviewer hướng ra ngoài cộng với việc tự đọc lại trước khi gửi.

## 2. nac G-011

**EXECUTED-FILE** cho phần ghi rule và wiring reviewer · **VERIFIED-LIVE ngay session này** cho phần lead tự kiểm · **VERIFIED-PENDING-RESTART** cho phần reviewer thực thi.

- **O1 + O2 (rule canonical)** = EXECUTED-FILE: luật đã ghi vào `docs/rules.md §1.1`, nêu rõ phạm vi chỉ hướng ra ngoài và ranh giới bất đối xứng với phần nội bộ.
- **O3 (cổng reviewer)** = EXECUTED-FILE → VERIFIED-PENDING-RESTART: đã thêm Category 6 vào `.claude/agents/reviewer.md`, nhưng agent `.md` không hot-reload nên reviewer chỉ thực thi trục mới sau khi restart CLI và được spawn cho một target hướng ra ngoài.
- **O1 (lead tự kiểm)** = VERIFIED-LIVE session này: em main đã viết các phản hồi cho anh, adap-report này, và email báo cáo AI_INFRA theo đúng chuẩn câu hoàn chỉnh — đây là phần thực thi quan sát được ngay, không chờ restart.

## 3. evidence

- **Rule canonical:** `docs/rules.md §1.1 "Chất lượng viết — hướng ra ngoài vs nội bộ"` (O1/O2/O3 + điều khoản giữ nguyên token kỹ thuật).
- **Reviewer gate:** `.claude/agents/reviewer.md` — thêm `Category 6 — Writing quality (outward-facing content ONLY)` (4 trục: câu hoàn chỉnh · dấu câu · ngữ pháp · rõ nghĩa), cập nhật dòng "Apply ALL categories" thành có điều kiện, và thêm một dòng vào bảng Report format.
- **Lineage doc:** `.claude/agents/README.md` — thêm dòng "Upgrade S64 (Harness-7 writing-quality adopt)".
- **Hash verify:** recompute `SHA256(body)` của broadcast = `a4580ea9f60a062d41d21fa3da7c8703660a73ab6d856e7d839f4cbda91b269c`, khớp đúng `content_sha256` khai báo → nội dung xác thực, không bị sửa.
- **SELF-CHECK của broadcast (5 mục) đều thỏa:** rule ghi vào nguồn canonical với phạm vi outward-only ✓ · cổng reviewer thêm trục chất lượng viết ✓ · hiểu rõ ranh giới bất đối xứng (nội bộ giữ nén theo §6.4/§6.5) ✓ · token kỹ thuật giữ nguyên ✓ · không hạ sàn nào đang có (add-only) ✓.

## 4. tailored-gì + skip-gì-vì-sao

- **FUNCTION-floor adopt ĐẦY ĐỦ:** O1, O2, O3 đều áp, không cắt giảm.
- **FORM tailored cho roster và doc thật của SE:**
  - Tham chiếu `§F1` của AI_INFRA (quy ước viết nén nội bộ) được ánh xạ sang nguồn tương đương của SE là **`docs/rules.md §6.4` (audit + compact định kỳ) và `§6.5` (consolidate KEEP-vs-CUT)** — đây chính là kỷ luật viết nén nội bộ của SE.
  - Bốn nhóm "hướng ra ngoài" được cụ thể hóa bằng đường dẫn thật của SE: `broadcasts/outbox/` cho email và broadcast, `docs/governance/adap-reports/` cho adap-report, và hội thoại của em main với anh.
  - Cổng reviewer (O3) gắn vào agent `reviewer` có sẵn trong roster 11-agent, dưới dạng một Category **có điều kiện** (chỉ kích hoạt khi target gồm nội dung hướng ra ngoài), để không can thiệp các lần review code thuần.
- **SKIP / n-a: không có.** PROJECT-FIT của broadcast là 6/6, và SOLUTION_ERP giao tiếp với anh hằng ngày cộng với gửi email cho các sister, nên luật áp trọn vẹn, không phần nào là n-a.

## 5. honest-caveat

- **Phần reviewer thực thi (O3) còn ở mức verified-pending-restart.** File đã sửa xong, nhưng vì agent `.md` không hot-reload nên trong chính session này reviewer chưa chạy với Category 6. Sẽ lên mức verified khi restart và spawn reviewer cho một target hướng ra ngoài.
- **Về chữ ký body-hash — một đính chính trung thực:** lần verify đầu của em báo "mismatch", nhưng nguyên nhân là **lỗi của chính em**, không phải AI_INFRA mis-stamp. PowerShell 5.1 đọc file UTF-8-no-BOM bằng encoding mặc định Windows-1252 nên giải mã sai ký tự tiếng Việt (đúng họ gotcha #61), khiến hash tính trên chuỗi đã hỏng. Sau khi đọc lại bằng UTF-8 tường minh, hash khớp tuyệt đối. Vì vậy **không có mis-stamp và không có tamper để báo** — khác với adap-request S63 về `eol=lf` (đó là một lớp lỗi cross-checkout có thật). Bài học cục bộ: khi verify body-hash trên Windows phải đọc UTF-8 tường minh, không tin `Get-Content` mặc định.
- **Đây là một sàn chất lượng, chỉ thêm chứ không bớt.** Harness-7 không hạ quyền tự quyết hình thức (§F4) và không hạ bất kỳ cổng nào đang có; Smart-Friend guard của reviewer vẫn nguyên.
- **Phần "lead tự kiểm" là một sàn hành vi, không phải automation cứng.** Em main thực thi bằng nếp đọc lại một lượt trước khi gửi, chứ không phải một cơ chế tự động chặn.

— se (em main, S64 2026-06-15, đang chạy Opus 4.8 (1M) do H5 fallback). Gate: **em main self-gate** (governance doc-work, low-risk, đã grep-verify các edit đã landed) — đúng precedent S56/H4 và đúng tinh thần H6.1 (governance authoring là single-writer, không fan-out).
