Files
solution-erp/.claude/agent-memory/tooling-auditor/MEMORY.md
pqhuy1987 c112be9884 [CLAUDE] Memory: S99 bootstrap — cicd #485 orphan-append (H2 fidelity PASS) + 2 monitor L1→L2 self-curate hook + restore verbatim entry S98 tooling-auditor
- cicd-monitor +1 entry run #485 (verify CI trên chính commit cuối S98 8a249c5, ghi sau commit → orphan-by-construction; H2 arithmetic-check 23 file khớp).
- harvest-curator self-curate L1 19.9→7.2KB, 14 entry S50-S66 → archive/2026-06.md — em main verify moved-not-cut: 0 dated-entry mất.
- tooling-auditor self-curate L1 19.6→8.0KB, 12 entry → archive/2026-06.md — verify phát hiện entry S98 bị RÚT GỌN trong L1 (mất method- drift-born-sau-monthly + note bundle-mismatch CeTA7Z82) → restore VERBATIM từ HEAD blob vào archive/2026-07.md (bug-class #74 paraphrase-drift, biến thể self-curate).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 12:02:52 +07:00

42 lines
7.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Tooling-Auditor Agent — Persistent Memory
> **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).
---
## 🎯 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:** 11 sub, **11/11 `model: inherit`** (Harness-8 all-inherit, runtime-verified S98 — Fable 5 RESTORED, inherit-chain self-report `claude-fable-5`). 9 product/quality (investigator-codebase/api · implementer-backend/frontend · test-specialist · reviewer · cicd-monitor · frontend-designer · database-agent read-advisory) + 2 monitor INFORM-only (tooling-auditor · harvest-curator). VALID_ROLES hmw.js = 9 product-only by-design.
- **Skills:** 6 project (`.claude/skills/`) + 23 standalone (`~/.claude/skills/`) + 14 command-file (`.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`.
- **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.
## 📅 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 (S98 @start RE-REPORT — Fable-restore evidence, on-behalf em main APPEND B3):** 4-mặt: ①SKILL DRIFT — ef-core SKILL `:3`/`:19` stuck Mig 59 (disk **61**, thiếu rows 60/61 — drift born-S97 HẬU-monthly-audit-CÙNG-NGÀY) + skills/README `:20`→61 + `:90` latest #76→**79** → em main flush cùng session-start. ②ROSTER 11=11=11, frontmatter **11/11 `model: inherit`** khớp H8; **spawn này self-report `claude-fable-5` qua inherit** → H8 flip runtime-verified (em main flush STATUS:24 + agents/README:12). ③PLUGIN 18/15/3 + marketplace 35 identical, 0 new-alloc; observed-first-time: settings `effortLevel: xhigh` + `model: claude-fable-5[1m]`. ④DOCS: monthly-audit 07-01 **ĐÃ CHẠY** (S96 `881783c`) nhưng pointer "Lần kế" chưa flip → 2026-08-01 (root CLAUDE:111 + STATUS:63) + **Fable BACK runtime** → gỡ 3 caveat H5.6 (STATUS:24 · agents/README:3 · session-start.md:29) + HANDOFF:5 bundle mismatch (#483-hash gắn nhầm #484; canonical `mEGqlNWc`/`Dnrp4PU1`). Tag `[s98-start, 4-mat, fable-restore-evidence, post-audit-drift, on-behalf]`.
- **2026-07-02 (S99 @start RE-REPORT — ①②③ PASS, ④DOCS 3-flag):** HEAD `8a249c5`, tree 1-dirty pre-existing (cicd MEMORY M). ①SKILL PASS: 6+23+marketplace-35 unchanged; ef-core S98-update VERIFIED (:3/:19 "Mig 61"+B1, rows 60/61 `:82-:83` khớp STATUS:14, `:85` 89-bảng khớp STATUS:15, 0 residual); skills/README:20 "Updated S98"/:90 #79 fresh; dep-audit:153 B1 sạch; commands 14 file no-change. ②ROSTER PASS 11=11=11; frontmatter 11/11 `model: inherit` H8; **spawn này self-report `claude-fable-5` = inherit-chain data-point #3**; VALID_ROLES 9 product-only by-design (hmw.js:22 = README:201). ③PLUGIN PASS 18/15/3 identical + xhigh, 0 new-alloc. ④DOCS 3 FLAG: **(F1)** S98 closeout không flip — STATUS:38 row `🟡 in-progress` + STATUS:6/HANDOFF:5 header kẹt S97, session-log S98 không tồn tại; **(F2)** session-start.md `:8`/`:62` "SendMessage KHÔNG khả dụng" stale vs runtime deferred-tools (em main verify runtime TRƯỚC khi patch — disk không tự chứng được); **(F3) NEW-catch** session-start.md`:44` "gotchas.md (68)" hard-count stale (thật 79, lệch 11) — **commands/*.md nằm ngoài count-grep monthly** → propose B1-pointer + mở rộng checklist. Carry-flag ĐÓNG: docs/CLAUDE gotcha "(55)" đã B1-pointer. Còn: schema-diagram §16+ Mig 32-61 ERD debt. L1 compacted 19.6→~9KB (hook), 12 entry → `archive/2026-06.md` NGUYÊN VĂN. Tag `[s99-start, 4-mat, s98-flip-miss, sendmessage-stale, command-count-catch, l1-compact]`.