Files
solution-erp/.claude/agent-memory/back-end-reviewer-style/MEMORY.md

5.9 KiB
Raw Blame History

back-end-reviewer-style Agent — Persistent Memory

  • S187 (2026-08-10) 🔴 LƯỢT SPAWN RUNTIME ĐẦU TIÊN — nấc lật file-landspawn-probe ALIVE [LEAD SEED ON-BEHALF @/pause khi mày ĐANG CHẠY — verdict PENDING, đọc đĩa khi nối]: anh chỉ định /fable-real review lại style trong YC-023 ⇒ lead gán mày (persona mang luật "ĐÃ DEPLOY = CHUẨN", BE nặng nhất) — spawn subagent_type=back-end-reviewer-style, model=fable THÀNH CÔNG lúc ~15:47: registry PHIÊN NÀY đã nạp mày (vế "cần restart CLI" của slot (73) thoả với phiên mới — 2 dòng seed S179 dưới khai "spawn-probe CHƯA CÓ" nay HẾT HIỆU LỰC vế đó, giữ làm lineage). Đề bài: style-review 2 bản invest module Duyệt-HĐ GĐ3 (runs/2026-08-10-S187-duyet-hd-tu-khkk/sub-invest-{be,fe}-fable.md). VỀ CLEAN @16:0x ngay trong lúc /pause: STYLE-REVIEW: PASS_WITH_FLAGS — 7 flag, thân sub-style-review-fable.md == HẾT ==, return chuẩn 0-garble (khác 2 con invest). Nặng nhất: FLAG-1 mâu-thuẫn 2-lens phân xử BẰNG CODE (FE mang tiền-đề S156 "inbox legacy", đĩa ContractFeatures.cs:530-593 V2-aware ⇒ F3 hạ verify-only — đúng nghề "đối chiếu CODE THẬT thay vì tin chữ") · FLAG-2 wave MỒ CÔI (FE F1/F2 khai BE-blocker DTO mà wave-list BE không có wave DTO — lỗ ghép 2 lens chỉ lộ khi đọc CHÉO) · FLAG-4 claim "0 key mới" vs khuôn KHKK deploy kèm 8 key AwV2_KhkkN*+32 policy (MenuKeys.cs:123-134) — đề "mirror hay bỏ phải quyết tường minh" · FLAG-3 FE cứng trục 7-type khi BE#1 treo trục · 5/6/7 nit (R-6 no-regex + comment :363 cùng edit · mã họ ASCII khớp validator :274-276 · gom 4 cửa pin về 1 nhà guard). Chấm §2d theo tiền-lệ: PA-A đúng khuôn V2-deploy nhất (điều kiện W1 gỡ 2 bom S182) · PA-B tổ-tiên chỉ ở V1 · PA-C khớp style nhưng không đạt YC-023 — KHÔNG quyết thay owner. Spot-check neo BE 9/9 + FE 4/4 khớp. Tag [s187, spawn-probe-alive-lan-dau, fable-real, pass-with-flags-7, phan-xu-2-lens-bang-code, wave-mo-coi]

  • S179 (2026-08-07) SINH SỔ — dir này ra đời do SỬA-5a, KHÔNG phải do mày chạy [LEAD SEED ON-BEHALF; mày CHƯA chạy lần nào — nguồn = đĩa + spec SỬA-6]: mày sinh @S176 (anh chốt đội STYLE 3 vai, lý do đo được: "mày cứ làm đi làm lại hoài"), nhưng 3/3 vai style thiếu dir agent-memory/<vai>/ suốt từ đó ⇒ vô hình với mọi máy đo (measure-agent-memory.ps1 enumerate DIRECTORY rồi mới đọc MEMORY.md — không dir thì không sinh dòng nào, và thiếu-vắng trông y hệt sạch). Vá @S179 = SỬA-5a. 🔴 Nấc THẬT: file-land, spawn-probe CHƯA CÓ — registry no-hot-reload, cần restart CLI (anh OK @S179 item-6). Đừng đọc dir này thành "đã chạy rồi".

  • S179 — SỬA-1 vá thước dispatch; với MÀY đây là chuyện sống-chết hơn 2 con kia: trước S179 luật gọi mày neo vào git diff --name-only origin/main...HEAD. Mày là gate PRE-commit, mà git diff mọi dạng đều mù file chưa commit + untracked ⇒ thước rỗng đúng lúc cần gọi ⇒ 0 spawn, 0 SKIP-CO-KHAI, chết CÂM. Đo thật: cửa-sổ S178 có 12 file đúng địa-phận cả 3 vai mà 0 con được gọi. Thước mới (4/4 site): { git diff --name-only origin/main..HEAD; git status --porcelain | cut -c4-; } | sort -u 🔴 Vì sao đắt hơn ở mày: BE 0 máy style nào gác — 0 .editorconfig, 0 analyzer, 0 dotnet format --verify-no-changes trong CI (đo S176). FE còn có ESLint đỡ lớp cơ-học; mày không có gì cả. ⇒ thước mù nghĩa là KHÔNG CÒN LỚP NÀO soi file BE trước khi commit. 🔴 Bài học NGƯỢC ĐƠN THUỐC: đơn cũ ghi "đổi ba-chấm → hai-chấm porcelain". Đo @S179: hai-chấm và ba-chấm cho md5 Y HỆT (origin/main là ancestor của HEAD ⇒ merge-base = origin/main) ⇒ vế đổi dấu chấm KHÔNG sửa được gì; răng nằm TRỌN ở vế porcelain. Chỉ swap dấu chấm thì thước nghiệm-thu vẫn xanh mà đội vẫn mù nguyên = Goodhart. 🔴 Citation-trap: dòng CẤM origin/main...HEAD trong persona chứa chính mẫu bị cấm ⇒ thước cũ đọc thành dương-giả. Thước đúng phân biệt use ⟂ mention: grep -rn 'git diff [^|]*origin/main\.\.\.HEAD' → 0.

  • Địa-phận + ranh (từ persona, ghi lại để khỏi drift): ĐÓNG = src/Backend/** TRỪ Persistence/** (EF config + migration = database-reviewer-style). Soi ĐỒNG-NHẤT STYLE + phân-tầng (.NET 10 Clean Arch: Api → Application ← Domain + Infrastructure → Application; CQRS + MediatR + FluentValidation + AutoMapper), KHÔNG soi logic/nghiệp-vụ (đó là reviewer) · KHÔNG soi thiết-kế schema (database-agent). Gộp trục clean-code TRONG địa phận — anh chốt 3 vai, bỏ con clean-code thứ 4 vì phủ chồng. 🔴 LUẬT LÕI anh giao: "các tính năng đã deploy thành production rồi thì sẽ là chuẩn, trừ khi tao có điều chỉnh lại lần nữa". Repo auto-deploy main ⇒ mọi thứ còn trên origin/main = đã production = CHUẨN; việc của mày là đi tìm anh em ĐÃ CHẠY THẬT rồi đối chiếu, không tự nghĩ ra chuẩn mới.

Tag [s179, sinh-so-do-SUA-5a, chua-spawn-probe, 0-may-style-gac-BE, nguoc-don-thuoc-2cham-vo-dung, citation-trap-use-mention]

  • S182 (lead-seed, C2 /pause): registry-probe BƯỚC 0.6b — spawn THẬT lần đầu sau restart, trả ALIVE|back-end-reviewer-style 0-tool đúng lệnh (tool_uses=0 khác #53 vì không bịa việc). Slot (73) đóng 5/5. → runs/2026-08-07-S182-bookend-open/spawn-probe-registry.md