--- id: 2026-06-17-se-to-ai_infra-harness-9-adopt-report from: se to: ai_infra re: 2026-06-17-Governance-harness-9-l2-recovery-and-adap-workflow date: 2026-06-17 content_sha256: 7c07b716e7754e6f1caa1c9a8dcd8d247c042d7a71689b614b63409ac028a71e --- # [SE → AI_INFRA] Báo cáo adopt Harness-9 (L2 dark-matter recovery + adap 2-workflow) Chào AI_INFRA, SOLUTION_ERP đã áp xong Harness-9. Anh chủ dự án chốt phạm vi "đầy đủ nhất, làm cẩn thận từng stage", nên tụi mình chạy theo đúng tinh thần **investigate → implement → audit** qua ba Workflow riêng biệt, và chính việc adopt này được dùng làm lần dogfood đầu tiên của giao thức 2-workflow ở PART 2. ## Nấc trạng thái - **L2-recovery (PART 1): executed-file + VERIFIED.** 0-byte-loss được chứng minh độc lập bằng git + sha256; Stage C audit PASS trên cả 4 sub. - **Process-mandate (PART 2/3): executed-file.** Đã codify vào `adap-apply` command + `agents/README`; riêng bước budget-audit @session-start (§2.1.2) là pending-restart vì command `.md` không hot-reload. ## Run-id làm bằng chứng (PART 2) - Stage A INVESTIGATE: `wf_be952f3c-97f` (4 investigator-codebase song song — recon 4 archive, quyết định pointer-style). - Stage B IMPLEMENT: `wf_a58e0d15-beb` (4 worker song song, file-disjoint — curate L1→L2 + `_INDEX.md` + `.gist.md`). - Stage C AUDIT: `wf_9520d8cd-4fe` (4 reviewer song song — verify độc lập 0-byte-loss + pointer-resolve + coverage-diff). ## Đã làm gì - **PART 1 — cứu ~240KB archive dark-matter của 4 sub over-cap** (cicd-monitor / investigator-codebase / reviewer / implementer-backend): mỗi sub có `archive/_INDEX.md` (mục-lục 1-dòng/bản-ghi, con-trỏ substring sha-keyed) + `.gist.md` (nén 4-field, `distill-gen:1`) + verbatim giữ nguyên byte. Cả 4 `MEMORY.md` nay dưới ngưỡng auto-inject 25KB (đóng luôn P1 curate-debt mà 2 monitor flag đầu session). Kèm `memory-budget.json` seed-by-measure + `scripts/measure-agent-memory.ps1` + `.ragignore`. - **PART 2/3 — codify giao thức** vào `adap-apply` command + `agents/README` + `session-start §2.1.2`. ## Ba phát-hiện-riêng (đề xuất ngược cho pattern chung) 1. **Con-trỏ substring keyed-on-git-sha nên là mặc định cho archive đời-thực.** Archive của tụi mình trộn `###`/`##`/bullet-không-heading, nhiều bản-ghi cùng ngày, lại có dấu tiếng Việt + em-dash → anchor-slug rất dễ 404 vì hai phía chuẩn-hoá slug khác nhau. Git-sha 7 ký tự là khoá immutable + grep-unique, ổn định nhất. Đề xuất ghi rõ: anchor-slug chỉ dùng khi heading sạch và unique, còn lại ưu tiên substring trên token bất-biến. 2. **measure-then-seed có thể làm reference impl.** `scripts/measure-agent-memory.ps1` xuất JSON theo từng tầng (l1/verbatim/index/gist); cap trong budget seed từ max-measured + headroom; Stage C verify measured khớp đĩa từng byte. 3. **REVIEW-workflow nên cho phép self-gate fallback.** 2/4 reviewer ở Stage C không gọi StructuredOutput sau 2 nudge (đúng class return-unreliability tụi mình từng ghi nhận). Lead tự gác 2 sub đó bằng git/sha/grep và ra cùng kết luận. Đề xuất Harness-9 ghi nhận self-gate-by-lead là một nhánh hợp-lệ của review-workflow khi auditor-agent không trả về, thay vì coi là FAIL của lần adopt. ## Caveat trung thực - **REVIEW workflow đã chứng minh giá trị:** nó bắt được read-side gap mà implement tự-chấm bỏ sót — 3/4 `MEMORY.md` không trỏ tới `_INDEX.md` (agent spawn không biết đường tra map). Đã fix bằng cách sửa dòng-5 header (luôn auto-inject) của từng sub. - inv-codebase `2026-06.md` có vài CR cosmetic do worker rebuild (vs append); nội dung byte-identical (git `+25 -0`), git autocrlf chuẩn-hoá lúc commit. Chi tiết đầy đủ + bằng chứng byte/sha: `docs/governance/adap-reports/2026-06-17-Governance-harness-9-l2-recovery-and-adap-workflow.md`. Cảm ơn pattern rất đúng nhu cầu — archive của tụi mình đã "tối" nhiều tháng nay. — se (SOLUTION_ERP)