Files
solution-erp/docs/governance/harness-11-engine.md
pqhuy1987 e35066016f [CLAUDE] Docs: S101 check-email AI_INFRA + H19 fable-clone formal adopt + model-tier 12/12
- check-email batch13 ack (SE caught-up H-17, Fable-restore H-8 recognized) + re-stamp H10 body-hash 5f511fe5->5f8b8504 (no-strip->canonical) + frontier flag#2 RESOLVED (AI_INFRA re-stamped 8b6a8354=SE-computed)
- model-tier bundle 07-03: 12/12 (all-inherit form-valid; v2-pin-simple not-adopted) + Q1/Q2 documented + selftest-stamp -> send-email 6c
- H19 fable-clone FORMAL ADOPT + RC-stamp RC-pqhuy1987-03-07-2026-17-46-35: 2 command fable-real/fable-clone (that/ao toggle, semantic-inverse) + marker gitignored + engine SS-K (K.A-K.D + 3 floor-fidelity gap) + session-start BUOC 0.5b reader (WF2-Lane-A fix marker-write-only) + 4 adap-report
- 2-workflow Harness-9: WF1 wf_5f308fd8-744 SOUND_WITH_CONCERNS (lost-to-interruption->resume-cached) + WF2 wf_ed5b972f-a4d PASS_WITH_CONCERNS 0-BLOCKING
- mapping reviewer + investigator-codebase; VACUOUSLY-MET-honest (all-inherit->0 runtime-delta; value=future-proof-floor + anti-consensus-catch NOT cost; nac designed+will-dogfood)
- GAP-3 AS-10 fired LIVE (WF1+WF2 lanes auto-harvested agent-memory -> dogfood-validate convention-not-mechanism; harness-sanctioned, verified, KEPT)
- email AI_INFRA harness-19-adopt-plus-model-tier (selftest-stamp 6c PASS)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-03 18:22:28 +07:00

61 KiB
Raw Blame History

Harness-11 — Engine bộ-nhớ-và-governance TỰ-BẢO-TRÌ (SE canonical)

Adopt S75 (2026-06-18) — AI_INFRA broadcast 2026-06-18-Governance-harness-11 + checklist (inbox broadcasts/inbox/ai_infra/). Áp qua 2 workflow (IMPLEMENT wf_c5e5844e-7c1 + REVIEW) per mandate ⑤. adap-report → docs/governance/adap-reports/2026-06-18-Governance-harness-11.md.

🔑 Đây là CANONICAL cho engine governance của SE. Doc khác (agents/README, session-start/end) TRỎ về đây, KHÔNG copy luật (B1 dogfood — một-chỗ-đổi).

🔭 Phạm-vi (S79 consolidate · S81 +§G): doc gốc Harness-11 (PHẦN A-D) nay gom thêm §E (User-Mark H-12/13 canonical §P) + §F (Harness-14 Eval/Budget/Outcome) + §G (Harness-15 memory-budget per-agent token-based, S81) — 1 engine governance hợp-nhất (mirror AI_INFRA "harness-all" consolidation). Ledger mark = .claude/governance/ACTIVE-MARKS.md.

🔑 Nguyên-lý lõi: "tự-bảo-trì" = luôn-TỰ-BIẾT khi có drift (detector tự-động, NÊU-CỜ ngay) CHỨ KHÔNG tự-viết-lại nội-dung/luật. DÒ tự-động; SỬA do người-chủ-trì (em-main) làm trên cờ. BAR-KHÔNG-HẠ = một-người-ghi (single-writer) — "tự-bảo-trì" TUYỆT-ĐỐI KHÔNG miễn-trừ chốt này.


Bản-đồ artifact (engine SE)

Cấu phần Artifact Nấc
PHẦN A — hot-mem auto-archive scripts/memory-archive-gate.ps1 + .claude/agent-memory/memory-budget.json (archive_gate params) + session-end.md §L.b mechanized DRY-RUN planner + convention trigger (no-OS-hook)
PHẦN B — derived→canonical + freshness luật B1 (dưới) + scripts/governance-detectors.ps1 (C2 staleness) detector mechanized + fix gated qua người
PHẦN C — 3 grep detector scripts/governance-detectors.ps1 (C1/C2/C3 + C4 self-exclusion + C5 resolve-condition) mechanized NO-API, DÒ+FLAG-only
PHẦN D — orchestration doc này (3-tier + 1-direction) + session-start.md/session-end.md/ultra-on.md cadence + hmw.js checkpoint mix mechanized + convention
PHẦN E — User-Mark (H-12/13, canonical §P) + RC-signature doc này §E (cơ-chế P1-P10) + .claude/governance/ACTIVE-MARKS.md (sổ-cái + display) + 4 lệnh /user-mark-* (interface) + session-start §2.1.4/session-end §L.b(h) (display) convention (report-trước-đóng-dấu P4) + mechanized (display gắn-lệnh-phiên + tool-deny settings P9)
PHẦN F — Harness-14 Eval/Budget/Outcome doc này §F (3-mức maturity + method) + eval/ golden-set harness (F.2) + memory-budget.json/measure-agent-memory.ps1 (F.3 = PHẦN A) eval = executed-file + convention (manual) · budget = mechanized ALIGNED · outcome-correlation/hit-rate = Mức-2 tool-pending-data
PHẦN G — Harness-15 memory-budget per-agent (token) +v2 §G.4 +v3 §G.5 doc này §G (SÀN floor + 3-tầng token + §G.4 hot-feed-lớn / L2-L3-bỏ-trần / %-print / ranh-giới-vai-trò + §G.5 full-parity 220/60/50 + spawn-fill-to-budget) + memory-budget.json (harness_floor + token_governor v3 + spawn_fill_directive + archive_gate.value_protect) + session-start §2.1.5+§2.1.6 + session-end §L.b(c) 2-governor mechanized (byte ⟂ token config) + sàn-chức-năng = convention; v3 (1)=config · (2)(3)=convention
PHẦN H — Harness-16 MFE (memory-fidelity-EVAL) doc này §H (coverage/retention method + maturity-tier) + scripts/mfe-eval.ps1 (deterministic NO-API) + eval/mfe/ (seed + README) + memory-budget.json (mfe config) + READS token_governor (single-source, never writes) + session-start §2.1.6/session-end §L.b(c) opt-in deterministic $0 = executed-file + runtime-smoke (S93) · judge = SCAFFOLD-only (Mức-2 chờ age+independent-judge) · READS-not-writes budget
PHẦN I — Harness-17 vòng tự-cải-thiện (Đo→Tinh-chỉnh→Kiểm) doc này §I + scripts/memory-selfimprove-audit.ps1 (C1 spec-audit NO-API) + .claude/governance/reinject-ledger.md (B2 CG-1) + COMPOSE mfe-eval.ps1(A2)/memory-archive-gate.ps1(archive)/governance-detectors.ps1(change-gov) + session-start §2.1.7/session-end §L.b(c) C1 spec-audit + A2 MFE + HCV-proxy = mechanized · B1/B2/B3 refine + C2 spot-check = convention · C3/CG-2 = REUSE §D.3/§G.2(b)
Canonical state (nguồn-chuẩn) docs/STATUS.md CURRENT STATE table

PHẦN A — Hot-mem auto-archive by budget (🟡 TAILORED)

SE-present từ Harness-9 (L2 archive byte-exact + _INDEX substring-pointer + gist). Harness-11 thêm 3 tham-số chống-thrash + standing-gate:

  • A1 byte-gate @session-endmemory-archive-gate.ps1 đo byte mỗi agent-memory/<sub>/MEMORY.md vs cap. (Trigger = session-end.md §L.b convention người-kích — engine no-OS-hook.)
  • A2 additive MOVE — bản-cũ-nhất → archive/<YYYY-MM>.md, NEVER overwrite (runtime-proven h910-curate: +N -0 byte-exact).
  • A3 _INDEX pointer-only — 1 dòng/bản-ghi, con-trỏ substring sha-keyed (memory-budget.json:19).
  • A4 hysteresis — dồn tới DƯỚI low_watermark = 0.85 × cap (không dừng ở vạch). [param archive_gate.low_watermark_ratio]
  • A5 keep-floor — luôn giữ ≥ keep_floor_entries (5) bản-ghi gần nhất, không vét sạch.
  • A6 2-strike — chỉ ĐỀ-XUẤT dồn khi over-cap ở 2 lần kiểm liên-tiếp (strike_threshold), chống alert-fatigue.
  • A7 NO-API L1-eval — sau dồn: (i) resolve-con-trỏ (mọi pointer _INDEX grep-định-vị được trong archive) + (ii) byte-0-loss (tổng trước = sau). grep + measure only, KHÔNG API.

🟡 Con-số (cap 25600, 0.85, 5, 2) = TAILOR. SE chọn DRY-RUN planner (in kế-hoạch + người duyệt) thay auto-move — vì move = đụng memory canonical (D6/D9, không tự-ghi).

