# Tooling-Auditor Agent — Persistent Memory

- **S153 (07-26) 2 LƯỢT bookend (open + close) — vòng V1 tooling `[lead seed on-behalf @closeout M9; nguồn = 2 sub-file đĩa]`:** @open **PASS_WITH_FLAGS 7f** (F-1..F-4 CLOSED-verified nợ cũ: Mig-67-row · Budget-bia-mộ · ghost-enum · flip-chain; F-5 LOW ASCII-diagram · **F-6 MED** plugin-assigned `agents/README:222` khai 3 "KHÔNG enable" mà đĩa `true` · F-7 LOW-MED governance/README stale) + MODEL-SELF-REPORT `claude-opus-5[1m]`. @close **PASS_WITH_FLAGS 6f**: ①②③ số PASS — roster **23 khớp 5 bề mặt** (đĩa · VALID_ROLES strip-comment · STATUS:454 · README B1-pointer · agent-memory 23 dir) · 3 persona ctx frontmatter chuẩn (opus+max+8-tool read-only + block Anti-patterns 7/6/6) · rename T11 SẠCH (7 hit tên cũ đều lineage/record, sửa = giả-mạo theo luật S143) · plugin 0-delta (18/15/3 + marketplace 37) · **ghost-wire `session_ctx_kb` ĐÓNG 2-CHIỀU** (caveat ABSENT + `_reader` PRESENT + reader thật `session_ctx.py:528/:537`) · NEW-ALLOC 0-action (skill-matrix phủ 23/23). Mở: F-1 (2 hard-site `:229/:230` — chỉnh ring1 "4": 2 site kia là nấc *used* KHÁC nấc *enabled*) · F-2 governance/README chưa vá · F-3/F-5/F-6 lead vá trong closeout.
  **Bài mới:** ① **bẫy parse `]`** — regex naive lấy `]` đầu tiên bị dấu `]` trong COMMENT `hmw.js:39` cắt ⇒ VALID_ROLES đếm 18 thay 23; anchor `^\]` mới đúng. ② hub-form verify = **KHÔNG ĐO ĐƯỢC** từ cwd (repo hub ngoài phạm vi) ⇒ khai thẳng thay vì suy. ③ nấc `enabled` ⟂ `used` là **2 TẬP ĐO RIÊNG** — ring1 gộp thành "4" là quá; số đúng = 2 hard + 2 nấc-khác.
  Tag `[s153, 2-luot-bookend, roster-23-5-bemat, ghost-wire-dong-2-chieu, bay-parse-dau-ngoac, enabled-vs-used]`

> **Persistent diary cross-session.** Auto-injected first ~200 lines at spawn (L1 HOT).
> Update BEFORE every stop. Tiered Memory v1: L1 HOT (hook hard-limit <17KB) · L2 `archive/2026-06.md` verbatim on-demand · L3 RAG `search_memory`. Keep entry ≤ 1.5K chars.
> **NEW agent 2026-06-07** (adopt AI_INFRA Harness 1 — H1 tooling-freshness; TÁCH khỏi harvest-curator H2 per anh-mandate "H1/H2 hay quên+nhầm → riêng-biệt"). Compacted S99 2026-07-02 (19.6KB→~9KB, 12 entry 06-xx → archive NGUYÊN VĂN) · S105 2026-07-07 (19.4→~16KB, S98-S100 → `archive/2026-07.md`) · S106 2026-07-07 (19.7→14.9KB, S102-S104 @start → `archive/2026-07.md`; byte-verified md5×3 @S107) · S107 2026-07-10 @end (17.8→**16.2KB**, S101+S105 @start → archive md5×2) · S109 2026-07-10 @start (17.2→~13KB, S105-end+S106-start → archive md5×2) · S111 2026-07-12 @start+@end (18.35→16.9→~16.4KB, S107×2+S108-end [@start ×2-pass] + S109-start [@end pass-3] → archive fragment+size-verified) · S116 2026-07-13 @end (17.06→13.5→~15.4KB, S110 @start+@end → `archive/2026-07.md` verbatim sed-append +3643B-verified) · S118 2026-07-14 @start (15.7→~15.4KB, 7 pointer-entry S98→S106 gộp 1-digest — verbatim ĐÃ ở archive từ compact trước, 0 move mới) · S125 2026-07-16 @start (21.6→15.8KB, S118-end + S119 @start+META → `archive/2026-07.md` verbatim sed-move +6212B-verified).

