# adap-report — 2026-07-04-Agent-memory-hygiene-mechanization (SE)

> **Broadcast:** `2026-07-04-Agent-memory-hygiene-mechanization.md` (category Agent, type:new). **Adopt S103 (2026-07-06).**
> **Integrity gate:** `content_sha256` `43c9e56f…` **MATCH ✓** (full-64). Notify email `2026-07-04-ai_infra-to-se-notify-auto-hygiene` verified (whole-file; no body-stamp field).
> **Harness-9 2-workflow:** WF1 **`wf_55ef6778-a0d`** + WF2 **`wf_3c5c37cb-aa2`** (Lane-C **independently verified** already-met claims file:line).

## Nấc (3 chức-năng A/B/C + wire · G-011)

| Chức-năng | Nấc | Evidence (Lane-C independent-verify file:line) |
|---|---|---|
| **A — archival byte-threshold 2-phase (di-chuyển-không-xóa)** | **already-met (Harness-11 S75)** | `memory-archive-gate.ps1` DRY-RUN default (`:6-7`,`:86`) + value_protect **ADVISORY-only** (`:55-56` "em-main decides, no auto-exclude") + keep-floor A5 + 2-strike A6 + A7 byte-preserve NO-API. 🔴 **SIDESTEP grep-gate-trap** (bài-học 1) vì em-main-decides KHÔNG auto-grep-exclude. |
| **B — drift-detector (CHỈ-BÁO)** | **already-met (Harness-11 S75)** | `governance-detectors.ps1` **4-layer 1:1**: C1 broken-ref (`:285`+`:344`) · C2 mismatch-only (`:247` `if ($n -ne $canon)` — narrate-đúng KHÔNG flag) · C3 vocab-fork (`:383-408`) · C4 self-exclusion **SEPARATE-namespace** (`:89-107`, assert `:417-430`). Namespace tách-biệt = bài-học 2 ✓. |
| **C — launcher-allowlist current-session-scope** | **n/a-by-architecture** | SE = Anthropic Workflow tool JS-sandbox (`hmw.js:1-5` NO-filesystem NO-CLI-launcher). 0 bề-mặt-lách → KHÔNG launcher để allowlist. Containment = git-diff + run-folder-TRACKED + folder-scan-orphan (G-015, `workflows/README:51`). |
| **wire 2-phiên** | **already-met** | @start `session-start §2.1.2/§2.1.3` (drift-detect + archive-check) · @end `session-end §L.b(c)` (archive-gate). Khớp broadcast 2-phase. |

## Tailored / Skip / Phản-biện

- **🟡 Honest — ADOPTED-VIA-HARNESS-9/11 ALREADY:** A + B + wire = SE dựng S70-S75. M.F = **confirm-mapping 1:1 (KHÔNG rebuild)** — trung-thực KHÔNG claim "mới làm". 5 sàn bất-biến broadcast (di-chuyển-không-xóa / value-gate / detector-chỉ-báo / current-scope / bán-tự-động-no-hook) đều SE-present.
- **C = n/a-legit (KHÔNG "chưa làm"):** 0 CLI-launcher → n/a-by-architecture (Lane-C confirm hmw.js JS-sandbox). Đánh dấu n-a đúng-nấc.
- **Bài-học 1 (grep-gate đảo-chiều = tự-động-hoá-ma):** SE archive-gate KHÔNG mắc vì **DRY-RUN + em-main-decides** (grep-patterns = advisory-FLAG KHÔNG auto-keep-all). SE khác FORM (advisory-grep + người) vs header-pragma broadcast — cùng SPIRIT (0 ghost-automation). Header-pragma = optional refinement sau.

## Codify + hậu-kiểm

- Engine `§M.F`. Nấc tổng: **A/B/wire already-met (verified 1:1) · C n/a-by-architecture**. reviewer_gate PASS. Run-id WF1/WF2 như trên.