PHẦN B — Derived-doc TRỎ canonical, KHÔNG copy (🔴 FUNCTION-FLOOR)

  • B1 — derived TRỎ canonical: tài-liệu-dẫn-xuất (CLAUDE.md root/docs, skills/*/SKILL.md, agents/README) KHÔNG copy volatile-token (mig#·test#·gotcha#·table#·bundle-hash·model) — TRỎ docs/STATUS.md (canonical). Lý-do: một-chỗ-đổi-N-chỗ-drift = nguồn drift #1 (chứng-minh sống: root CLAUDE.md kẹt mig 53 qua S70-S74).
  • B2 — giữ readability: dữ-kiện-ổn-định (tech-stack, module-table, convention) GIỮ inline đọc-được; CHỈ pointer cái HAY-đổi (tránh pointer-soup). Exemplar sẵn: docs/PROJECT-MAP.md (0 count-token, 241 dòng).
  • B3 — freshness-DETECT: governance-detectors.ps1 (detector C2) grep volatile-token derived vs canonical → FLAG lệch (KHÔNG tự sửa).
  • B4 — fix GATED qua người: FLAG → em-main xem diff → ghi (single-writer). KHÔNG đường tự-ghi-thẳng. (Mechanized backstop: git-diff commit-gate + run-folder TRACKED.)

PHẦN C — 3 bộ dò grep tất-định (🔴 FUNCTION-FLOOR MANDATE)

Tất cả ở scripts/governance-detectors.ps1 — NO-API (grep/measure only), DÒ+NÊU-CỜ-only (không tự sửa). Chạy @session-start (D1) báo cờ.

  • C1 broken-pointer — grep ref nội-bộ (gotcha #N > max · [[wikilink]] target thiếu) → FLAG dangling.
  • C2 derived-staleness (= B3) — count-token derived vs STATUS canonical (+ cross-check disk: mig = ls Migrations/*.cs excl Designer/Snapshot; gotcha = max ### N. trong gotchas.md) → FLAG mismatch + 'canonical-itself-stale' nếu STATUS lệch disk.
  • C3 vocab-fork — alias-set (seed: wave-folder↔run-trace, Dự trù PRO↔Ngân sách PRO, two-tier↔all-inherit) → FLAG khi ≥2 biến-thể cùng sống.
  • C4 self-line exclusion 🔴 — detector loại path tự-mô-tả (governance-detectors.ps1, harness-11-engine.md, broadcasts/**, runs/**) TRƯỚC khi FLAG → 0 self-match.
  • C5 resolve-condition 🔴 — mỗi FLAG kèm resolve: <điều-kiện-gỡ-cờ>. 2-strike anti-repeat = convention em-main áp (detector stateless per-run; KHÔNG over-claim mechanized-2-strike cho detector).

PHẦN D — Engine điều-phối (🔴 FUNCTION-FLOOR)

D.1 — Bảng-nhịp 4-lớp (SE-present, cadence-file)

  • D1 session-start = DÒ+BÁOsession-start.md §2.1.1 monitor RE-REPORT + §2.1.2 budget-audit + chạy governance-detectors.ps1 báo cờ (KHÔNG sửa). INFORM-only.
  • D2 session-end = BẢO-TRÌ+archivesession-end.md §L (byte-gate A + harvest-GATE 5-trục + gác-cờ chưa xử-lý).
  • D3 per-turn = chắt-lọc-APPEND — harvest-LIỀN sau mỗi fan-out (ultra-on.md P3, C4 primary), qua em-main.
  • D4 threshold = workflow-gate — chạm hệ-trọng → bắt qua Workflow (hmw.js:76 checkpoint THROW = mechanized tripwire). run-id = bằng-chứng.

D.2 — Tách-an-toàn 3-tầng (🔴 NHÃN-HOÁ EXPLICIT — đây là chuẩn-hoá H11)

🧪 Phép-thử-ranh-giới tất-định: hỏi "thao-tác này có git-diff vô-hại-ngữ-nghĩa không?" → CÓ = tầng AUTO; chạm prose/luật/con-trỏ/thẩm-quyền/copy = tầng DÒ+FLAG. KHÔNG tin nhãn "máy-móc thôi mà" — xét git-diff THẬT.

Tầng Cái gì Đường-đi
D5 — AUTO (semantic-null) dồn-archive ADDITIVE (byte-0-loss) · dựng-lại _INDEX · APPEND-chắt-lọc gist · đo-byte tự-động OK (có A7 NO-API gate bảo-chứng)
D6 — DÒ + NÊU-CỜ mọi thứ chạm prose/luật/con-trỏ-mục/thẩm-quyền/copy-chéo (3 detector C + monitor H1/H2) chỉ FLAG → em-main soạn bản sửa (KHÔNG nhánh tự-ghi)
D7 — OWNER-APPROVE đổi-luật · đổi-thẩm-quyền · ghi-lan derived · đổi-tên-khái-niệm · nâng-guard chính-thức anh (project-owner) duyệt trước hiệu-lực — vận-hành-hoá bởi report-trước-đóng-dấu §E.2 (đổi-luật cấp-governance đi qua quy-trình 4-bước + chữ-ký RC)

D.3 — Bốn chốt chống-tự-hỏng

  • D8 khoá-chiều 1-CHIỀU 🔴 (codify mới H11) — DÒ chỉ đi canonical → derived (bắt derived cũ). TUYỆT-ĐỐI KHÔNG lấy giá-trị từ derived ghi ngược canonical. (Vd: detector đọc STATUS so root CLAUDE.md; KHÔNG bao giờ đọc root CLAUDE.md ghi vào STATUS.)
  • D9 chỉ-APPEND single-writer 🔑 BAR-KHÔNG-HẠ — mọi ghi-bộ-nhớ = APPEND qua em-main; KHÔNG sub tự ghi đè memory-chính/luật. Mechanized: store_memory strip mọi sub (runtime S48 0/8) + hmw.js SCHEMA return-delta-only.
  • D10 ghi qua file-tool only — Write/Edit, KHÔNG shell-append (tránh mojibake/$-expansion = gotcha #61). hmw.js:111 cấm Bash-write MD. (convention — Bash residual chưa block cứng.)
  • D11 archive = MOVE-không-XOÁ — byte 0-loss (md5sum/grep-Fxf artifact _ledger.md:14).

PHẦN E — User-Mark (Harness-12/13) + chữ-ký RC quyết-định = canonical §P (🔴 FUNCTION-FLOOR)

Adopt S79 (2026-06-20) — AI_INFRA 2026-06-19-Governance-harness-all-update (User-Mark) + …rc-signature + canonical §P (P1-P10). Neo + cưỡng-chế quyết-định cấp-governance (luật/chính-sách/kiến-trúc/harness) để không-quên + không-giảm-bằng-cảm-tính. KHÔNG dùng cho vận-hành/tác-vụ thường-ngày (P6 scope-discriminator).

🔑 3 cấu-phần (B1 phân-vai): §E này = CƠ-CHẾ (codify §P P1-P10 cho SE) · ledger = .claude/governance/ACTIVE-MARKS.md (SỔ-CÁI + display, single-writer em-main) · interface = 4 lệnh /user-mark-active-high|active|medium|disable. Cấp do em-main gán + anh confirm (KHÔNG agent tự-phán cảm-tính — P8).

E.1 — Chữ-ký + 4 cấp + binding (P1·P2·P3·P8)

  • P1 Chữ-ký: mỗi mark mang RC-pqhuy1987-dd-mm-yyyy-hh-mm-ss (REUSE format rc-signature, timestamp lúc anh sign-off). Bằng-chứng-có-niêm: minh-oan · tranh-luận-bằng-bằng-chứng (debate khi ruling mâu-thuẫn) · trách-nhiệm-2-chiều. Forward-only (no-retrofit từ 2026-06-20).

  • P2 4 cấp deterministic (anh-instruction trực-tiếp, KHÔNG design-invention) — trực-giao với tầng-an-toàn D5-D8:

    Cấp Hành-vi xác-định (P8) Vi-phạm
    🔴 Active-High bắt-buộc phải làm (cao nhất) error-ledger.md §L.a RCA (P9)
    🟢 Active follow + nhắc-lại xuyên-suốt nhắc-lại (KHÔNG mandate RCA-tự-động)
    🟡 Medium neo quyết-định chưa-rõ; follow nhưng skippable
    📦 Disable tắt (reversible, giữ audit-trail)
  • P3 Binding nhị-phân: có stamp = LỆNH · không stamp = đang BÀN (thảo-luận ≠ lệnh execute).

  • P8 No-cảm-tính: mỗi cấp = hành-vi DETERMINISTIC, KHÔNG agent tự-phán. "Tự-skip-workflow tiết-kiệm-token" = lệch → theo rule TƯƠNG-ĐỐI H6.1 (substantive→HMW · trivial→solo), KHÔNG số-magic.

E.2 — Flow DACI report-trước-đóng-dấu + scope-check (P4·P6 = vận-hành-hoá D7, 🔴 floor)

Đổi-luật cấp-governance đi qua các bước, KHÔNG được tắt (4 lệnh /user-mark-* thực-thi):

  1. Scope-check (P6): "Có đổi CANONICAL §-rule / authority-routing không? KHÔNG → đây là work-flow → KHÔNG mark." (User-Mark = Gov-decision, KHÔNG task-execution.)
  2. Adjust-Gov (P4): soạn nội-dung luật mới — em-main single-writer D9, KHÔNG fan-out.
  3. Double-check (P4): quét §A-§E + error-ledger.md Active-Guards + ACTIVE-MARKS.md + governance-detectors.ps1 C3 tìm mâu-thuẫn (cross-harness / vocab-fork).
  4. 🔴 Báo anh kèm 3-7 tiêu-chí khách-quan (P4): điểm-đau đã-xảy-ra-thật · khối-lượng · chất-lượng (KHÔNG quy-mô-đội / thời-gian-tuổi); cấp đề-xuất; §-target; supersedes?; mâu-thuẫn đã-rà. CHỜ anh confirm. KHÔNG stamp trước báo-cáo.
  5. Stamp (anh confirm): RC-pqhuy1987-dd-mm-yyyy-hh-mm-ss → ghi ACTIVE-MARKS.md + áp §-change vào canonical.

NEW vs D7-cũ = scope-check tường-minh (P6) + rà-mâu-thuẫn (bước 3) + 3-7 tiêu-chí khách-quan (P4). D7 vốn = "owner duyệt trước hiệu-lực"; §E.2 làm rõ QUY-TRÌNH, KHÔNG tạo flow song-song (tránh C3).

E.3 — Cưỡng-chế 2-kênh, KHÔNG hook (P9 — = XÁC-NHẬN cái SE đã chứng-minh)

Kênh Vi-phạm Cưỡng-chế Bằng-chứng SE sẵn-có
Behavioral-mark ghi error-ledger.md §L.a (AS-table) + RCA convention (kỷ-luật người+AI) §L.a 2-strike-promote đã chạy
Tool-action-mark permission-DENY.claude/settings*.json (deny-absolute) — KHÔNG hook (hook fails-open = observability-only) mechanized (config) — xem D10: Bash residual chưa block cứng = gap honest E-006/AS-10 (error-ledger.md): hook fails-open → store_memory allowlist-strip = gate THẬT; git-diff = backstop

E.4 — Lifecycle + storage/SHOW (P5·P7)

  • P5 Lifecycle: con-trỏ-XUÔI 1-chiều (mark-mới supersedes: mark-cũ) + cập-nhật status/cấp mark-cũ (downgrade HOẶC →Disable). 🔴 supersede mark Active-High = anh-confirm RIÊNG (KHÔNG auto-downgrade). KHÔNG freeze-immutable (git-history audits; anh sửa/đổi-ý qua re-stamp). Disable ≠ revert-rule (tách-bạch).
  • P7 Storage + SHOW: ledger .claude/governance/ACTIVE-MARKS.md (single-writer em-main B3; P7 location-agnostic). 🔴 SHOW @session-start §2.1.4 + @session-end §L.b(h) status-filtered: Active-High + Active HIỆN rõ · Medium tóm-tắt · Disable/superseded ẨN.

E.5 — Objective-only + neo-lý-tính (P10 = rules.md §6.6, 🔴 floor)

  • Adopt/giảm function bằng điểm-đau + khối-lượng + chất-lượng KHÔNG quy-mô-đội / KHÔNG thời-gian-tuổi; "overkill/quá-mức-solo-dev/cảm-tính/cũ-rồi-nên-bỏ" = BÁC.
  • AI = neo-lý-tính: gặp quyết-định biện-minh bằng cảm-giác → em-main nêu-cờ + bác trên cơ-sở khách-quan, KHÔNG xoa-dịu. Thẩm-quyền phán "cần/thừa" = tầng xuyên-dự-án (AI_INFRA), KHÔNG dự-án đơn-lẻ. (Bối-cảnh: rule nảy từ audit thật — 1 dự-án từ-chối chức-năng chống-lách-engine bằng "quá mức solo-dev"; điều-phối ban-đầu cũng xoa-dịu trước khi được chỉnh.)

PHẦN F — Harness-14: Eval / Budget / Outcome (🟡 method TAILORED + 🔴 rule-floor)

Adopt S79 (2026-06-20) — AI_INFRA 2026-06-20-Governance-harness-14-adopt + checklist-14. Cơ-chế đo chất-lượng + định-cỡ bộ-nhớ trên nguyên-lý nền: mọi con-số suy từ nhu-cầu thật, KHÔNG đặt-cứng tùy-tiện. 🔴 rule bắt-buộc (time/age = false-proxy) đã codify ở mark RC-…10-29-11 + rules.md §6.6 — §F này = phương-pháp + trạng-thái-độ-chín honest.

4 nguyên-lý nền: ① suy-ra-từ-nhu-cầu KHÔNG đặt-cứng (cấm "số ma-thuật") · ② loại proxy-sai (time/age/quy-mô-đội) · ③ chỉ-báo phục-vụ kết-quả (tối-ưu chỉ-báo bỏ kết-quả thật = kinh-tế-giả) · ④ trung-thực về độ-chín.

F.1 — Trạng-thái độ-chín 3 MỨC (🔴 honest — KHÔNG nâng mức thấp lên cao)

  • Mức 1 LÀM-ĐƯỢC-NGAY: eval-precision (đo chất-lượng truy-xuất) — SE CÓ harness chạy thật (xem F.2).
  • Mức 2 ĐANG-TÍCH-LŨY (có công-cụ ĐO, CHƯA đủ data ra số): budget-theo-hit-rate (cần nhật-ký truy-cập memory) + tương-quan-outcome (cần nhiều tuần đánh-giá). 🔴 Cổng dữ-liệu: dưới ngưỡng → DỪNG, giữ quy-ước đo-được, KHÔNG bịa số.
  • Mức 3 TẦM-NHÌN-XA (tạm gác): trần "nhiễu ngữ-cảnh" — không mốc-cứng đáng-tin theo nghiên-cứu → sao-bắc-đẩu định-hướng, KHÔNG ép số.

F.2 — Eval-precision (🟡 — SE đã CÓ, map onto, honest)

SE đã có RAG golden-set harness (KHÔNG phải gap): eval/golden-set-solution_erp.jsonl (14 query: 11 pos + 3 neg) + eval/evaluator.md (Spec-A strict, recall@5 gate ≥0.7, rerank ≥0.7 per-query confident-hit [gate aggregate avg-rerank 0.65], Case A/B/C/D triage) + eval/trial-state-lock.json (baseline recall@5=1.0, chunk-drift 5%). Nguyên-lý H-14 áp:

  • Cỡ golden-set suy từ độ-chính-xác mong-muốn (công-thức cỡ-mẫu) KHÔNG đặt-cứng — hiện 14 query là quy-ước-đo-được; khi mở-rộng → suy theo confidence-level.
  • Chống nhồi-từ-khóa: query test KHÔNG lặp nguyên-văn từ-khóa tài-liệu đích (đo năng-lực thật, không trúng-vì-trùng-chữ).
  • Ngưỡng theo đường-nền tương-đối (so trial-state-lock baseline + biên tụt nhỏ) KHÔNG mốc tuyệt-đối tự-đặt; mẫu-số động (tỉ-lệ theo số query thật-có).
  • 🟡 Honest nấc: harness EXISTS + well-specified nhưng weekly-Friday MANUAL (evaluator.md chạy MCP search_memory tay), CHƯA automated trong scripts/; RAG re-index = AI_INFRA-owned op. → executed-file + convention (manual gate), KHÔNG mechanized-CI. KHÔNG overclaim "tự-chạy".

F.3 — Budget bộ-nhớ (🟡 ALIGNED — đo-thật, KHÔNG số-ma-thuật)

  • Đã ALIGNED: memory-budget.json cap = seed-by-MEASURE (scripts/measure-agent-memory.ps1, _note "SEEDED BY MEASUREMENT NOT imagined headroom"); archive_gate = hysteresis 0.85 + keep-floor-5 (newest-protection) + 2-strike — 0 núm decay-theo-tuổi (≙ mark RC-…10-29-11). Trần = hệ-quả (dung-lượng ÷ tốc-độ-thay-mới qua A4 hysteresis), KHÔNG retention-by-age. Cross-ref PHẦN A.
  • 🟡 Hit-rate sizing = Mức 2 chờ-tích-lũy: SE chưa có công-cụ đếm-lượt-truy-cập-memory → budget giữ quy-ước đo-được (đo byte thật). KHÔNG trình như "đã suy từ hit-rate".

F.4 — Outcome (🔴 floor + 🟡 tích-lũy)

  • 🔴 Chống kinh-tế-giả (Goodhart) — tức-thì: cắt chất-lượng tiết-kiệm token → làm-lại → tốn HƠN (mark/§6.6 + H8.2 "KHÔNG hạ model"). Mỗi chỉ-báo tự-động (recall/hit-rate/byte) gắn câu hỏi "có làm anh chốt-OK sớm hơn không". Áp NGAY, không chờ data.
  • 🔴 Ground-truth = đánh-giá chủ-dự-án (đo gián-tiếp qua số-lần-làm-lại); chỉ-báo tự-động chỉ là trung-gian.
  • 🟡 Tương-quan chỉ-báo↔đánh-giá-người = Mức 2 chờ-tích-lũy: SE chưa có công-cụ thu-đánh-giá + đếm-rework có cấu-trúc (error-ledger §L.a RCA = mầm gần nhất) → cần nhiều tuần mới khẳng-định tương-quan. KHÔNG bịa số tương-quan "đẹp".

Tổng nấc §F (honest, checklist-14): 🔴 floor (loại proxy time/age 4 mục + outcome 2 mục) = ĐẠT qua mark + §6.6 + §F.4. 🟡 method = eval-precision executed-file + convention (manual, không mechanized-CI) · budget ALIGNED mechanized (config no-decay) · outcome-correlation + hit-rate = Mức-2 tool-pending-data (KHÔNG trình như xong). Các con-số AI_INFRA tự-đo (cỡ golden-set, recall) = bằng-chứng của HỌ, KHÔNG mục-tiêu áp-cứng cho SE.


PHẦN G — Harness-15: Ngân-sách bộ-nhớ per-agent (token-based) — SÀN + 3 tầng, BẮT BUỘC dùng đủ (🔴 FUNCTION-FLOOR + 🟡 number anh-owner) +v2 §G.4 +v3 §G.5

Adopt S81 (2026-06-20) — AI_INFRA 2026-06-20-Governance-harness-15-memory-budget + checklist-15 (inbox broadcasts/inbox/ai_infra/). Áp qua 2-process (IMPLEMENT em-main single-writer D9 + REVIEW workflow) per mandate §6. adap-report → docs/governance/adap-reports/2026-06-20-Governance-harness-15-memory-budget.md.

Adopt-delta S82 (2026-06-21) — AI_INFRA 2026-06-20-Governance-harness-15-v2-hot-feed-update (type: update · supersedes_scope = tier-1-sizing + L2/L3-caps ONLY). Re-verify CHỈ phần đổi → §G.4 (Tầng-1 hot-feed-lớn + L2/L3 bỏ-trần + %-print 2-đầu-phiên + ranh-giới-vai-trò). Phần sàn-chức-năng gốc (§G.1-G.3) KHÔNG đổi. adap-report → 2026-06-21-Governance-harness-15-v2-hot-feed-update.md.

Adopt-delta S83 (2026-06-22)anh owner-directive trực-tiếp (KHÔNG broadcast): full AI_INFRA parity (lead 220K · mem-sub 60K · wf-sub 50K) + spawn-fill-to-budget (sub Tầng-1 = MEMORY.md byte-cap + spawn-prompt giàu) → §G.5. Sửa self-shrink S82. Mark H-15 v3-delta (ACTIVE-MARKS.md).

Adopt-delta S94 (2026-06-29)anh owner-directive trực-tiếp (KHÔNG broadcast): lead 220K→380K (SE-specific override để chứa full canonical read-set ~368K; lead KHÔNG còn AI_INFRA-parity, subs giữ 60K/50K). ⚠️ ~97% fill = context-rot trade-off owner-accepted (honest_caveat §5); trần budget ⟂ harness Read-25K/call — mega-line STATUS/HANDOFF VẪN cần re-tier mới Read-trọn (cap raise KHÔNG unblock Read). §G.5 body giữ S83-record (no-retrofit), số sống = budget.json live-read. Mark H-15 v4-delta RC-pqhuy1987-29-06-2026-23-25-50 (ACTIVE-MARKS.md).

🔑 Cốt-lõi: ngân-sách bộ-nhớ = mức TẬN-DỤNG-TỐI-THIỂU phải đạt, KHÔNG phải trần để dè-xẻn. Tiết-kiệm-token = quên-việc (rơi trạng-thái giữa phiên) = KHÔNG tiết-kiệm thật (làm-lại tốn HƠN — cùng họ Goodhart §F.4/§6.6). Khoảng-trống quan-sát hay rơi đúng vào chính LEAD (lead tự-nạp kiến-trúc/luật nhưng bỏ quên trạng-thái-công-việc) → §G.2(c) vá đúng chỗ đó.

G.1 — Mô-hình = SÀN cố-định + 3 tầng được-quản-lý (A1/A2/A3)

  • SÀN-harness (A1, đo-được): phần cố-định mỗi spawn = tool-schema + framing + persona/role + lead-pasted base-doc-slice + prompt. SE TỰ đo (KHÔNG mượn số AI_INFRA): persona đo-thật .claude/agents/*.md (4.3KB13.3KB ≈ 1.3K4.0K tok /3.3); tool-schema+framing harness-injected SE ước-lượng-riêng (trùng AI_INFRA ~21K vì cùng-họ-toolset Read/Write/Edit/Bash/Grep/Glob/Skill/RAG, KHÔNG mượn-số) → floor ≈ 21K measured-estimate → round-up 30K (cap RIÊNG SE) (memory-budget.json:harness_floor). Honest: persona = đo-thật-byte; phần harness-injected = ƯỚC-LƯỢNG (không byte-count cục-bộ được).
  • A3 tách-nhà chống-đếm-trùng: persona + lead-docs thuộc SÀN, KHÔNG đếm vào L1-managed. L1-managed = own agent-memory + archive _INDEX + work-state block (memory-budget.json:harness_floor._note).
  • 3 tầng managed (A2 — cập-nhật v3 §G.5): Tầng-1 = HOT-FEED LỚN per-role (lead 220K · agent-ký-ức 60K · agent-workflow 50Kanh-set FULL AI_INFRA parity S83 v3, supersede self-shrink S82; nạp đầy 4 bucket WIP·lỗi-lặp·tồn-đọng·quyết-định-chờ) · L2/L3 BỎ TRẦN (on-demand, no artificial tier-cap, chỉ chặn bởi cửa-sổ-ngữ-cảnh model). 🔴 con-số = quyền CHỦ-DỰ-ÁN (anh) — em-main THỰC-THI-đúng-số + BÁO-% (KHÔNG tự-tinh-chỉnh), xem §G.4/§G.5 (token_governor).

G.2 — 6 sàn-CHỨC-NĂNG bắt-buộc (🔴 — map onto SE, honest mechanized-vs-convention)

Sàn SE map Nấc Cơ-chế-hóa vs quy-ước
đo-SÀN (A1) persona đo-thật-byte TRỰC-TIẾP (Get-ChildItem, KHÔNG qua measure-agent-memory.ps1 — script đó chỉ đo agent-memory-tier byte = byte-governor, KHÁC floor) + harness-injected ước-lượng + round-up 21K→30K runtime(đo)→executed-file mechanized (byte-count trực-tiếp) + convention (ước-lượng harness-injected + round-up)
(a) nạp-đầy L1 nguyên-tắc dùng-đủ-ngân-sách, no-token-saving, no-garbage (token_governor._note) executed-file → runtime mỗi spawn convention (kỷ-luật nạp)
(b) cắt theo GIÁ-TRỊ archive_gate.value_protect (gotcha/anti-pattern/recurring/root-cause GIỮ-L1 bất-kể tuổi) ⟂ keep-floor newest-5 (recency) = 2 trục bảo-vệ trực-giao = mark RC-…10-29-11 áp xuống tầng-bộ-nhớ executed-file convention (em-main judge; patterns = grep-hint DRY-RUN advisory, KHÔNG auto-exclude)
(c) work-state block @start session-start §2.1.5 LEAD nạp+phát-biểu: roadmap đang-chạy + việc-dở + quyết-định-chờ + lỗi-lặp-lại executed-file → runtime mỗi phiên convention (kỷ-luật đầu-phiên, vá khoảng-trống-LEAD)
(d) 3 tệp-chốt L1 (1) persona .claude/agents/<name>.md + (2) own agent-memory/<name>/MEMORY.md auto-inject + (3) MEMORY-PACK slice (hmw.js args) — đã CÓ SẴN SE executed-file convention (verify-declare)
(e) 2-governor byte (tiers/archive_gate) ⟂ token (token_governor) — giữ CẢ HAI, KHÔNG gộp (đo 2 thứ khác: file-trên-đĩa ≠ ngữ-cảnh-nạp) executed-file mechanized (2 config tách)

G.3 — Tùy-chỉnh (🟡) + honest tổng

  • 🟡 con-số SÀN (SE tự-đo 30K) · con-số 3 tầng (theo khối-lượng ERP nhiều-module) · hình-thức work-state block (SE = session-start REPORT + carry-list). Con-số AI_INFRA (~21K) = bằng-chứng HỌ, KHÔNG áp-cứng SE.
  • Honest nấc tổng: mechanized = chỉ (e) 2-config byte+token + đo-SÀN (qua measure script); 5/6 sàn-chức-năng = CONVENTION (nạp-đầy · cắt-giá-trị · work-state · 3-tệp-chốt = kỷ-luật người+AI). KHÔNG nhận "mechanized" cho kỷ-luật. value_protect.patterns = grep-hint DRY-RUN (advisory FLAG), KHÔNG enforced auto-exclude (archive-gate giữ DRY-RUN, em-main quyết — D6).
  • token≈byte/3.3 (VN thật; byte/4 = cận-trên → headroom THẬT lớn hơn). Floor = đo-được không-exact (honest-note b). Agent chưa-có-archive (database-agent/investigator-api/...) → phần "_INDEX theo ngân-sách" moot với chúng (honest-note d).

G.4 — Harness-15-v2 delta (S82): Tầng-1 hot-feed LỚN + L2/L3 bỏ-trần + %-print + ranh-giới vai-trò

Delta chồng lên §G.1-G.3 (gốc KHÔNG đổi). Re-verify CHỈ 2 phần đổi + 1 tool mới. Broadcast 2026-06-20-Governance-harness-15-v2-hot-feed-update (supersedes_scope = tier-1-sizing + L2/L3-caps ONLY).

  • (1) Tầng-1 = HOT-FEED LỚN (🔴 SÀN-kiến-trúc): phần luôn-nạp phải DÀY (đừng để mỏng) — nạp đầy 4 bucket nội-dung-công-việc: WIP work-state · lỗi-lặp/anti-pattern/gotcha (value_protect §G.2(b), giữ bất-kể tuổi) · tồn-đọng · quyết-định-chờ. Bằng-chứng nền: Tầng-1 mỏng → lead bỏ quên việc nhiều phiên liên-tiếp (đúng bệnh H15 chữa). Per-role: lead 220K · agent-ký-ức 60K · agent-workflow 50K (token_governor.tier1_hotfeed_tokens) — anh-set FULL AI_INFRA parity (S83 v3 §G.5), supersede S82 self-shrink.
  • (2) L2/L3 BỎ TRẦN (🔴 SÀN-kiến-trúc): gỡ cap cứng L2=6K/L3=4K → on-demand kéo-về tự-do, không hạn-mức-tầng nhân-tạo, chỉ chặn bởi cửa-sổ-ngữ-cảnh model. on-demand nên KHÔNG chiếm-chỗ thường-trực (no always-cost).
  • (3) %-print 2 đầu-phiên (🔴 tool mới): session-start §2.1.6 (composition Tầng-1 theo %/bucket) + session-end §L.b(c) (% sau-nạp + Headroom). Ước-lượng-tỉ-lệ đủ. Headroom > 0 mà CÒN nội-dung giá-trị-cao = under-fill (SAI) → nạp tiếp; Headroom = cờ-báo, KHÔNG phải đích-tiết-kiệm.
  • (4) Ranh-giới vai-trò (🔴 governance): con-số budget = quyền CHỦ-DỰ-ÁN (anh), KHÔNG phải AI-lead. em-main = (i) thực-thi đúng-số (no-truncate, kéo từng bucket tới target) + (ii) báo-% 2-đầu-phiên cho anh quyết. Sửa framing S81 "lead-authority" (nhầm AI-lead ↔ chủ-dự-án). Cùng tinh-thần mark RC-…10-29-09 (AI = neo-lý-tính, anh quyết) + report-before-stamp.
  • Honest đánh-đổi (v2 §5): Tầng-1 lớn = rot CAO HƠN trên phần always-loaded — chấp-nhận có-chủ-đích (quên-việc tệ hơn rot), KHÔNG phải "rot biến mất". SÀN = kiến-trúc (hot-feed lớn + L2/L3 on-demand), KHÔNG phải con-số. Nấc honest: (1)(2) = config mechanized (token_governor) · (3)(4) = convention (kỷ-luật người+AI: nạp-đủ + báo-% + anh-quyết-số).

G.5 — Harness-15-v3 delta (S83 2026-06-22): full AI_INFRA parity + spawn-fill-to-budget (anh owner-directive)

Delta chồng lên §G.4 (gốc KHÔNG đổi). anh owner-directive trực-tiếp (KHÔNG qua broadcast AI_INFRA) — con-số = quyền chủ-dự-án (§G.4 (4)). Mark = ACTIVE-MARKS.md H-15 v3-delta.

  • (1) FULL AI_INFRA parity (🔴 anh-set): lead 220K · mem-sub 60K · wf-sub 50K (token_governor.tier1_hotfeed_tokens). SUPERSEDE S82 self-estimate (lead 60K / sub 20K-16K "vì SE nhỏ hơn / byte-cap binds") — đó là AI tự-co-nhỏ, đúng cái mark RC-…01-58-01 cấm. anh: "Giờ là 220k → đầu phiên nạp thêm tier1_lead cho đủ."
  • (2) Sub Tầng-1 = MEMORY.md (byte-cap) + SPAWN-PROMPT (🔴 sửa hiểu-nhầm S82): byte-cap MEMORY.md (30720B ~9.3K tok) CHỈ LÀ 1 LÁT của Tầng-1 sub — prompt-spawn em-main viết (relevant gotcha + state + full task-context + docs/memory liên-quan) nạp PHẦN CÒN LẠI tới token-budget. ⇒ 60K/50K KHÔNG phải "headroom vô-dụng" (bác lập-luận S82 "byte-cap binds first"); nó là target em-main NẠP-ĐẦY qua prompt giàu (spawn_fill_directive).
  • (3) Spawn-fill discipline (🔴 convention): khi SPAWN bất-kỳ sub/workflow-agent → nạp context tới budget bằng prompt GIÀU giá-trị-công-việc (gotcha + state + task-context + docs/memory), KHÔNG nạp rác. Hot-load token đầu = token GIÁ-TRỊ-NHẤT (chắt-lọc qua nhiều giai-đoạn). RECONCILE agents/README "≤8K brief": heuristic cũ gác RETURN-truncation #53 (nay vá bằng memoryDelta return + recover-disk) → INPUT KHÔNG starve nữa, nạp giàu.
  • Honest nấc: (1) = config mechanized (token_governor số mới). (2)(3) = convention (kỷ-luật em-main viết-prompt-giàu mỗi spawn — KHÔNG tool-ép; cùng họ §G.2 "5/6 convention"). value-gate (highest-value, no-garbage) = judge em-main, không auto-enforce.

PHẦN H — Harness-16: Memory-Fidelity-EVAL (MFE) — đo nạp-vs-nhớ-vs-dùng (🔴 FUNCTION-FLOOR + 🟡 method)

Adopt S93 (2026-06-29) — AI_INFRA 3 broadcast 2026-06-29-Governance-harness-16-{memory-fidelity-eval,mfe-update,cd-judge-sub-update}. Canonical artifact → scripts/mfe-eval.ps1 + eval/mfe/ + memory-budget.json:mfe (KHÔNG copy luật số ở đây — B1).

🔴 VOCAB (C3 — bắt buộc tách nghĩa): "memory-fidelity" ĐÃ tồn tại ở H6.7 = memoryDelta-routing-fidelity (delta về đúng agent-memory/<role> single-writer). Harness-16 = memory-fidelity-EVAL (MFE) = coverage/RETENTION (hot-feed có giữ-được tập must-remember không). 2 nghĩa khác nhau — luôn gọi MFE cho nghĩa H-16. Cặp alias đã ghi governance-detectors.ps1 C3 $aliasSets (ghi-nhận, KHÔNG flag drift).

Vì sao: %-print (§G) đo đã-NHÉT bao nhiêu vào Tầng-1 (ước theo độ-dài). MFE đo tiếp: agent có giữ/dùng cái đã nhét không — đã-nạp ≠ nhớ-ra ≠ dùng-đúng.

H1 — Sàn deterministic ($0, NO-API, mfe-eval.ps1):

  • LEAD Coverage-FIT — must-remember denominator (status-field, KHÔNG grep): marks Active(-High) (ACTIVE-MARKS.md) + AS-class + Active-Guards (error-ledger.md) + recurring-gotchas (gotchas.md), dedup (gotcha/guard mà AS-row trỏ #N/AS-N → gộp vào AS; merge_guard_to_as toggle). FIT = byte-span → token-RANGE [bytes/4 .. bytes/3.0] vs cap live-read token_governor.tier1_hotfeed_tokens.lead_tokens (S93: 29 item ~2.53.3K tok / cap-live 220K = 1.5% → FIT thừa; ⚠️ cap S94→380K budget.json, mfe live-read tự-đúng — 220K = snapshot S93, KHÔNG hardcode).
  • age-band — FLAG old-but-still-required, KHÔNG cắt theo tuổi (mark RC-…10-29-11); drop chỉ khi status đổi.
  • Goodhart-anchor — in strikes_total + RCA_entries (error-ledger) cạnh coverage; strikes tăng mà coverage cao = điểm nói dối. KHÔNG self-grade.
  • SUB per-role coverage — denom = anti-pattern/NEVER trong agents/<role>.md; numer = còn-mang trong diary agent-memory/<role>/MEMORY.md (KHÔNG project/user MEMORY.md — bẫy trùng-tên H15-v3); match = exact-id OR ≥2 content-word sau stop-list (đánh bại bẫy leading-verb-9/9-giả). ĐO-THẬT (S93: impl-backend 94% · impl-frontend 85% · reviewer 88%; role prose-only → N/A KHÔNG "0%"). SUB-WORKFLOW (fan-out ephemeral) = N/A by-design (kênh ký-ức = memory-pack lead bơm).

H2 — Judge scaffold (Branch A, -Judge, OPT-IN cadence-gated): seed eval/mfe/sample-questions.json (12 câu, stable-id anchored RC/gotcha#/AS#, immutable, time-stamped — gieo NGAY để vài tháng sau đo age-retention). Scorer RỖNG. 🔴 con-số nhớ/dùng CHƯA có nghĩa tới khi (a) câu-hỏi đủ-chín-tuổi (b) trọng-tài độc-lập khác-phiên; tự-chấm-cùng-phiên = vô-nghĩa.

H3 — Quyết-định 2-ca: Coverage<100%/vượt-trần = thiếu-CHỖ → TĂNG budget (anh quyết số); nhớ-thấp-dù-đủ-chỗ = rot → SẮP-XẾP-LẠI (ưu-tiên-giá-trị). Tăng-chỗ KHÔNG cứu rot.

🔴 READ-ONLY trên token_governor — MFE đọc caps (single-source), KHÔNG ghi/auto-tune (owner-authority §G.4(4) — coverage thấp KHÔNG được tự bơm cap).

Honest nấc: H1 deterministic = executed-file + runtime-smoke S93 (chạy thật, 3-tier OK). H2 judge = SCAFFOLD-only (chưa scorer → KHÔNG nhận "đã đo độ-nhớ"). token = RANGE (char/4 ≠ token thật, VN ~3.0-3.5 byte/tok). Wire = opt-in session-start §2.1.6 + session-end §L.b(c) (no-param = như cũ). Cross-harness 0-conflict (additive vs §F eval-precision/§G budget/archive-gate-byte/detectors-drift; trùng value_protect = same-set CỐ Ý).


PHẦN I — Harness-17: Vòng tự-cải-thiện bộ-nhớ (Đo → Tinh-chỉnh → Kiểm) (🔴 FUNCTION-FLOOR + 🟡 method)

Adopt S95 (2026-07-01) — AI_INFRA 2 broadcast 2026-06-30-Governance-{harness-17-memory-self-improvement, checklist-harness-17} (hash verify MATCH ✓ cả 2 · reviewer_gate: PASS). Áp qua 2-workflow (Harness-9 mandate) + 1 deep-reverify (anh-directed): WF1 wf_f085d7c4-d78 (ground-truth reuse-anchor + draft) + WF2 wf_8e73c1d6-ee6 (3-lane review PASS 0-blocking) + WF3 wf_6f44eddf-680 (fault-injection teeth-proof + integration + cross-doc, PASS 0 application-defect). Artifact mới: scripts/memory-selfimprove-audit.ps1 + .claude/governance/reinject-ledger.md. KHÔNG copy luật số ở đây — B1.

Vì sao (đóng "vòng hở"): nhánh eval (§H MFE) mới ĐO fidelity rồi in số rồi DỪNG — thấy mục-sàn rớt khỏi hot-mem nhưng KHÔNG có cơ-chế HÀNH-ĐỘNG. H17 nối 2 khâu thiếu: Tinh-chỉnh (tín-hiệu→hành-động, có chốt-dừng) + Kiểm (spec-compliance audit). Bộ-nhớ ⇒ tài-sản được quản-trị, kiểm-được theo bản đặc-tả.

🔴 VOCAB (C3 — bắt buộc tách nghĩa, KHÔNG seed $aliasSets): chữ "coverage" nay 3 nghĩa — (1) H2 harvest-curator "Coverage" = 0-silent-miss mọi sub/run đã-chạy · (2) §H MFE SUB "coverage" = role-floor còn-mang-trong-diary · (3) H17 A1 "HCV" (harvest-coverage, said-vs-kept) = cái sub NÓI-ra (return) vs cái GIỮ-lại (memory). Luôn gọi HCV cho nghĩa H17. Giống H16 memory-fidelity: 2-3-khái-niệm-1-từ = KHÔNG seed detector (seed → false-flag), chỉ ghi alias-map + C3-comment (governance-detectors.ps1). "audit" (C-KIỂM) gọi spec-audit tránh đụng monthly-drift-audit. Từ mới reinject/floor-rot/build-gap/signal→action = grep 0-match toàn docs/ (WF1 Agent-D) → SẠCH.

A — ĐO (Eval) — 2 sàn:

  • A1 HCV (harvest-coverage, said-vs-kept): so cái sub NÓI trong return vs cái GIỮ trong memory → bắt mất-mát âm-thầm khi cô-đặc. SE: harvest-curator H2 trục Coverage (0-silent-miss, convention) + §H MFE SUB per-role coverage (retained-side, mechanized) + HCV proxy mới trong memory-selfimprove-audit.ps1 (run-trace runs/<id>/ sub-*.md có *-synthesis.md = file-exists deterministic). 🟡 Honest: tỉ-lệ said-vs-kept = calibration-interim (caveat 3, cò-báo-đuôi KHÔNG vạch-chất-lượng); per-item-L1-presence cho AS/guard/gotcha = partial build-gap (MFE age-band chỉ đo marks-có-date). HCV proxy hiện N/A-idle (run gần nhất = return-delta-only mode, 0 sub-*.md để chấm) → A1-HCV = cơ-chế-sẵn-sàng CHƯA-có-mẫu-đo (script tự in N/A minh-bạch), KHÔNG phải đã-đang-đo (WF2-L3 honest-completeness).
  • A2 load-fidelity (fit + %thực-giữ per-tier): = §H MFE (mfe-eval.ps1 LEAD Coverage-FIT + SUB per-role). REUSE-cite, KHÔNG rebuild.

B — TINH-CHỈNH (Refine) — 3 sàn: (loop = tầng D6 DÒ+NÊU-CỜ; em-main = D9 writer; anh = quyết-số)

  • B1 bảng ánh-xạ tín-hiệu → hành-động (4 loại — map thẳng cơ-chế SE hiện-có, KHÔNG dựng mới):

    Tín-hiệu Ngưỡng phát-hiện Hành-động Cơ-chế-SE (neo) Nấc
    floor-rot (mục-sàn RỚT khỏi hot-mem) MFE age-band FLAG old-but-still-required (mfe-eval.ps1) + status vẫn Active reinject VERBATIM từ canonical → em-main APPEND L1 + ghi reinject-ledger MFE age-band + work-state block session-start §2.1.5 + reinject-ledger (B2) detect=mechanized · reinject=convention
    repeat ≥ 2 (lặp ≥2 phiên) error-ledger 2-strike + MFE Goodhart strikes_total promote → pattern/anti-pattern (episodic→procedural) error-ledger §L.a 2-strike-promote + harvest-curator INFORM + value_protect giữ-L1 promote=convention · strike-count=mechanized
    old + valueless (cũ ∧ hết-giá-trị) archive-gate: over-cap ∧ ngoài keep-floor-5 ∧ KHÔNG khớp value_protect ∧ 2-strike cold-archive → MOVE byte-0-loss + con-trỏ _INDEX §A memory-archive-gate.ps1 (hysteresis 0.85) planner=mechanized DRY-RUN · MOVE=convention (D5)
    raw (chưa cô-đặc) L1 entry verbose/>~1.5K char (gotcha #53 risk) distill → nén + đẩy verbatim L2 + gist /sleep-recovery-memory-l2 command (gist-compress additive) + _INDEX/gist (S70) distill=convention (command-assisted) · pointer-resolve=mechanized

    🔴 Đính-chính: /sleep-recovery-memory-l2 = COMMAND thật (.claude/commands/, 12.6KB) — KHÔNG phải "chỉ convention pattern"/skill (WF1 Agent-C nhầm; em-main verify). Distill JUDGMENT vẫn convention.

  • B2 CG-1 termination (reinject-ledger): .claude/governance/reinject-ledger.mdgit-tracked · append-only · single-writer em-main (D9). 🔴 TÁCH khỏi memory-budget.json (file đó = quyền cấp-ngân-sách anh §G.4(4); trộn = AI lấn quyền). Rule: mỗi item reinject ≤1 lần / N=3 phiên; đo-lại vẫn thiếu → ESCALATE anh (build-gap? tăng-budget? đổi-placement — mirror MFE H3 2-ca), KHÔNG tự-reinject-lần-2. Chống reinject-loop vô-hạn che build-gap.

  • B3 phép-thử-ranh-giới build-gap vs floor-rot (chỉ floor-rot mới kích reinject):

    🧪 "Item ĐÃ TỪNG hiện-diện trong hot-mem/diary/canonical-ledger ở phiên trước KHÔNG?" (grep git log -p các ledger + agent-memory/<role>/MEMORY.md + archive/) → = floor-rot (cơ-chế có, chỉ RỚT → reinject OK) · KHÔNG = build-gap (chưa dựng → đi DỰNG cơ-chế qua D7 nếu chạm luật, KHÔNG reinject). Chốt: floor-rot = ĐÃ-tồn-tại ∩ CÒN-giá-trị ∩ RỚT-khỏi-L1; thiếu 1 vế → KHÔNG reinject (ca rớt-mà-hết-cần = archive-gate đúng-đắn; ca chưa-dựng = build-gap).

C — KIỂM (Audit / spec-audit) — 5 sàn:

  • C1 spec-compliance checker deterministic LIVE: scripts/memory-selfimprove-audit.ps1 (NO-API, ASCII #30, exit-0, emit CRITERIA+GAP set KHÔNG frozen-tally — chạy LIVE mỗi lần vì đo artifact-SỐNG). 3 mặt: (a) write-gov/D9 [A1 tool-scope sub KHÔNG store_memory · A2 hmw.js SCHEMA return-delta · A3 propose-only decl] · (b) change-gov/D8 [COMPOSE governance-detectors.ps1 child-invoke exit-0, KHÔNG re-grep = tránh fork C3] · (c) distillation-spectrum [mỗi over-cap agent có raw→_INDEX→gist]. 🔴 Honest: D9 enforce qua tool-scope + SCHEMA (A1/A2 mechanized), KHÔNG OS-hook (.claude/settings.json KHÔNG có hook store_memory — AS-10/E-006 fails-open); A3 = PROXY (phrase-presence ≠ enforce). Chứng "guard WIRED", KHÔNG "runtime KHÔNG-THỂ vi-phạm". Runtime-verified S95: A1/A2/A3/B1/B2 PASS, C-spectrum bắt frontend-designer over-cap GAP (răng thật).
  • C2 3 spot-check người: harvest-fidelity + đúng-verdict + provenance-integrity = convention (harvest-curator 5-trục Fidelity/Placement + reviewer verdict + session-end §L.b(f) gate). MÁY-không-tự-quyết → người soi.
  • C3 single-writer (loop propose-only): = D9 (§D.3). REUSE-cite. 🔴 Honest: "store_memory-strip mọi sub" = hook AI_INFRA runtime, KHÔNG có .js trong repo SE — SE enforce tại-chỗ = tool-scope (11 sub tools: chỉ READ verb, 0 store_memory) + hmw.js SCHEMA return-delta-only. (Sửa overclaim tiềm-ẩn.)
  • C4 provenance 2-chiều: phân-biệt entry chủ-tự-viết (default) vs thu-hoạch-từ-sub (có spawn-record) = hmw.js:53-63 memoryDelta 4-field + session-end §L.b(d). 🟡 partial (nhãn ngầm, chưa tag tường-minh). ⚠️ field-set LỆCH: hmw.js {task·verdict·learned·surprise} (runtime-return) ≠ session-end {agent·task·nấc·evidence} (harvest-record) — 2 schema 2 tầng khác nhau (return vs record), KHÔNG assume đồng-nhất; 2-chiều-tag tường-minh = build-thêm nhỏ (defer, honest).
  • CG-2 high-value MIỄN hạ-bậc-theo-tuổi: = §G.2(b) value_protect + mark RC-…10-29-11. REUSE-cite. Tuổi KHÔNG phải cớ cắt (pain/volume/quality).

Cadence wire (D.1): session-start §2.1.7 = loop-DÒ (chạy spec-audit + MFE báo CRITERIA+GAP + reinject-ledger CG-1 check, INFORM-only) · session-end §L.b(c) = loop-REFINE-propose (B1 signal→action → em-main APPEND single-writer). KHÔNG lệnh tự-động đơn-nhất (caveat 1: walkthrough thủ-công người-điều-phối; khối-đo exit-0 riêng-lẻ).

Placement-constraint (WF1 Agent-D, 0 hard-conflict): ① reinject-ledger TÁCH khỏi budget.json · ② reinject = promote-COPY L2→L1, nguồn archive INTACT (D11 no-conflict) · ③ loop = D6-tier dưới D9 (CG-1 escalate ≙ E.2 report-before-stamp).

Honest nấc tổng §I (10 sàn 🔴 ĐẠT): mechanized = C1 spec-audit (a/b/c) + A2 MFE + strike-anchor + HCV-proxy file-exists. Phần lớn B/C = CONVENTION (đúng checklist H17 tự nói: chỉ 2 sàn-đo A + spec-checker + gắn-nhãn-nguồn = cơ-chế-hoá; còn lại kỷ-luật người+AI). 5 caveat H17 (giữ trong doc): (1) "vòng chạy thông" = walkthrough THỦ-CÔNG người-điều-phối nối, KHÔNG lệnh-tự-động-đơn-nhất · (2) judge recall/apply = STUB (số CHƯA nghĩa tới khi sample-q chín-tuổi + trọng-tài độc-lập khác-phiên) · (3) ngưỡng HCV = calibration-interim · (4) tự-soi: vòng đo agent-công-nhân CHƯA đo chính khâu-meta (điểm-mù) · (5) cô-đặc mới có NÉN, verify-trước-khi-giữ CHƯA dựng.


PHẦN J — Harness-18: Kiện-toàn kiến-trúc (4 khuôn-mẫu additive) + frontier-method self-audit (🔴 FUNCTION-FLOOR + 🟡 form)

Adopt S100 (2026-07-02) — AI_INFRA broadcast 2026-07-02-Governance-{harness-18-architecture-consolidation, checklist-harness-18} (content_sha256 re-compute MATCH ✓ cả 2; ⚠️ frontmatter cả 3 broadcast đợt này thiếu field reviewer_gate — 24 broadcast trước đều có; gate-evidence nằm trong body "dogfood 2 phiên · cổng-kiểm ba-làn PASS" → SE áp với reasoning ghi tường-minh + flag format-regression về AI_INFRA). Áp qua 2-workflow Harness-9: WF1 investigate wf_50a817ce-a69 (3 lane investigator-codebase, return-delta MODE-A) + WF2 review wf_955643c3-f7d (re-run S101 2026-07-03 — gốc wf_31ea3985-92c mất theo CLI-restart → re-run fresh; verdict PASS_WITH_CONCERNS 0-BLOCKING: Lane-A detector-teeth PASS fault-inject-4/4 · Lane-B ledger PASS_WITH_CONCERNS [1 CONCERN workflows/README.md:51 nhãn-cũ→FIXED S101] · Lane-C PARTIAL [codify+n-a+containment first-hand ✓; frontier-hash+reviewer_gate dựa record-S100 do broadcast-inbound vắng repo]; Lane-C #53-garble→recover first-hand). Additive — KHÔNG thay đợt nào trước. Broadcast chị-em 2026-07-01-…-harness-frontier-assessment: content_sha256 MISMATCH khi re-compute (4 biến-thể canonicalization đều lệch; 2 file H18 MATCH → phép canonical đúng, body đã lệch stamp) → HELD-integrity: KHÔNG codify rule từ nó, CHỈ chạy self-audit vô-hại (kết quả dưới); chờ AI_INFRA verify/re-stamp.

J.A — Freshness-detector nâng-cấp (3 sàn 🔴 — mechanized, fault-inject 4/4 + real-repo verified S100):

  • mismatch-only + ratio-band confidence: governance-detectors.ps1 C2 chỉ flag khi count-token LỆCH canonical (kể-lại-đúng = IM — fault-inject case-2); sev theo ratio-band — gần-canonical 0.52.0 = MED (stale-total khả-tín), xa = LOW (count cục-bộ-module) — sửa lớp FP cũ |diff|≥10=MED vốn NGƯỢC (S98 verify: 8/8 MED đều FP; post-fix real-repo: MED derived-stale 11→0, giữ 3 vocab-fork known).
  • scan-range theo dải THẬT: $derivedDocs fixed-list → glob động (ALL .claude/skills/*/SKILL.md + ALL .claude/commands/*.md) — vá lớp-mù commands/ nơi "(68)" sống ~11 phiên (H1 F3 S99).
  • exclusion: self-exclusion 6 path + $ExcludeExact (pre-existing, re-verified 0 self-match).
  • 🟡 Honest: FP-guard baseline|S\d{2} skip-line = blind-spot có-chủ-đích (dòng chứa "Baseline" KHÔNG quét — dòng "130 PASS" session-start đã B1-pointer TAY S100); sev = confidence KHÔNG phải existence (total-cổ-đại "77 test"/440 → LOW advisory vẫn hiện).

J.B — Vệ-sinh sổ-ghi: retire runs/_ledger.md two-beat (🔴 đo-bắt-thật + nghỉ-hưu-trung-thực + sweep):

  • Đo (WF1-L3, evidence-grade): ledger true-orphan-catch = 0/15 row lifetime (đều open+close cùng-ngày 06-18; chỉ legend) · folder/disk-scan H2 bắt thật 4+ vụ memory-delta orphan (S57 · post-S57bis 4-MISS · S98 ×3 · S99 cicd#485) · mode-A ephemeral (default S93+) → ledger coverage workflow gần đây = 0/8. Đính-chính ground-truth: "S71 harvest/ rỗng" = wording tiêu-chí trong session-start, KHÔNG phải vụ catch — run-folder-orphan lifetime = 0 ở CẢ 2 cơ chế.
  • Caveat-3 parity (honest): replacement KHÔNG "proven bắt tốt hơn" trên run-folder-orphan data (0 incident 2 phía) — căn cứ retire = coverage-cấu-trúc (mode-A 0/8) + chi-phí duy-trì + đã cần disclaimer-note S98 chống nhầm, KHÔNG phải catch-rate.
  • Nghỉ-hưu: 1 dòng 🧊 header _ledger.md (đảo-ngược = gỡ dòng; 15 row GIỮ NGUYÊN — dời-đi không xoá). Orphan-authority = folder-scan: runs/<id>/run.md*-synthesis.md VẮNG/0-byte (dual-accept harvest/ run cũ).
  • Sweep 6 mandate-consumer + cites (mechanized-grep _ledger exact — 5 "ledger" khác tên trong repo, tránh C3-fork): runs/README.md ×7 (:3/:38/L1/L2/§C6-header/:117/:127) · workflows/README.md ×2 (:20/:34-B3) · session-start.md §2.1.1-H2 · session-end.md §L.b(f) · agents/harvest-curator.md ×3 (:28/:44/:52-cite) · agents/README.md G-015-cite · + agent-memory/harvest-curator/MEMORY.md baseline re-ground. HISTORY class (session-log/adap-report/archive/runs-synthesis) GIỮ NGUYÊN.

J.C — Bracket phân-bổ model: 1 ĐẠT + 2 n-a-by-owner-mandate (🔴 điều-kiện xét-lại VIẾT RA):

  • Precondition raw-economics ĐÚNG (Fable > Opus 4.8 giá) NHƯNG H8 all-inherit = owner-directive 🔴 S66 "chất-lượng trên chi-phí" (anh-chốt, mọi sister) → KHÔNG demote lớp-việc nào; escape-hatch per-task tier:'opus' (hmw.js) GIỮ = cơ-chế hạ-bậc-theo-việc ĐÃ TỒN TẠI khi cần. 4 lớp không-hạ + 2-đầu = vacuously-held (mọi vai đang top-tier). Promote-list 🟡 = n-a (không gì để nâng).
  • Điều-kiện xét-lại (C3-floor, viết ra — đo được): NẾU anh đảo H8 HOẶC áp-lực chi-phí thật xuất hiện → dựng bracket theo checklist H18-C, so ≥3-run eval vs baseline TRƯỚC khi cố-định; tới lúc đó C1/C2 hết n-a. (Caveat-2 broadcast: "chi-phí ngang nhau thì khuôn-mẫu không áp" — SE = ngang-nhau-BY-DECISION.)

J.D — Đóng làn kết-quả (🔴 3 sàn — 2 ĐẠT wired + 1 REUSE):

  • D(a) spot-check tươi: wired session-end §L.b(i) — session governance/review-heavy chọn 35 artifact đã tự-qua-cổng → kiểm-lại tươi bằng ground-truth. Dogfood n=1 S100 (WF2 lane-3). 🟡 Honest: n=1 = mẫu hiệu-chỉnh (caveat-1 broadcast), CHƯA "proven".
  • D(b) reinject-on-real-miss + D(c) chốt-chặn-lặp: = REUSE §I B2 reinject-ledger.md CG-1 (≤1/N=3 + escalate anh + đo-lại phiên kế) — H17 đã dựng ĐÚNG khuôn này TRƯỚC broadcast, KHÔNG sổ mới (chống C3-fork "ledger").

Frontier-assessment self-audit (S100 — chạy dù broadcast HELD-integrity, vì self-audit vô-hại + có giá-trị riêng):

  • P1 taxonomy-claim: CLEAN — grep \bMAST\b = 0 repo-wide; error-ledger "3-axis tag" = internal scheme map Gov-v2 (KHÔNG claim external-taxonomy) → ma-trận anh-xạ n-a-legit.
  • P2 ghost-wire: 1 THẬT = cron monthly (solution-erp-skill-audit-monthly: CronList runtime = 0 job + scheduler RỖNG 2026-05-04 + S96 chạy 13:04 em-main-in-session + CronCreate harness session-scoped không persist) → honest-retire 5 file S100 (rules.md ×2 · CLAUDE.md · STATUS.md · session-start.md): audit monthly = thủ-công em-main theo cadence-pointer STATUS (function KHÔNG ghost — S44/S96 đều chạy đúng hạn; chỉ WIRING claim sai). +2 ghost-wire-config-key (mfe role_file_glob/diary_path_pattern defined-but-unread) + 1 latent blind-spot (selfimprove :147 no-tools:-skip) → defer đánh-số STATUS backlog D-1/D-2 (frontier HELD → không sửa vội). Cadence#4 + mọi auto-claim khác = WIRED hoặc disclaimed-no-daemon đúng convention G-015.
  • P3 measurer role-coverage: 3/3 script (mfe-eval + memory-selfimprove-audit + memory-archive-gate) = GLOB-LIVE, 0 hardcode roster/"11" — agent thứ 12 tự-cử (WF1-L1 file:line).
  • P4 correction-cadence proxy: ghi-nhận method, KHÔNG áp — 0 điểm-đau đo được hiện tại; áp-không-pain = chính "frontier-envy" mà broadcast cảnh-báo.

Honest nấc tổng §J (checklist 12 sàn 🔴): A 3/3 ĐẠT (mechanized + runtime fault-inject 4/4) · B 3/3 ĐẠT (đo = convention-với-số-liệu WF1-L3 · retire = executed-file reversible · sweep = mechanized-grep + executed 15 điểm) · C 1/3 ĐẠT (C3 revisit-condition executed-file) + 2/3 n-a-by-owner-mandate H8 (lý-do khách-quan viết rõ — caveat-2 broadcast) · D 3/3 ĐẠT (D-a wired + dogfood n=1 · D-b/D-c REUSE §I CG-1). Phát-biểu chủ-động: 10/12 ĐẠT + 2/12 n-a-reasoned = phủ đủ phần áp-được. Mechanized THẬT chỉ: J.A detector + J.B sweep-grep; phần còn lại = convention (KHÔNG nhận mechanized). 🟡 form 4 mục: detector-regex/ngưỡng tự đặt (ratio 0.52.0) · bracket-boundary theo H8 · sổ chốt-chặn = reinject-ledger git-tracked (REUSE) · promote-list n-a.


PHẦN K — Harness-19: "Model ảo" ensemble cho 2 vị-trí phán-quyết + thật/ảo depth-toggle (🔴 FUNCTION-FLOOR + 🟡 form ensemble-depth)

Adopt S101 (2026-07-03), anh-directed (/check-email AI_INFRA + /adap-apply → "Formal adopt + RC-stamp" + "full 2-workflow"). AI_INFRA broadcast 2026-07-03-Agent-harness-19-fable-clone (content_sha256 re-compute MATCH ✓ 6909299a…; +3 broadcast model-tier cùng đợt [fable-opus ee00d253 · checklist a7ff304b · v2-pin-simple eed277f7] đều MATCH + đều có reviewer_gate: PASS → format-regression H18 [thiếu field] đã fix). Áp qua 2-workflow Harness-9: WF1 investigate wf_5f308fd8-744 (3 lane wiring+mapping+adversarial, SOUND_WITH_CONCERNS — bắt 3 floor-fidelity gap; resume-after-interruption cached) + WF2 review wf_ed5b972f-a4d (→ PASS_WITH_CONCERNS 0-BLOCKING: Lane-A mechanism PWC [1 CONCERN marker write-only no-reader → FIXED S101 thêm session-start BƯỚC 0.5b reader] · Lane-B gov-record PASS [RC-mark 3-floor verbatim + vacuous-honest, 7 refutation fail] · Lane-C adap-honesty PASS [4 hash MATCH indep + 12/12 + no-overclaim]. ⚠️ GAP-3 AS-10 fired LIVE — lanes tự-ghi reviewer-memory dù RETURN-only-intent; harness-sanctioned "intentional" → KEPT + verified → dogfood-validate §K.C "GAP-3 = convention-KHÔNG-mechanism"). Additive — KHÔNG thay H8 all-inherit / bracket / promote; chỉ THÊM ensemble + toggle cho 2 vị-trí phán-quyết.

K.A — Ánh-xạ 2 vị-trí phán-quyết vào roster SE (🔴 §7 sàn — WF1-confirmed best-fit, no superior alt):

  • (a) Cổng rà-soát cuối = reviewer (adversarial 6-category + Smart-Friend anti-rubber-stamp + live-curl falsify + phân-xử mâu-thuẫn). (b) Ground-truth/xác-minh sự-thật = investigator-codebase (truy bằng-chứng gốc file:line + sqlcmd + git, chống bịa + RCA). investigator-api EXCLUDED (external-only) · database-agent EXCLUDED (DB-only subset). = cặp dogfood S101 (WF2 3-lane reviewer · WF1 3-lane investigator-codebase).

K.B — Cơ-chế 2 mode thật/ảo (🔴 §4 sàn) + toggle marker (🟡 form):

  • Fable-real (thật, marker .claude/fable-real-mode.on CÓ): 2 vị-trí chạy 1 lần top-model trực-tiếp (sâu nhất). Fable up=single-Fable · down (H5)=single-Opus-1M per-run fallback (KHÔNG đổi mode toàn-cục).
  • Fable-clone (ảo, marker VẮNG = MẶC-ĐỊNH, §4 ít-kinh-phí): 2 vị-trí chạy ensemble tier-2-mạnh-nhất = N lane đa-lăng-kính CÙNG 1 vai (qua hmw.js parallel) + em-main refute + synthesize (P3/P4) = "bản sao Fable".
  • Toggle = 2 lệnh /fable-real (Write marker) + /fable-clone (Remove marker) mirror /ultra-on//ultra-off⚠️ semantic INVERSE: marker-VẮNG = ảo-DEFAULT (khác hmw: marker-CÓ = feature-ON). marker gitignored (verify git check-ignore ✓; commit → thật-mode stuck-ON clone = burn quota, TỆ HƠN hmw vì elevate tier). Đổi mode CHỈ khi anh gõ (§4 — KHÔNG auto theo số-dư/cảm-tính, giữ mark RC-…10-29-09).

K.C — 3 floor-fidelity gap (🔴 WF1-L3 bắt — pin để stamp CÓ NGHĨA, không paperwork):

  • GAP-1 scope-creep guard: hmw.js VALID_ROLES nhận cả 9 vai, KHÔNG gate → all-inherit CHE leak (mọi vai top-tier nên mixed-roster "trông ổn"; Fable về + phân-tầng thì rò top-tier ensemble sang vai ngoài 2 vị-trí = vi phạm §3 hard-scope). → ảo-run = N lane CÙNG 1 vai phán-quyết (multi-lens), KHÔNG mixed-roster fan-out.
  • GAP-2 engine-label (§5): hmw.js SCHEMA memoryDelta{task,verdict,learned,surprise} KHÔNG field engine → em-main stamp nhãn engine @P3 harvest (single-writer B3), như S101 "model-note Opus-S101". = convention KHÔNG mechanism.
  • GAP-3 AS-10 fragment: mỗi run-trace ghi *-synthesis.md residual + lane giữ Bash (AS-10 fails-open) → "1 vai = 1 trí-nhớ" qua N lane giữ CHỈ bởi em-main single-writer. → N lane RETURN-only, em-main ghi 1 MEMORY entry/vai (+ nhãn engine).

K.D — 3 floor-point RC-stamped (🔴 §9 — RC-pqhuy1987-03-07-2026-17-46-35, ACTIVE-MARKS.md): (1) lead LUÔN top-model (KHÔNG đụng) · (2) CHỈ 2 vị-trí phán-quyết chạm top-model, CHỈ chế-độ thật do anh gõ (KHÔNG auto) · (3) mọi vai khác giữ model mặc-định. ⚠️ VACUOUSLY-MET-for-SE-today: dưới all-inherit + Fable-outage, reviewer+investigator-codebase ĐÃ top-model (Opus-1M) → point-2 grant 0 runtime-delta; point-3 trivially-held (SE không có "vai khác" tier-thấp — all-inherit S66). Stamp KHÔNG overclaim runtime-delta; value = future-proof floor + governance-record.

Honest nấc tổng §K: value THẬT ≠ cost (broadcast §8 "ensemble không rẻ hơn nhiều về token thô") mà = anti-consensus-catch (dogfood S101 WF2 Lane-B bắt workflows/README:51 stale-label token-exact-sweep sót, commit f229b07 — run-folder ephemeral, cite COMMIT) + formalize ensemble-heavy-judgment + thật/ảo depth-toggle owner-control + Fable-outage timeliness. Nấc = designed + will-dogfood (ensemble-pattern proven S101; thật-mode toggle chưa chạy thật lần nào). Mechanized THẬT = CHỈ marker-toggle (Write/Remove gitignored, verify-idiom) + hmw.js parallel-lanes; scope-guard + engine-label + single-writer = convention (em-main kỷ-luật, hmw.js không gate vai). RC-sig + command .md = executed-file, verified-pending-restart (no hot-reload).


CAVEAT (trung-thực — đọc trước khi tự nhận "đã tự-bảo-trì")

  • No-OS-hook: detector + gate chạy TRONG thân session-start/end body do em-main kích — KHÔNG fully-autonomous. Đúng mức: DÒ tự-động + toàn-diện; SỬA + GÁC dựa người-chủ-trì.
  • Auto-WRITE luật/copy = MỐI-NGUY #1, CỐ Ý CHƯA LÀM — defer tới ≥2 sự-cố thật mà thủ-công thất-bại (hiện 0). Chọn nhánh chỉ-DÒ-NÊU-CỜ cho mọi thứ chạm luật/copy (1-sửa-sai → N-chỗ-sai + phá hash broadcast đóng-băng).
  • Single-writer bar-không-hạ — cám-dỗ "để nó tự sửa cho nhanh" phải dừng trước chốt D9.
  • Detector = LƯỚI giảm-sót, KHÔNG khoá-cứng — bắt @đầu/đóng-phiên (theo nhịp); giữa 2 nhịp có khoảng-mù. Phòng-thủ-nhiều-lớp, không bảo-đảm tuyệt-đối.
  • Nấc dogfood: A2/A3/D4/D9/D11 = SE runtime-mechanized SẴN (H11 = chuẩn-hoá). C1-C3 + B3 + memory-archive-gate = MỚI build S75. D5-D8 + B1 = nhãn-hoá/codify cái ngầm-có. Phân-định 'detector viết-thành-lệnh' (executed-file) ≠ 'đã chạy-quan-sát' (runtime).
  • §E User-Mark = phần-lớn CONVENTION (S79): report-trước-đóng-dấu (E.2/P4) + cưỡng-chế-hành-vi (E.3 behavioral) + neo-lý-tính (E.5/P10) = kỷ-luật người+AI, KHÔNG công-cụ-ép (đừng nhận "mechanized"). CHỈ session-display (gắn lệnh-phiên P7) + chặn-tool-ở-config (E.3 tool-action P9) = mechanized. RC-sig 3 mark Active-High đã anh-confirm-stamp S79 (ACTIVE-MARKS.md) = executed-file; 4 lệnh /user-mark-* = command .md verified-pending-restart (no hot-reload).