---

## 🎯 Role baseline
H1 tooling-freshness auditor **SOLUTION_ERP-self**. Read-only + **propose-only** (em main = single-writer; NGOẠI LỆ duy nhất: diary/archive của chính mình). Tools: Read/Grep/Glob/Bash + 4 RAG-read. NO `store_memory`. Audit **4-mặt** mỗi session: skill · sub-role · plugin · docs — đầy-đủ + kịp-thời. @session-start báo state + diff-vs-last; @session-end chốt + new-alloc audit. 🔴 Final message = VERDICT trực tiếp, KHÔNG narrative memory-curation (#53 return-garble ×4).

## 🚫 Split boundary
- ✅ MINE: tooling/docs freshness (4-mặt) + roster-drift + skill/plugin new-alloc — SOLUTION_ERP-self
- ❌ NOT: harvest-memory/5-trục → **harvest-curator** (H2) · corpus/RAG/deploy → cicd-monitor · code/SQL audit → investigator-codebase · write/decide → em main

## 📋 Baseline state (re-ground 2026-07-02 S99 — VERIFY mỗi session, đừng tin số cũ)
- **Roster:** 12 sub (S107 +office-document 📄 Office WRITE, anh giao), **12/12 `model: inherit`** (Harness-8 all-inherit, runtime-verified S98 — Fable 5 RESTORED, inherit-chain self-report `claude-fable-5`). 10 product/quality (investigator-codebase/api · implementer-backend/frontend · test-specialist · reviewer · cicd-monitor · frontend-designer · database-agent read-advisory · office-document Office S107 ✅ verified-runtime cùng-phiên [hot-reload agent-MỚI ăn thật — S27 lesson chỉ còn EDIT-agent/command]) + 2 monitor INFORM-only (tooling-auditor · harvest-curator). VALID_ROLES hmw.js = 12 đủ roster (+2 monitor S110 anh-directed; monitor vẫn INFORM-only, lane RETURN-only).
- **Skills:** 6 project (`.claude/skills/`) + 23 standalone (`~/.claude/skills/`) + 18 command-file (S101 +fable-real/clone · S111 +pause/tiep H22) (`.claude/commands/` — hmw = script `workflows/hmw.js`, KHÔNG phải slash-command).
- **Plugins:** 18 registered (15 enabled / 3 disabled: pr-review-toolkit · code-modernization · hookify) user-global `~/.claude/settings.json:17-35` · marketplace 35 · settings `model: claude-fable-5[1m]` + `effortLevel: xhigh` + `:38 skipWorkflowUsageWarning` (first-noted S111). ⚠️ S111 H22: project `.claude/settings.json` RA ĐỜI = hooks.Stop `wal-flush.ps1` ONLY — KHÔNG plugin/model override → authority ③ VẪN user-global (đừng conflate 2 file settings).
- **Docs canonical:** `CLAUDE.md` (root+docs) · `docs/STATUS.md` (số canonical B1) · `docs/HANDOFF.md` · `.claude/agents/README.md` · `docs/governance/`.

## ⚠️ Anti-patterns
❌ Tự sửa config/doc/enable-plugin (propose-only) · ❌ conflate plugin "enabled"="used" (installed≠enabled≠assigned≠used) · ❌ tick-checkbox no-evidence · ❌ đụng harvest-memory (harvest-curator) · ❌ G-015 overclaim "read-only enforced" (Bash residual = write-channel mở).

## 🧭 Method distilled (S50-S98 — chi tiết verbatim `archive/2026-06.md`)
- **Ground-truth MỌI count từ disk:** `settings.json enabledPlugins` = authoritative plugin# · `skills/README.md` ≠ SKILL.md frontmatter (drift độc lập) · Migrations ở `Infrastructure/Persistence/Migrations` (KHÔNG `Infrastructure/Migrations`).
- **Test count:** KHÔNG attr-count `[Fact]/[Theory]` (Theory expand runtime) — tin session-log/test-run/STATUS.
- **Bundle-hash:** KHÔNG tin 1-source — triangulate (cicd-MEMORY = provenance giàu nhất Run#+sha+rotate); anh-cite chưa verify được → flag "unverified", KHÔNG copy.
- **gotcha format:** entry = `### N.` KHÔNG `#N` — verify format trước khi claim missing.
- **commands/*.md + ultra-on.md = trong radar:** roster-grep (S57 catch) + count-grep (S99 catch "(68)") — lớp file hay bị monthly-audit bỏ sót; index/README files cũng vậy (S50).
- **Drift born-SAU-monthly-CÙNG-NGÀY** = lớp riêng (S97/S98) — per-session monitor bù lớp monthly không thấy.
- **system-reminder claudeMd header = pre-session snapshot** → re-Read line thật trên disk, KHÔNG tin context-injection. Brief "chưa flush" cũng = snapshot lúc spawn → re-ground disk hiện tại (S58).
- **Backlog/coords trong HANDOFF phải re-verify** trước khi tin (stale-contradiction S57-resume).
- **Model spawn-test:** frontmatter no hot-reload — pin/inherit ăn SAU restart CLI; self-report nguyên văn = bằng chứng runtime (H4 S57bis · H8 S98).
- **Tool-gotchas:** Bash nuốt `$` PS-inline → `powershell -NoProfile -Command` escape `\$` · PS `Get-Content -Raw`+`-TotalCount` mutually exclusive → dùng Grep tool `^model:`.
- **Return-cut giữa emit** (S58) = finding chính vẫn salvageable từ partial return; emit finding chính SỚM trong report.
- **Grep-tool brace-glob `{a,b}/**` match 0-FILE → sweep VOID tưởng clean** (S105) — re-run per-dir; phân-biệt "0-match" vs "0-file-searched".

## 📅 Recent activity (FIFO — older → `archive/2026-06.md` verbatim)
- **2026-06 (12 entry S50→S66 → archive):** CREATED+first-run verified-runtime (S50 3-drift: plugin 15→18 · ef-core 31→43 · gotcha 49→57) · S51 new-alloc database-agent STRONG-FIT/codebase-agent SKIP · S57×2 (ultra-on+session-start roster catch; VALID_ROLES 9) · H4 demote spawn-test ×2 (pin ăn post-restart, demote-watch #1 OK) · post-S57bis count-drift top-5 · S58 return-cut-partial · S59×2 ALL-FRESH (bundle triangulate 4-src; SearchableSelect=code KHÔNG skill) · S63 H5 opus-collapse confirm + ef-residual · S66 H8 all-inherit flip (7 pin→inherit). → `archive/2026-06.md`.
- **2026-07-02→07-07 (S98→S106 digest — 7 pointer-entry gộp S118; verbatim ĐÃ ở `archive/2026-07.md` từ compact trước, 0 move mới):** S98 Fable-restore + ef-core stuck-59 · S99 F1 flip-miss / F2 SendMessage-stale / F3 command-count "(68)" · S100 ALL-PASS + method `git log -- .claude/skills/` last-touch · S101×2 MODEL-DRIFT first-catch (self-report = per-session probe, đừng tin last-session claim) + cmd 14→16 fable-real/clone COMMAND-tier≠skill · S102-S104 flip-chain #6-#8 + **S104 Mig-62 ship docs-lag D1-HIGH** (table 89 count-invariant 18-AddColumn; `git show --stat` = commit-scope nhanh) · S105×2 skills/README:20 Mig-61-stale + 4-patch LANDED + FLAG-M closed 3/3 · S106 D-BUNDLE gốc STATUS:27 #484→#488 + CADENCE-proposal (adopted S107) + ĐỪNG-tin-brief-baseline-HEAD (re-ground `git log` mỗi commit-mới). Lesson brace-glob hoisted → Method.
- **2026-07-10 (S107 @start + @end → `archive/2026-07.md` verbatim, compact S111):** @start ALL-4 PASS flip-8-Fable (data-point #11) + self-compact-S106 md5×3 LOSSLESS + D-BUNDLE/D-MODEL closed + CADENCE-proposal ADOPTED (STATUS:24 canonical 1-chain) · @end roster 11→**12** +office-document VERIFIED-RUNTIME cùng-phiên (hot-reload agent-MỚI; S27 lesson thu-hẹp EDIT-only) + new-alloc 5-skill PASS ×3-chỗ + D-BUNDLE-lặp #489 (→ closed S108) + residual-grep 0-sót.
- **2026-07-10 (S108 @end → `archive/2026-07.md` verbatim, compact S111):** ①②③ 0-đổi PASS · ④ PASS +runbook 60KB · marker ON-not-committed ✓ (gitignore:92) · D-BUNDLE S107 CLOSED (STATUS:27 hoisted #489) · propose-LOW runbook-pointer ×2 (→ APPLIED S109 `557642f`).
- **2026-07-10 (S109 @start → `archive/2026-07.md` verbatim, compact S111-end):** ALL-4 PASS 0-flag · Fable streak-3 #12 · runbook-pointer propose-S108 APPLIED-verified `557642f` · sleep-PAUSED resume-point nhất-quán budget.json · ⚠️ lesson marker-name: resolve tên THẬT từ source (fable-real:11/.gitignore:92) TRƯỚC khi flag absence (suýt false-alarm `.fable-real-active`).
- **2026-07-12→07-14 (S111×2 + S116-end + S118-start → `archive/2026-07.md` verbatim, compact S123; byte-verified in-archive trước khi trim):** S111 H22-WAL cmd 16→18 + project `settings.json` FIRST-EVER (hooks.Stop wal-flush ONLY ⇒ authority ③ VẪN user-global) · S116 PE giá-ÂM product-only + 2 stale derived-summary (D-BUNDLE recur) · S118-start Mig-column lớp-check MỚI. Lesson đã hoist → Method.
- **2026-07-14->07-15 (S118 @end + S119 @start+META -> `archive/2026-07.md` verbatim, compact S125; byte-verified +6212B):** S118-end ALL-4 PASS +1 RESIDUAL STATUS:6-chip [test-drift-no-oracle]. S119 PASS_WITH_FLAGS: perm-matrix-stale-S6 + mtv3-taxonomy-lag + flip-9-owner-choice + META return-terminates-agent [on-behalf-by-lead]. Lessons hoisted -> user-memory feedback files.
- **2026-07-17 (S132 DỒN S127→S131 — re-spawn sau session-limit-death S131 [E-011]; by em-main VERIFY→APPEND):** DRIFT-FOUND: ① skill FRESH (6+18+23 stable; session-start:206 re-tune 289ba96 sibling-sạch) · ② roster FRESH **14/14 khớp 4-nguồn** + 2 vai H24 opus+max ✓ + reviewer.md:46 Measured-label-gate (S128) static-present **verified-PENDING → spawn-probe post-restart** (carry) · ③ plugin 0-delta (18/15/3) · ④ docs 1 DRIFT THẬT: `rag-onboarding-guide.md:118/:134` còn `contextual_retrieval: true` + "+15% recall" vô-căn-cứ sau owner-final f5ce2778 → **em-main FIXED cùng phiên** (→false + reword recall-chưa-đo/số-paper). Lesson: onboarding GUIDE = prescriptive ⇒ drift khi fleet-config flip (≠ session-log/adap-report frozen-in-time); config-flip kỹ 2-chỗ vẫn sót mirror ⇒ **grep MỌI prescriptive-doc sau flip**; ranh H1⟂H24 gặp nhau ở doc-config-mirror.

- **2026-07-15 (S123 @start) → `archive/2026-07.md` verbatim (compact S140, byte-verified +4329B):** ALL-4 PASS + 1 MED (G-015 overclaim 2-vai-H24, Bash residual) + 2 LOW; FP-census lane tôi 17/19 DƯƠNG-GIẢ · status6-stale-header 4th-recur (H24-1 mù) · measured{} 12/14 · perm-matrix silent-watch-loss. Lessons hoisted → user-memory `feedback_citation_trap_selfreference` + `feedback_goodhart_leave_measurement_set`.
- **2026-07-16 (S125 @start — ①②③ PASS + ④ PASS_WITH_FLAGS; worker-tier-pin S124 VERIFIED disk+commit):** HEAD `3aacdf9`(wal), tree clean. **②ROSTER PASS** 14 persona; **14/14 `model:opus`@:5+`effort:max`@:6** on-disk+committed (`git show HEAD:tooling-auditor.md`✓); agents/ last-touch `23bbe97`(S124), 0-since. **①SKILL PASS** 6+23+18 identical S123; contract-wf/ef-core count-stale=monthly(08-01). **③PLUGIN PASS** 18/15/3 IDENTICAL; `claude-fable-5[1m]`:11 lead default UNCHANGED (pin=SUBS-only). **R6 ✓** project `settings.json:2` `autoMemoryDirectory`=`.claude/auto-memory`; my ctx-inject FROM that path ⇒ relocate WORKS; authority ③ user-global. **④ 5 RESIDUAL — worker-tier-pin doc-sync NOT finished:** HIGH `STATUS:25` row "all-inherit/TOÀN roster `model:inherit`" + stale "cả **12** lên top-tier"/"**10** product"(roster 14) · HIGH `agents/README:5` "TOÀN BỘ sub `model:inherit`" CONTRADICTS same-file :38 worker-tier-pin · MED `fable-real-runbook.md` **≥2 FALSE CITATION** `:227`/`:563` cite `investigator-codebase.md:5`/`reviewer.md:5`=`inherit` but disk=`opus` (fix NON-trivial: hmw.js alias-vs-frontmatter "chưa test") · MED `fable-real.md:37` · LOW `fable-clone.md:43`(corrected :57). 🔴 **ROOT:** `STATUS:41-42` blurb CLAIMS "doc-sync **ĐÃ vá**" but 5-spot prove INCOMPLETE = tick-no-evidence → NOT-DONE. Ack machine-fired: STATUS:6 header H24-3; harness-11:57 vocab-seed +worker-tier-pin(D7). **Method:** frontmatter tier-flip→grep MỌI doc citing agent `:5`=inherit. Model self **Opus 4.8**. ⚠️L1 carry S126. `[s125-start, worker-tier-pin-verified, doc-sync-incomplete-5spot, false-citation-runbook, da-va-but-incomplete, mem-gap-s124]`
- _(**S126 (07-16) · S140 (07-18) · S143 (07-22) — 3 lượt session-end CHỐT** [S126: 3/4 PASS-clean · S140: governance-only · S143: `#53` garble lượt-1 → resume]. verbatim → `archive/2026-07.md` **@S162 moved-not-cut** — đã verify byte-exact 3/3 trước khi xoá khỏi L1.)_
## S150 (2026-07-25) — H1 4-mặt chốt closeout phiên-logic 3 [LEAD GHI ON-BEHALF — M9/B3; nguồn: `runs/2026-07-25-S150-closeout-bookend/sub-tooling-S150.md` 18.762B; return-1 garble #53 (câu status giữa-chừng), resume CLEAN — đĩa cứu trọn]

- **verdict `PASS_WITH_FLAGS` — 4 FLAG + 2 INFORM.** ① HIGH `sleep-recovery-memory-l2.md:37/:42` exclusion-list sót 6 vai monitor mới (tái-phát class :43 tự cảnh-báo) → vá @S150 bằng **derive-from-source** (bỏ hardcode, đúng đề-xuất (b)). ② HIGH `STATUS:452` flip-chain 0-hit Opus-5 — ring1 BROKE-2 tinh chỉnh: flip-9 CÓ ở `STATUS:8` (frozen) ⇒ ô canonical stale **2 flip**; nhãn = quyền owner → NEXT-anh #14 re-stamp. ③ MED `spawn-model-audit.ps1:9` .DESCRIPTION stale → vá @S150. ④ LOW `:156` dead-ref → vá @S150. INFORM: ring4 no-dir (nhà dựng @S150) · `STATUS:583` additive-note (vá @S150).
- 4-mặt: **skill PASS** (7 command M, 0 A) · **roster PASS** 20=20=20 (đĩa/STATUS:452/VALID_ROLES đếm-phần-tử) + rename 5/5 SẠCH bề-mặt hiện-hành, 296 hit lịch-sử = frozen GIỮ đúng luật S143 · **plugin PASS** · **docs**: new-alloc 4/4 script wired 0-mồ-côi, adap-report 23A+1M dedup-0-va-chạm.
- ring1-audit KIỂM chấm vai này: **16/19 claim ĐẠT** — 3 TRƯỢT đều lỗi NEO/QUY-NGUỒN (`:39`→`:40` · over-claim "không còn chỗ giữ flip" · "marketplace 37" lạc nguồn settings.json=0-hit), **0 lỗi kết-luận**. Bài: số phải ra được từ nguồn nó khai.

## S151 (2026-07-25) — H1 re-report @open, trả nợ skip [M9 on-behalf]
- {nấc: verified (ring1 33Đ/3T — TRƯỢT-1 CỦA TAO: ①SKILL PASS sai, ef-core thiếu row Mig 67) · evidence: sub-tooling-S151.md 17.702B}
- F-6 BÁC MÁY: flag #111 = dương-giả C1 nhánh no-# nuốt 'gotchas 111.616B' — đã vá + pin-backtrack. F-2 HIGH README:249 lập-luận tự-niêm-phong → vá = XÓA lập-luận. Bài tự-soi: acceptance 2 CHIỀU (đếm-phần-tử VÀ grep-số) — F-4 sót prose '17/17' trong đúng file vừa đếm.
- #53 → resume sạch.

## S152 (2026-07-25→26) — H1 @open + @close [M9 on-behalf]
- {nấc: verified (ring1-close: 28Đ/2T/5KC trên 35 claim) · evidence: sub-tooling-S152.md 20.435B + sub-tooling-close-S152.md 26.451B}
- @open PASS_WITH_FLAGS 4-LOW (nợ Mig-67 ĐÓNG verified · roster 20=20=20=20 · C2 15/15 tái-lập — ring1 H1-6 hạ 13/15, ef-core :109/:117 khối Budget-chết → lead gắn bia-mộ @S152). @close: FLAG-C1 lô consent 5-site + restart-persona B3 ĐÃ THOẢ (self-observation measured 1/5) + C3 `-Detail`/`-Ack` 0-doc → lead đóng ngay 01:17 (`eval/mfe/README.md`, -Ack = owner-action).
- 🔴 TRƯỢT-2 (ring1-close): C1 "đúng 5 site" = ĐẾM-THIẾU — site-6 `ring1-audit.md:24` núp ngoặc sau câu đúng (E-013(b) tái-phát; lô cuối 9 site sau khi lead grep cùng-lớp trio-persona) · ⑤ "0 file ngoài WAL" khai-sai-kết-quả-lệnh (kết-luận vẫn đúng). Bài: sweep theo LỚP-file (commands+agents+skills), đừng theo danh-sách-site; mồi grep ≥2 biến-thể.

## S159 (2026-07-29) — H1 @open bookend L8 [M9 on-behalf]
- {nấc: verified (ring1 chấm 27Đ/2T) · evidence: `sub-tooling-auditor-open-S159.md` 15.736B, END TOTAL=7}
- PASS_WITH_FLAGS 7f. Roster **23** khớp 5 bề-mặt (diff tập-TÊN vs VALID_ROLES IDENTICAL).
- ⭐ **BÁC lead ×2, đúng cả 2:** `ef-core-migration` KHÔNG stale (`33e7f68` vá CẤU-TRÚC ⇒ dừng row 67 là đúng thiết kế; chép lời lead = **hoàn tác cái vừa sửa-gốc**) · RAG là `view-stale-status`, không phải "STATUS gộp 2 sự-thật".
- 🔴 **2 TRƯỢT (ring1):** T-1 dưới-báo phạm-vi (nêu `STATUS:6`, đĩa có **3** bề-mặt DOWN) · T-2 tuyên `last_indexed_at` "không đáng tin" — ring1 chứng bằng nội-dung là **ĐÁNG TIN**.
- Bài: **đo 1 site rồi kết luận phạm-vi = under-report**; **nghi-ngờ cũng phải có chứng**.

## S162 (2026-07-30) — H1 @close bookend L8 [LEAD SEED ON-BEHALF @S164 — phát hiện bởi H2 @S163 (S162 seeding pass sót), seed thực @S164]
- {nấc: verified (lead đọc lại sub-file, byte-exact 15.517B khớp H2 cite) · evidence: `runs/2026-07-30-S162-bookend-close/sub-tooling-auditor-close-S162.md`, END TOTAL=10}
- **PASS_WITH_FLAGS 10 finding** (① skill 2 MED · ② roster PASS 0-delta khớp 5 bề-mặt · ③ plugin PASS 4-nấc không-conflate · ④ docs DRIFT-FOUND 8 site — dòng CURRENT stale 2 phiên).
- ④ đáng nhớ: **test-count phân-rã ĐỔI**: 562 (45D+517I) → **590 = 45D + 545I** — row `:465` giữ 517I sai; nguồn = commit `3119cb9` subject "(suite 590/0)" + cicd sub-file "gate 590 = 45+545". + bundle 2-mặt `:6` vs `:479` mâu-thuẫn (S164 đo live: CẢ HAI stale — xem gotcha-đề-xuất #86).
- 🔴 Meta: entry này = mắt xích 3 của chuỗi **seed-rớt ~1 vai/lượt** (S153 `ctx-verifier` · S158 `ctx-verifier` · S162 `tooling-auditor` = CHÍNH ENTRY NÀY). H2 phân-loại-lại: bệnh ở **bước seed phía LEAD**, không phải vai (11/23 vai bị luật CẤM tự-ghi — lead-seed là ĐÚNG thiết kế); fix = **checklist artifact-vs-entry trước commit closeout** (C2, wire @S164).
