> ⚠️ **MTv3 delta A1/A2 (S110, 2026-07-11):** checklist bundle này nhận 2 mục sửa từ model-tier-v3 — **A1:** lead = hạng-hai do owner chọn → cũng PASS (không chỉ "hạng-nhất hoặc outage-fallback") · **A2:** nghĩa-vụ "revert khi top-model về" CHỈ áp path outage; owner-choice KHÔNG có nghĩa-vụ revert. Xem `2026-07-11-Governance-model-tier-v3-lead-owner-choice.md` (adap-reports). Body dưới = record lịch-sử S101.
> ⚠️ **MTv3 supersede-partial (S110, 2026-07-11):** khoản v2 "(a) lead LUÔN top-model" trong report này → reword "lead = frontier-class owner-choice per-session {Fable 5 | Opus 4.8 — 1M MAX}; CẤM Sonnet/Haiku-class ghế lead" + owner-chọn-hạng-hai ≠ outage (0 caveat/0 revert-nghĩa-vụ). Xem `2026-07-11-Governance-model-tier-v3-lead-owner-choice.md` (adap-reports). Body dưới = record lịch-sử S101, giữ nguyên văn.
> **Broadcast:** `2026-07-03-Governance-model-tier-v2-pin-simple.md` (`content_sha256` re-compute `eed277f7…` **MATCH ✓**, `reviewer_gate: PASS`, `supersedes_scope: none`). Update nhẹ FORM nội-bộ AI_INFRA, **KHÔNG mandate** ("các đội KHÔNG bắt buộc làm theo").
> **Verdict: n-a-by-form-choice (đạt sàn qua form khác).** v2 "pin đơn giản" (mọi sub gán-cứng tier-2 dưới lead + drop reviewer-độc-lập ở cửa-ra, thay bằng cổng-máy + lead-phán-quyết-cuối) = **một form-option**. SE **KHÔNG áp** — giữ **all-inherit** vì owner-directive S66 ("chất-lượng trên chi-phí" — SE không có lớp helper/gopher rẻ để chừa) + mark `RC-…10-29-09` (cấm bác chức-năng bằng "overkill solo-dev").
> **Broadcast:** `2026-07-10-Governance-harness-21-spec-file-invocation.md` (outbox/all AI_INFRA). **Adopt S110 (2026-07-11), anh-directed** (`/check-email AI_INFRA` + lệnh anh nguyên văn: `"/fable-real inves và review — chủ đề các vấn đề trong email nhận được. hmw cho đám Opus 4.8 MAX xử lý"` — chính lệnh này ĐÃ đúng khung H21: owner gõ + vai đích-danh + worker hạng-hai).
| **4 ghi-chú trung-thực a-d** | **executed (hiện diện đủ)** | K.E(iii) 4 note nguyên ý; `fable-real.md:22-23,31-32` + `fable-clone.md:21,29-30`; runbook §2.1-bis note-block. (a) giữ đúng nấc "owner-gated tầng lệnh + kỷ-luật lead, KHÔNG code-enforced" — grep "code-enforced" toàn bộ = phủ-định |
| **Migration khoản 5** (gỡ marker · grep token cũ toàn repo kể cả persona) | **executed + reviewer-verified** | 12 persona `.claude/agents/*.md` = **0 hit** (SẠCH — ngược bài học hub "chỗ sót ở persona phụ"); grep-suite post-fix: `Test-Path` marker 4/4 hit đều dòng-🧊, "LUÔN top-model" ACTIVE=0; HISTORY (session-log/archive/diary/adap-report-body-cũ/dogfood-form S108) giữ nguyên văn |
| **Sàn 5-điểm §6** | **executed 5/5** | Reviewer Fable bảng-đối-chiếu: ①spec-file ✓ ②worker-theo-spec (bơm args, `hmw.js` không đọc file) ✓ ③chỉ-chạy-khi-owner-gõ ✓ ④vai-owner-gán ✓ ⑤lead-không-tự-ý (kể cả HMW-ON; `hmw.js:38-40` comment reword `tier:'fable'` chỉ trong lượt lệnh) ✓ |
## Tailored / phát-hiện-riêng / honest-caveat
- **Tailored form:** giữ TÊN 2 lệnh cũ `/fable-real|/fable-clone` (= lệnh-A/lệnh-B; H21 §6 "tên lệnh tự quyết") — đổi semantics toggle→per-invocation; spec-file đặt trong run-trace H10 sẵn có (`.claude/workflows/runs/<run-id>/` git-TRACKED → owner audit qua git, đúng mục-đích khoản ①); naming `spec-<tên-tính-năng>-<dd-mm-yyyy>.md`.
- **Phát-hiện-riêng #1 (boundary-gap M2):** lệnh-B × 2 vai monitor (`tooling-auditor`/`harvest-curator`) — 2 vai ∉ `hmw.js` VALID_ROLES (10) → ensemble fail-soft **default-subagent mất persona** (H19 2-vai-cố-định che edge này; roster-12 promise mở ra mới lộ). Xử: document limitation ở `fable-clone.md` + K.E(i); bổ sung VALID_ROLES = đổi code, **chờ anh quyết** (không tự sửa trong đợt docs-only).
- **Phát-hiện-riêng #2 (worker-đổi-fact M1):** worker Opus khi reword tự đổi "10 vai"→"12 vai" trong câu mô tả VALID_ROLES = sai fact code — reviewer Fable bắt, em-main fix. Lesson: worker-draft đụng CON SỐ về code → cross-check code thật trước commit.
- **Phát-hiện-riêng #3 (sweep-theo-token mù semantics M3):** acceptance "grep `Test-Path` ngoài 🧊 = 0" PASS trong khi ~16 cụm semantics-cũ chưa-đánh-dấu vẫn sống (nặng nhất: P5 "2 vai EXCLUDED" mâu thuẫn ROLE_VALID roster-12 TRONG CÙNG checklist) — đúng lớp lỗi broadcast §5 cảnh báo, bắt bởi reviewer-Fable đọc-semantics (không phải grep). Fix point-edit trọn.
- **Honest-caveat:** (i) "lead không tự ý" = **kỷ-luật + owner-gated tầng lệnh, KHÔNG code-enforced** — `hmw.js` không gate vai, đường `tier:'fable'` còn nguyên (đúng note-a broadcast); (ii) dogfood = **run-1 duy nhất** (chính lượt adopt này) — chưa có số-liệu N-run pipeline spec→worker (không claim); (iii) command `.md` sửa = **restart CLI mới ăn runtime** (registry hot-reload description ĐÃ thấy giữa phiên nhưng body-execution chưa re-verify — đồng bộ caveat ENV-DEPENDENT triage-S5); (iv) mark `RC-…17-46-35` (H19) = quyền anh — em đề xuất mark mới supersede, **CHƯA stamp, chờ anh** (P8).
- **#53 return-garble ×2 trong CHÍNH lượt này** (cả invest lẫn reviewer Fable-lane — đúng correlation reasoning-lane adap-request `2026-07-06-se-53-garble…`): **SendMessage-resume recover 2/2 sạch** — data-point mới củng cố mitigation-set đã gửi hub (S6 triage-reply đã ACCEPT codify).
| **§1.1 lead = owner-choice per-session {hạng-nhất \| hạng-hai 1M MAX}, đổi giữa phiên hợp lệ (ghi 1 dòng)** | **executed** | `session-start.md` BƯỚC 0.6 reword (owner-choice chính-thức + session-record 1 dòng); `fable-real.md:35` + `fable-clone.md:38` floor-line; engine K.D(1) reword; runbook `:165/:483` + bảng biến lead-runtime "owner-choice CHÍNH + outage-path PHỤ" |
| **§1.2-1.3 sub hạng-hai gán cứng; đường duy nhất nâng hạng-nhất = engine-đắt per-invocation** | **n-a-by-form-choice (đạt sàn qua form khác) — hub ĐÃ WAIVE ĐÍCH DANH** | Triage-reply S2 nguyên văn: *"không đổi gì với form all-inherit của bạn; function-floor mới chỉ CẤM Sonnet/Haiku-class ở ghế lead, còn danh sách sub là form tự quyết"* (`inbox/ai_infra/2026-07-11-ai_infra-to-se-triage-reply-s1-s6.md:22`). SE giữ **H8 all-inherit** (owner-directive S66, mark `RC-…10-29-09`). Vế "đường duy nhất nâng vai" vẫn ÁP: `hmw.js:38-40` comment `tier:'fable'` chỉ trong lượt lệnh engine-đắt |
| **§2 owner-choice ≠ outage (0 caveat/0 revert-nghĩa-vụ); outage chỉ khi resolve-error thật; 1-line-ask phiên đầu sau outage đóng** | **executed** | BƯỚC 0.6: bỏ "Fable UP → tự về" (auto-revert) → "hỏi anh ĐÚNG 1 DÒNG, 1 lần"; flip-record gắn nhãn {owner-choice\|outage}; H5-fallback outage-path GIỮ nguyên |
| **§4 checklist delta A1/A2** | **executed (note-supersede)** | Header-note lên `adap-reports/2026-07-03-Governance-checklist-model-tier.md` (A1 hạng-hai-owner-chọn cũng PASS · A2 revert-nghĩa-vụ chỉ outage-path) |
| **§5 self-check regex** | **executed — 0-hit regex + 5 hit cụm-khác ĐÃ SỬA** | Regex chính thức chạy nguyên văn = 0 hit; grep mở rộng "LUÔN/luôn top-model" bắt 5 ACTIVE (engine K.D:332 · runbook :140/:455 · fable-real.md:17 · session-start 0.6) → sửa hết; post-fix ACTIVE=0 (reviewer-Fable verify). **Data-point cho fleet: "0-hit regex ≠ xong" — caveat §5 broadcast là THẬT trên SE** |
## Tailored / honest-caveat
- **Đã diễn ra trên SE trước khi adopt (data-point live):** chính phiên S110 lead = Fable do... availability, nhưng flip-chain S98→S109 trước đây dán nhãn "outage-driven" toàn bộ — từ nay BƯỚC 0.6 gắn nhãn {owner-choice|outage} từng flip; lịch-sử cũ GIỮ nguyên (không truy-ngược re-label).
- **ACTIVE-MARKS `RC-…17-46-35` floor-point-1 "lead LUÔN top-model"** = văn mark anh đã ký → em **KHÔNG tự sửa** (P8); đề xuất mark MỚI (H21+MTv3 gộp, supersede row cũ → 📦) trình anh cùng phiên — chưa stamp.
- **Trade-off ghi MỘT LẦN (broadcast §3):** phiên lead=hạng-hai thì cổng-rà-soát-cuối của lead chạy hạng-hai — machine-gates (selftest-stamp, path-filter, test-gate 440, detector) GIỮ nguyên; revisit-trigger kế thừa: lỗi outward lọt cổng ≥2 lần → anh re-eval.
- **Model mới cùng lớp:** owner xác nhận thuộc frontier-class TRƯỚC khi ngồi ghế lead — AI không tự suy (đã nằm trong BƯỚC 0.6 reword).
> **Tầng:** RUNBOOK thi-hành ("cách bấm nút"). **LUẬT** = engine [`harness-11-engine.md` PHẦN K](harness-11-engine.md) (K.A ánh-xạ vai · K.B 2-mode · K.C 3 GAP-guard · K.D 3 floor-point) + RC-mark `RC-pqhuy1987-03-07-2026-17-46-35` ([`ACTIVE-MARKS.md`](../../.claude/governance/ACTIVE-MARKS.md)). **B1: file này TRỎ canonical, KHÔNG copy luật.**
> ⚠️ **H21 adopt S110 (2026-07-11):** mode-marker + 2-vai-mặc-định **RETIRED** → **per-invocation** — engine-đắt chỉ chạy trong lượt anh gõ `/fable-real`\|`/fable-clone <vai> <đề-bài>`; vai anh gán đích-danh; mỗi run sinh **spec-file 3-mục** (engine propose → lead verify+ghi → worker theo spec). Các mục marker/`$mode` dưới = 🧊 lịch-sử H19 (giữ nguyên văn); biến-đọc MỚI = **INVOCATION**{lệnh, vai, đề-bài} từ chính lượt lệnh (§2.1-bis). *Neo model-tier-v3: lead = frontier-class anh chọn per-session {Fable 5 \| Opus 4.8 — 1M MAX}.*
> **Sinh S108 (2026-07-10), anh yêu cầu "plan cụ thể hàm/biến/checklist → ra file":** draft 4-section bởi 4 worker Opus 4.8 Max (HMW mode-A `wf_2f85b3f6-3dc`, role-less tier-2 — đúng phân-tầng "đám Opus xử lý") → em-main assemble + sửa 8 stale-runtime-claim (6 đợt-assemble + 2 reviewer-catch §3.5/§4.3) (worker tin comment `hmw.js:31` snapshot cũ "Fable suspended" — S108 thật ra Fable UP) → **Fable-real review 2-đầu-khác-trục** (first-real-run dogfood §5.5, verdict điền form).
> **Đối-tượng đọc:** em-main (lead) các phiên sau — file này đủ để bấm đúng nút không cần đọc lại broadcast gốc.
## 1. DÙNG NHANH (5 phút)
1.**Đọc marker:**`Test-Path .claude/fable-real-mode.on` → CÓ = **real** · VẮNG = **clone** (⚠️ semantic INVERSE vs hmw-mode — §2.1).
1.**Xác định engine (lượt lệnh):** từ TÊN LỆNH anh vừa gõ lượt này — `/fable-real` = **real-single** · `/fable-clone` = **clone-ensemble**; KHÔNG còn marker để đọc (🧊 H19 retired — §2.1-bis).
2.**Probe lead-runtime** (BƯỚC 0.6, per-session): Fable hay Opus-1M(H5)? — quyết engine-label + cost-note, KHÔNG quyết mode.
4.**Spawn:** REAL (marker CÓ + anh đã gõ `/fable-real`) = Agent-tool LẺ 1 con (§3.2/§4.2 template) · CLONE (default) = `hmw.js` N-lane **CÙNG vai** (§3.3/§4.3 JSON).
3.**Vai = ANH GÁN trong lệnh** (H21 — INVOCATION, KHÔNG phải em-main chọn): §3/§4 dưới = template 2 vai tham-chiếu hay-gán-nhất (cần SỰ-THẬT/file:line/RCA → `investigator-codebase` §3 · cần PHÁN-QUYẾT gate/adversarial → `reviewer` §4); artifact hệ-trọng → em-main ĐỀ XUẤT anh gõ CẢ 2 (2-đầu-khác-trục), anh quyết.
4.**Spawn:** REAL (lượt anh gõ `/fable-real <vai>`) = Agent-tool LẺ 1 con (§3.2/§4.2 template) · CLONE (lượt anh gõ `/fable-clone <vai>`) = `hmw.js` N-lane **CÙNG vai** (§3.3/§4.3 JSON).*(🧊 H19: cũ đọc marker — nay per-invocation, §2.1-bis.)*
Rule gitignore neo tại **`.gitignore:92`** (`.claude/fable-real-mode.on`), đặt SAU `!.claude/**` để last-match-wins (`.gitignore:89-92`). Idiom `&& IGNORED || NOT` = lá-chắn: bất-kỳ output KHÁC "IGNORED" ⇒ DỪNG, KHÔNG toggle.
**Reader @session-start (BƯỚC 0.5b — đóng gap WF2-Lane-A "marker write-only"):**`session-start.md:27-33` — em-main đọc marker → BÁO ngay đầu response mode 2 vị-trí (`reviewer` + `investigator-codebase`). Không có reader = marker mù; bước này = consumer chính-thức.
> 🧊 Idiom marker chỉ còn giá-trị **phòng-hờ** (pattern `.gitignore:92` GIỮ — file cũ sync lại vẫn ignored, KHÔNG semantics H21).
**Reader @session-start (BƯỚC 0.5b — đóng gap WF2-Lane-A "marker write-only"):**`session-start.md:27-33` — em-main đọc marker → BÁO ngay đầu response mode 2 vị-trí (`reviewer` + `investigator-codebase`). Không có reader = marker mù; bước này = consumer chính-thức. *(🧊 cite = bản H19 cũ; BƯỚC 0.5b nay = reader per-invocation H21, không còn marker.)*
**☑ Checklist marker:**
- [ ] Toggle CHỈ khi anh gõ lệnh (KHÔNG số-dư/cảm-tính) — evidence: đối-chiếu `§K.B:325` + `fable-real.md:17`
> **Biến-đọc MỚI = INVOCATION{lệnh, vai, đề-bài}** — derive từ CHÍNH lượt lệnh anh gõ, KHÔNG file-state, **0 persist** (hết lượt = hết hiệu-lực, khác marker cũ dính qua session).
1.**Anh gõ lệnh** kèm vai + đề-bài: `/fable-real <vai> <đề-bài>` (single top-model) HOẶC `/fable-clone <vai> <đề-bài>` (ensemble tier-2).
2.**Parse**`{lệnh, vai, đề-bài}` từ `$ARGUMENTS` lượt đó — KHÔNG suy từ note/marker phiên trước.
3.**Vai ∉ roster 12 HOẶC thiếu vai/đề-bài** → **hỏi anh ĐÚNG 1 dòng, KHÔNG tự chọn vai** (owner-gated tầng lệnh + kỷ-luật lead — **KHÔNG code-enforced**).
4.**Chạy engine-đắt ĐÚNG 1 lượt** — lead KHÔNG tự gọi ngoài lượt-lệnh (kể cả HMW-mode ON, kể cả "thấy cần" — AP-4-mới §5.6).
5.**Engine propose → LEAD verify → LEAD tự ghi spec-file 3-mục** [① Tính-năng/đề-bài · ② Cách implement · ③ Checklist vai+deliverable+acceptance đo-được] — **engine KHÔNG tự ghi**.
6.**Worker (model thường MAX) thực-thi THEO spec** bơm qua args.
> ⚠️ **4 ghi-chú trung-thực (H21):** (a) "không tự chọn vai" = tầng **KỶ-LUẬT owner-gated**, KHÔNG claim code-enforced; (b) lệnh/alias = cách anh **GÁN VAI NHANH**, vẫn phải anh gõ — hệ không tự chọn vai; (c) spec-file do **LEAD ghi SAU verify** — engine không tự ghi; (d) run **chấm/verify CŨNG sinh spec-file** (kế-hoạch xử issue = "cách làm" cần kết-tinh).
---
### 2.2 — Bảng biến hệ thống (TÊN · KIỂU · NGUỒN · giá-trị)
| **Resume lane garble/truncate** | **SendMessage-resume in-session** | gửi lại agent đã spawn (KHÔNG re-spawn mới) | Lane trả wrong-slice (#53) — nấc 2 recovery-ladder (diary → SendMessage-resume S105 → em-main solo) |
| **Fallback cuối** | em-main solo | em-main tự làm vai phán-quyết | 529 overload / spawn truncate / SendMessage cũng garble |
@ -137,33 +162,34 @@ Nguồn: `harness-11-engine.md §K.C:327-330`. Pin để stamp CÓ NGHĨA (khôn
### 2.5 — Decision-matrix: KHI NÀO real vs clone
**Cổng vào (K.D 3 floor-point `RC-pqhuy1987-03-07-2026-17-46-35`, `harness-11:332` / `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Ỉ real do **anh gõ** (KHÔNG auto) · (3) **mọi vai khác giữ mặc-định**.
**Cổng vào (K.D 3 floor-point `RC-pqhuy1987-03-07-2026-17-46-35`, `harness-11:332` / `ACTIVE-MARKS.md`):** (1) **lead = frontier-class do anh chọn per-session {Fable 5 | Opus 4.8 — 1M MAX} (model-tier-v3); CẤM Sonnet/Haiku-class ghế lead** · (2) **top-model deep-run CHỈ trong lượt lệnh engine-đắt anh gõ kèm vai (H21)** · (3) **mọi vai khác giữ mặc-định**. 🧊 *(văn K.D gốc: "lead LUÔN top-model — KHÔNG đụng · CHỈ 2 vị-trí phán-quyết chạm top-model, CHỈ real do anh gõ" — superseded model-tier-v3 + H21 per-invocation; giữ ý-nghĩa neo RC-mark.)*
**4 câu hỏi lọc:**
1.**Việc có phải 1 trong 2 vị-trí phán-quyết?** (`reviewer`=cổng-cuối · `investigator-codebase`=ground-truth). KHÔNG → **thoát** (vai khác giữ mặc-định, floor-3). `investigator-api`/`database-agent` EXCLUDED (`§K.A:320`).
3.**anh đã gõ `/fable-real`?** (marker CÓ?). KHÔNG gõ = clone-default.
4.**Fable up?** (BƯỚC 0.6). Chỉ ảnh-hưởng real-mode model per-run.
**4 câu hỏi lọc (H21 per-invocation):**
1.**Anh có gõ lệnh engine-đắt lượt này?** (`/fable-real|/fable-clone <vai> <đề-bài>`). KHÔNG → **thoát** (gate/verify thường ngày = sub thường qua workflow chuẩn — KHÔNG phải engine-đắt; lead không tự ý gọi).
2.**Heavy-judgment?** (wire-BE claim / security / schema-migration / cross-stack / RCA-chống-bịa / phân-xử mâu-thuẫn). Đây = tiêu-chí để em-main **ĐỀ XUẤT anh gõ lệnh** khi thấy cần — anh quyết. Nhẹ/trivial → khuyên anh khỏi tốn engine-đắt.
3.🧊 *(H19 cũ: "anh đã gõ `/fable-real`?marker CÓ? — KHÔNG gõ = clone-default" — retired H21: nay TÊN LỆNH = chọn engine, không còn default-mode.)*
4.**Fable up?** (BƯỚC 0.6). Chỉ ảnh-hưởng model per-run của lệnh-A (up=single-Fable · outage=single-Opus-1M).
| marker CÓ (anh gõ) + heavy-judgment | 🔴 **REAL** | Agent-tool spawn LẺ 1 agent, deep pass |
| việc KHÔNG thuộc 2 vị-trí | — | mặc-định, KHÔNG áp toggle (floor-3) |
| việc thuộc 2 vị-trí + NHẸ (không trivial) | — | single spawn thường 1 con (KHÔNG ensemble, KHÔNG deep-pass nghi-thức) — mode chỉ đổi CÁCH chạy heavy-judgment |
**H5 per-run fallback (lệnh-A, `fable-real.md:16` / `§K.B:323`):**Fable**up**→single-**Fable**;Fable**down**→single-**Opus-1M****theo TỪNG LẦN CHẠY**trongCHÍNHlượtlệnhđó.ModeldoBƯỚC0.6probequyếtmỗilầnspawn.🧊*(H19 wording "KHÔNG flip marker, mode vẫn real toàn-cục" — retired: H21 không còn mode toàn-cục để flip.)*
**💰Cost-note(honest,`§K:334`/broadcast§8):**ensemble**KHÔNG rẻ hơn nhiều về token thô**.ValueTHẬT≠tiết-kiệmmà =**anti-consensus-catch**(dogfoodS101WF2Lane-Bbắt`workflows/README:51`stale-labelmàtoken-sweepsót,commit`f229b07`)+**depth**+formalizeensemble-heavy-judgment+Fable-outagetimeliness.Chọnrealkhicần**1 lăng-kính sâu nhất**;chọnclonekhicần**N lăng-kính phản-biện**(rẻquotatop-modelhơnnếupin`tier:'opus'`lúcFablevề).
> ⚠️ **VACUOUS-hay-THẬT tùy runtime** (`§K.D:332` viết lúc Fable-outage): KHI Fable DOWN → real vs clone hội-tụ Opus-1M = 0 runtime-delta (vacuously-inert đúng nguyên-văn). KHI **Fable UP** (vd S108) → **phân-tầng THẬT bén**: real = single-Fable deep ⟂ clone pin `tier:'opus'` = ensemble tier-2 đúng nghĩa §K.B — cost-lever SỐNG, và **S108 = lần đầu** (dogfood §5.5).
|`$target`|`string`|Câu-hỏisự-thậtem-mainđóng-khung@P1;nếuqualệnh =`$ARGUMENTS`của`/fable-real`(`fable-real.md:12`)|`"PE multi-winner đã wire ĐỦ read-site sau đổi field single→multi — TRUE/FALSE + chỗ sót?"`|
|`$claimsList`|`array<string>`|em-maintách$targetthànhclaimnguyên-tử@P1|`["PurchaseEvaluation entity field multi-winner là collection (KHÔNG single Guid)", "PeService.ApproveV2Async đọc multi-winner ở MỌI read-site", "FE PE matrix render N winner"]`|
- [ ]**P3-mới (H21) — owner-consent = CHÍNH lượt lệnh** 🔴 engine-đắt CHỈ hợp-lệ khi anh gõ `/fable-real|/fable-clone <vai> <đề-bài>` LƯỢT NÀY. Em-main *thấy cần* mà anh chưa gõ → **STOP + ĐỀ XUẤT anh gõ** (KHÔNG auto theo số-dư/cảm-tính, mark `RC-…10-29-09`; KHÔNG chạy rồi xin phép sau). *Evidence:* quote nguyên-văn lệnh anh lượt này.
-`real` = 1 lane **top-model deep pass** (đắt nhất/lần; khi Fable về = single-Fable) — chỉ cho heavy-judgment.
-`clone` = **N-lane ensemble tier-2** (multi-lens; để dành quota top-model cho lead — `fable-clone.md:8`).
- ⚠️ **Cost-delta tùy runtime:** Fable DOWN → real vs clone 0 tier-delta (chỉ khác N-lane count). **Fable UP** → real=Fable-deep (đắt nhất/lần) ⟂ clone `tier:'opus'`=tier-2 (giữ quota Fable cho lead). Ghi honest theo probe (`harness-11-engine.md:332,334`).
- [ ]**P5 — scope-lock**= `POSITION ∈ {reviewer, investigator-codebase}` (§K.A). `investigator-api` / `database-agent` / mọi vai khác **EXCLUDED**. Lead + vai khác **KHÔNG đụng model** (K.D point-1/point-3). *Evidence:* vai lượt này ∈ tập 2.
- [ ] 🧊 *(H19 retired)***P5 cũ — scope-lock 2 vai**(`POSITION ∈ {reviewer, investigator-codebase}`, vai khác EXCLUDED).
- [ ]**P5-mới (H21) — scope-lock = `ROLE_VALID`**: `INVOCATION.vai ∈ roster 12` do ANH gán (thiếu/lạ → hỏi anh, KHÔNG tự chọn); ⚠️ 2 monitor × lệnh-B → limitation K.E (fail-soft default-subagent). Ngoài lượt lệnh: mọi vai giữ model roster (H8 all-inherit), lead KHÔNG tự elevate (K.D mới). *Evidence:* vai lượt này + quote lệnh.
- [ ]**R1 — vai = ANH GÁN trong lệnh (H21)** — em-main KHÔNG tự chọn; bảng dưới = gợi-ý khi em-main **ĐỀ XUẤT** anh gõ (hoặc anh hỏi "nên vai nào") *(🧊 H19: R1 = em-main "chọn LANE")*:
> 🧊 **Form dưới ghi theo khung H19-marker (trước H21 S110)** — snapshot lịch-sử, giữ nguyên văn (§5.5 + §2.1 = record H19).
> 🔴 Engine ghi rõ: thật-mode toggle **CHƯA chạy thật lần nào** (`harness-11-engine.md:334` "thật-mode toggle chưa chạy thật lần nào"). ⇒ **Lượt real đầu-tiên = dogfood chính runbook này.**
**Case định-sẵn:**
@ -601,10 +638,11 @@ Một lượt phán-quyết **ĐẠT ⟺ tất-cả** AC dưới (đo-được,
| # | Anti-pattern | Vi-phạm (nguồn) | Đúng phải làm | Detect |
|---|---|---|---|---|
| **AP-1** | Bật real **tự-động** không anh-gõ | K.D **point-2** (`harness-11-engine.md:332`) — real CHỈ do anh gõ `/fable-real` | 0 marker + muốn real ⇒ STOP + nhắc anh | transcript vắng `/fable-real` nhưng chạy real |
| **AP-1** | Bật real **tự-động** không anh-gõ | K.D **point-2** (`harness-11-engine.md:332`) — real CHỈ do anh gõ `/fable-real<vai><đề-bài>` | muốn real mà anh chưa gõ LƯỢT NÀY ⇒ STOP + ĐỀ XUẤT anh gõ *(🧊 H19: "0 marker + muốn real ⇒ STOP")* | transcript lượt đó vắng `/fable-real` nhưng chạy real |
| **AP-2** | **Mixed-roster** ensemble (fan-out nhiều vai) | GAP-1 scope-creep leak (`:328`) — all-inherit CHE tới khi Fable về | N lane **CÙNG 1 vai** (multi-lens) | `taskList` roles distinct-count > 1 |
| **AP-4** | Quên **báo marker-state** cuối phiên | marker persist qua session = BY-DESIGN (`fable-real.md:10`) nhưng thiếu báo → anh quên mode đang real (burn top-model ngoài ý) | session-end **BÁO marker-state + NHẮC anh** gõ `/fable-clone` nếu muốn về ảo (em-main KHÔNG tự toggle — K.D point-2); KHÔNG commit marker (gitignored `.gitignore:92`) | BƯỚC 0.5b @start + session-end marker-report |
| 🧊 **AP-4** (H19 retired) | Quên **báo marker-state** cuối phiên | marker persist qua session = BY-DESIGN (`fable-real.md:10`) nhưng thiếu báo → anh quên mode đang real (burn top-model ngoài ý) | session-end **BÁO marker-state + NHẮC anh** gõ `/fable-clone` nếu muốn về ảo (em-main KHÔNG tự toggle — K.D point-2); KHÔNG commit marker (gitignored `.gitignore:92`) | BƯỚC 0.5b @start + session-end marker-report |
| **AP-4-mới** (H21) | Chạy engine-đắt **NGOÀI lượt-lệnh** anh gõ | K.D point-2 + H21 §2.1-bis — engine-đắt CHỈ trong lượt anh gõ `/fable-real`\|`/fable-clone` kèm vai; kể cả **HMW-mode ON**, kể cả "thấy cần" = **VI-PHẠM** (lead KHÔNG tự ý) | Đợi lượt-lệnh anh; thiếu vai → **hỏi anh 1 dòng, KHÔNG tự chọn vai** | engine-đắt chạy mà transcript lượt đó vắng `/fable-real`\|`/fable-clone` |
| **AP-5** | Dùng real cho việc **trivial** | burn quota top-model vô-ích (§8 "ensemble không rẻ", `:334`) + H6.1 substantive→heavy | real CHỈ heavy-judgment (deploy-gate/security/governance-artifact) | task-class vs MODE |
- **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`).
-🧊 (retired H21 S110) **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).
-🧊 (retired H21 S110) **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".
-🧊 (retired H21 S110) **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`).
→ **Thay bằng §K.E per-invocation.** Marker file đã xóa S110; `.gitignore:92` giữ pattern phòng-hờ.
**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ả 10 vai (9 lúc adopt S101; +office-document S107), 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-1 scope-creep guard:** `hmw.js` VALID_ROLES nhận cả 10 vai (9 lúc adopt S101; +office-document S107), 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). → **lệnh-B ensemble-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. *(S108 update: Fable-UP + first-real-run → point-2 grant hoạt-động THẬT lần đầu — 2 vị-trí single-Fable deep ⟂ worker-draft pin tier-2 Opus; "vacuously-met" KHÔNG còn là trạng-thái thường-trực, tùy BƯỚC 0.6 probe per-session.)*
**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)~~ [retired H21/mtv3 S110] → **MỚI:** lead = **frontier-class** do anh chọn per-session {Fable 5 | Opus 4.8 — 1M MAX} (model-tier-v3 2026-07-11); CẤM Sonnet/Haiku-class ghế lead; owner-chọn-hạng-hai ≠ outage → 0 caveat/0 revert-nghĩa-vụ · (2) 🧊 ~~CHỈ 2 vị-trí phán-quyết chạm top-model, CHỈ chế-độ thật do anh gõ (KHÔNG auto)~~ [retired H21 S110] → **MỚI:** top-model deep-run CHỈ trong lượt lệnh engine-đắt anh gõ KÈM VAI đích-danh (H21) — không còn 2-vị-trí-mặc-định, không còn mode · (3) mọi vai khác giữ model mặc-định (roster-tier). ⚠️ **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. *(S108 update: Fable-UP + first-real-run → point-2 grant hoạt-động THẬT lần đầu — 2 vị-trí single-Fable deep ⟂ worker-draft pin tier-2 Opus; "vacuously-met" KHÔNG còn là trạng-thái thường-trực, tùy BƯỚC 0.6 probe per-session.)*
**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 + dogfooded** (ensemble-pattern proven S101; thật-mode toggle **first-real-run S108 2026-07-10** — 2-lane single-Fable song song 2-đầu-khác-trục review chính `fable-real-runbook.md`, verdict FAIL-then-fixed đúng Smart-Friend, form kết quả → runbook §5.5). 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).
| `/fable-real <vai> <đề-bài>` | **lệnh-A** single top-model | 1 vai anh gán chạy 1 lần top-model THẬT (deep pass; Fable up → single-Fable · outage → single-Opus-1M/run) |
| `/fable-clone <vai> <đề-bài>` | **lệnh-B** ensemble tier-2 | N lane đa-lăng-kính CÙNG 1 vai (`hmw.js parallel`) + em-main refute+synthesize |
- **(i) Vai owner-gán per-invocation:** `<vai>` ∈ roster 12 (`investigator-codebase` · `investigator-api` · `implementer-backend` · `implementer-frontend` · `frontend-designer` · `database-agent` · `office-document` · `test-specialist` · `reviewer` · `cicd-monitor` · `tooling-auditor` · `harvest-curator`). Thiếu/sai vai → **em-main hỏi anh 1 dòng**, KHÔNG tự đoán. Hiệu-lực CHỈ lượt đó (không marker, không sticky-mode). ⚠️ **Limitation lệnh-B × 2 monitor:**`tooling-auditor`·`harvest-curator` ∉ `hmw.js` VALID_ROLES (**10** vai) → ensemble qua hmw **fail-soft default-subagent** (mất persona); cần ensemble 2 vai này → anh duyệt bổ sung VALID_ROLES (đổi code) hoặc dùng lệnh-A.
- **(ii) Spec-file pipeline (mỗi run engine-đắt PHẢI sinh):** `.claude/workflows/runs/<run-id>/spec-<tên-tính-năng>-<dd-mm-yyyy>.md` — 3-heading CỐ-ĐỊNH: **[1] Tính-năng/đề-bài** (1–3 câu) · **[2] Cách implement** (bước + quyết-định + ràng-buộc + đường-chết) · **[3] Checklist** (vai + deliverable + acceptance đo được). Luồng: engine **propose-only** → lead **verify** → **LEAD ghi** (single-writer) → worker **Opus MAX** thực-thi THEO spec bơm qua `args` (`hmw.js` KHÔNG đọc file spec).
- **(iii) 4 ghi-chú trung-thực (🔴 phải hiện-diện — nấc owner-gated, KHÔNG code-enforced §X8):**
- **(a)** owner-gated tầng LỆNH + kỷ-luật lead, **KHÔNG code-enforced** — `hmw.js` không gate vai; đường code `tier:'fable'` vẫn tồn-tại. Bảo-đảm = MỌI đường truy về lượt owner-gõ (kỷ-luật), không phải guard chặn.
- **(b)** lệnh/alias = cách anh **gán vai NHANH** — hệ **KHÔNG tự chọn vai**, vẫn phải anh gõ.
- **(c)** spec-file do **lead ghi SAU khi verify** — engine không tự ghi.
- **(d)** run **chấm/verify CŨNG sinh spec** (kế-hoạch xử issue = "cách làm" cần kết-tinh, không chỉ run implement).
- **(iv) Map sàn 5-điểm:** ① spec-file mỗi run · ② worker thực-thi THEO spec · ③ chỉ chạy khi owner gõ lệnh · ④ vai owner-gán đích-danh · ⑤ lead KHÔNG tự-ý gọi engine-đắt.
- **(v) Honest nấc K.E:** codify S110 + dogfood **run-1 = chính lượt adopt này** (spec-file `2026-07-11-h21-mtv3-adopt`); **mechanized = 0** (convention + git-tracked spec làm audit-trail — KHÔNG guard code-enforced).
**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 + dogfooded** (ensemble-pattern proven S101; thật-mode toggle **first-real-run S108 2026-07-10** — 2-lane single-Fable song song 2-đầu-khác-trục review chính `fable-real-runbook.md`, verdict FAIL-then-fixed đúng Smart-Friend, form kết quả → runbook §5.5). Mechanized THẬT (pre-H21, 🧊 marker-toggle retired S110) = 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). **S110 H21-update:** marker-toggle retired (mechanized-marker không còn); per-invocation = owner-gated convention + spec-file git-tracked.
---
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.