[CLAUDE] Docs: S151 closeout — bootstrap + trio-AUTO đầu tiên + gói 3-máy vá sống + bookend DEEP trả nợ JUMP (tally #53=53, AS-17 promote)
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 5m38s
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 5m38s
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@ -105,5 +105,5 @@ Control: lane no-tier → `claude-opus-4-8` **DÙ lead=Fable** ⇒ pin ăn runti
|
||||
> ⚠️ **Grep `tier:'opus'` ≥1 hit = ĐIỀU-KIỆN CẦN, KHÔNG ĐỦ** — nó chỉ đo **CHỮ trong file**, không đo runtime ⇒ **Goodhart-able 100%**.
|
||||
|
||||
## 🔴 Floor model-tier v3 + lead-discipline
|
||||
- **Lead = frontier-class do ANH chọn per-session** {Fable 5 | Opus 4.8 — **1M MAX**}; **CẤM Sonnet/Haiku-class ghế lead**. Engine-đắt per-invocation = đường DUY NHẤT nâng 1 vai lên hạng-nhất.
|
||||
- **Lead = DEFAULT Opus 5 MAX** (thư `59ce1d0f` @S149; cao hơn = anh `/model` hoặc `/fable-real` — 🧊 idiom owner-choice-per-session superseded-VALUE); **CẤM Sonnet/Haiku-class ghế lead**. Engine-đắt per-invocation = đường DUY NHẤT nâng 1 vai lên hạng-nhất.
|
||||
- ⚠️ **Lead KHÔNG tự ý gọi engine-đắt** — **kể cả khi HMW-mode ON**; chỉ chạy khi anh gõ lệnh.
|
||||
|
||||
@ -33,7 +33,7 @@ Mỗi lần chạy engine-đắt PHẢI kết-tinh 1 spec theo pipeline **propos
|
||||
- 🔒 **Honest-note (d):** run **chấm/verify CŨNG sinh spec-file** (kế-hoạch xử issue = "cách làm" cần kết-tinh).
|
||||
|
||||
## 🔴 Floor model-tier v3 (broadcast 2026-07-11)
|
||||
- **Lead = frontier-class do ANH chọn per-session** {Fable 5 | Opus 4.8 — cả hai **1M MAX**}. **CẤM lớp model thấp (Sonnet/Haiku-class) ngồi ghế lead.**
|
||||
- **Lead = DEFAULT Opus 5 MAX** (thư `59ce1d0f` @S149; model cao hơn = anh `/model` đầu phiên hoặc chính lệnh này — 🧊 idiom "frontier-class do ANH chọn per-session" superseded-VALUE, cấu trúc giữ). **CẤM lớp model thấp (Sonnet/Haiku-class) ngồi ghế lead.**
|
||||
- **Engine-đắt per-invocation = đường DUY NHẤT nâng 1 vai lên hạng-nhất**, chỉ trong lượt lệnh anh gõ. Ngoài lệnh, mọi vai giữ model roster mặc-định (**worker-tier-pin S124** — role-có-frontmatter `model: opus` + `effort: max`, role-less inherit lead; supersede H8 all-inherit; số vai canonical → [`docs/STATUS.md`](../../docs/STATUS.md) §Sub-agents, B1 KHÔNG chép số ở đây).
|
||||
- ⚠️ **Lead KHÔNG tự ý gọi engine-đắt** — **kể cả khi HMW-mode ON**. Engine-đắt chỉ chạy khi anh gõ `/fable-real|/fable-clone <vai> <đề-bài>`.
|
||||
|
||||
|
||||
@ -133,7 +133,7 @@ Em main PHẢI echo **TOÀN BỘ nội dung command body này** (đầy đủ Ph
|
||||
*baseline-ghi-bù (phép-8 annex `dede7ec5`, khai-1-lần): cơ-chế force-fire bù closeout-gộp tồn tại từ 2026-07-17 (`da349fc`, S135 — re-đo 19:12:41+07). Phép-8 CHỈ tính FAIL cho closeout SINH SAU mốc; closeout trước = baseline hợp-lệ ghi n/a, KHÔNG đếm FAIL. Không lặp mỗi lần chạy.*
|
||||
- **(g) 🔌 tooling-freshness CHỐT (🟫 tooling-auditor H1 — Harness 1):** spawn → chốt 4-mặt (skill·sub-role·plugin·docs) đổi gì session này + **new-alloc audit** (skill/plugin MỚI chưa phân-bổ → đề-xuất gán em main + sub phù-hợp vai) + flag doc-drift/roster-lệch/count-stale. Propose → em main APPEND/sửa doc (single-writer). 🔴 G-015: 2 monitor = propose-only, em main VERIFY trước APPEND (Bash residual → KHÔNG "read-only enforced").
|
||||
- **(g-bis) 🔬 ring1-audit — vai-KIỂM vòng tooling/harvest (C4/C4b adap dot-11 `harness-dong-du-vong:51`, owner-decision [2] TÁCH, land S145; đối-xứng (k) trio nhưng AUTO):** đóng lỗ "vòng tooling/harvest **0 con soi**" — vai-KIỂM độc-lập đọc OUTPUT H1 (g) + H2 (d)(f), KHÔNG re-chạy đo. Contract = canonical `.claude/agents/ring1-audit.md` (B1 — KHÔNG chép vào đây).
|
||||
- **(i) 🔴 AUTO sau đo — KHÔNG consent-gate (owner-chốt S145, KHÁC (j) H24 + (k) trio):** H1 (g) + H2 (d)(f) chốt xong ⇒ spawn NGAY, KHÔNG in dòng đề-xuất, KHÔNG chờ gật.
|
||||
- **(i) 🔴 AUTO sau đo — KHÔNG consent-gate (owner-chốt S145; 🧊 vế tương-phản cũ "KHÁC (j) H24 + (k) trio" hết nghĩa: H24 AUTO @S146, trio AUTO @S151 — nay cả 3 vòng cùng AUTO):** H1 (g) + H2 (d)(f) chốt xong ⇒ spawn NGAY, KHÔNG in dòng đề-xuất, KHÔNG chờ gật.
|
||||
- **(ii) 🔴 Fail-safe NO-OP:** H1/H2 KHÔNG chạy phiên này ⇒ pin input missing ⇒ vai in `tooling/harvest round: no measure → NO-OP` + DỪNG. **Auto ≠ chạy-mù**, CẤM ĐẠT-ảo.
|
||||
- **(iii) 🔴 Tuần-tự (C4b):** spawn ở invocation **SAU** (g)/(f); bằng-chứng `mtime(return) > mtime(output H1/H2)`. KHÔNG song song.
|
||||
- **(iv) Propose-only, lead single-writer:** return verdict per-claim ĐẠT/TRƯỢT + falsify ≥2 + tự tái-dựng ≥1 số CÓ-THỂ-SAI + **thách-CLEAN** → em main VERIFY → APPEND (B3). Backstop = git-diff (G-015 — Bash residual → KHÔNG "read-only enforced").
|
||||
@ -151,13 +151,13 @@ Em main PHẢI echo **TOÀN BỘ nội dung command body này** (đầy đủ Ph
|
||||
- **(h) 🔏 User-Mark CHỐT cuối phiên (H-12/13 canonical §P/P7, S79 — `harness-11-engine.md §E`):** đọc [`.claude/governance/ACTIVE-MARKS.md`](../governance/ACTIVE-MARKS.md) → (i) **hiển-thị** status-filtered (Active-High/Active hiện · Medium tóm-tắt · Disable ẩn) cho anh đọc lại (đối-xứng `session-start §2.1.4`); (ii) nếu session này có **quyết-định cấp-governance MỚI** (scope-check P6: đổi CANONICAL §-rule/authority) → chạy `/user-mark-<cấp>` DACI: adjust-gov → double-check → **report-trước-đóng-dấu 3-7 tiêu-chí khách-quan (P4)** → anh confirm → stamp `RC-pqhuy1987-dd-mm-yyyy-hh-mm-ss`; (iii) supersede/disable mark cũ (P5) → con-trỏ-xuôi + Active-High cần anh-confirm RIÊNG. 🔴 **KHÔNG tự đóng dấu / đổi cấp trước khi báo (P4/P8).** 0 quyết-định-mới → "n-a, chỉ hiển-thị".
|
||||
- **(i) 🎯 H18-D(a) outcome spot-check (S100 — [`harness-11-engine.md §J`](../../docs/governance/harness-11-engine.md)):** session governance/review-heavy → chọn **3–5 artifact đã tự-động-qua-cổng** trước đó (cicd GO verdict · detector verdict · monitor verdict · adap-report claim) → **kiểm-lại TƯƠI bằng ground-truth** (tính lại giá-trị đối-chứng · mở định-nghĩa gốc xem claim có thật-cover · đối-chiếu nguyên-văn nguồn). Gấp vào review sẵn có (chi-phí ~0). Sàn-vai trượt-THẬT khỏi nhật-ký → reinject-on-real-miss qua [`reinject-ledger.md`](../governance/reinject-ledger.md) CG-1 (≤1 lần/N=3 phiên, vẫn trượt → escalate anh — REUSE H17 §I B2, KHÔNG sổ mới). Light/hỏi-đáp → skip. (Nấc honest: dogfood n=1 S100 = mẫu hiệu-chỉnh, CHƯA "proven" — caveat 1 broadcast H18.)
|
||||
- **(k) 🧪🧭🧮 Bộ-ba đồng-kiểm memory @ĐÓNG-PHIÊN (adopt S141 — đối-xứng `session-start §2.1.9`; khuôn hub 5-câu `58e28bae` khối B):** đầu-thứ-2 của nhịp 2-đầu-phiên. Trục = **CHÍNH-HỆ-MEMORY**, KHÁC (g) H1 tooling / (d)(f) H2 harvest / (j) H24 lead / reviewer chấm-diff. Contract từng vai = canonical ở `.claude/agents/harness-{eval,refine,audit}.md` (B1 — KHÔNG chép contract vai vào đây).
|
||||
- **(i) 🔴 CONSENT-GATED, KHÔNG auto-run** (cùng khuôn **sleep-check (c)** — 🧊 **@S146 GỠ vế "+ H24 (j)(ii)"**: H24 nay **AUTO**, viện nó làm khuôn consent là **SAI**): in **đề-xuất 1 dòng** `trio-memory: de-xuat chay eval->refine->audit @S<nn> (consent?)` → **anh gật mới chạy**.
|
||||
- **(i) 🔄 AUTO 1 vòng/phiên GIỮA 2 bookend (owner chốt @S151 2026-07-25 — supersede consent-gate S141; nhà canonical = [`session-start §2.1.9(a)`](session-start.md), mục này chỉ TRỎ):** trio KHÔNG còn consent-per-run. Vòng auto chạy **SAU bookend @open** (điểm chạy chính). @close CHỈ kiểm: vòng đã chạy chưa — **chạy rồi ⇒ ghi 1 dòng tham-chiếu run-folder** (KHÔNG chạy lần 2 — đúng 1 vòng/phiên); **CHƯA chạy** (phiên vào bằng `/tiep` bỏ qua @open · lỗi) ⇒ **chạy bù TẠI ĐÂY** trước khi đóng, hoặc ghi vết skip WAL `trio: skipped S<nn> (<ly-do>)` nếu không chạy được.
|
||||
- **(ii) 🔴 TUẦN TỰ, CẤM song song:** **3 spawn RIÊNG** eval → refine → audit. **KHÔNG dùng `parallel()` của `hmw.js`** — refine đọc output eval, audit chấm cả 2; song song ⇒ chấm **bản cũ** ⇒ verdict vô-nghĩa.
|
||||
- **(iii) Lead scribe NGAY (single-writer):** return từng con → ghi `.claude/workflows/runs/<run-id>/harness-{eval,refine,audit}-return.md` **ngay khi con đó trả**, KHÔNG đợi đủ 3 (3 vai **không có Write/Edit** ⇒ tự-ghi-đĩa bất-khả; phiên chết ⇒ mất return — bài-học vòng-1 S141).
|
||||
- **(iv) PIN đích-danh (fail-closed):** refine nhận **path** `…/harness-eval-return.md`; audit nhận **path run-folder** đang chấm. 🔴 Pin missing/rỗng ⇒ **TỪ-CHỐI / TRƯỢT**; CẤM tự tìm "run mới nhất" (⇒ **ĐẠT-ảo**).
|
||||
- **(v) 🔴 ĐỌC số ĐÃ ĐO trong closeout, KHÔNG chạy lại instrument:** khối (c) ở trên đã chạy `measure-agent-memory.ps1` · `memory-archive-gate.ps1` · `crystallized-backfill.ps1` · `nhip-no-probe.ps1` (+`mfe-eval.ps1` khi có `eval`) — con ĐO **đọc output đó**. Chạy lại = **đo 2 lần lệch cửa-sổ** + phá **đóng-băng bề-mặt-đo (c)**. Ngoại-lệ DUY NHẤT = con KIỂM **re-chạy ≥2 số load-bearing** để đối-chứng byte-exact (đúng contract vai).
|
||||
- **(vi) Post-wave assertion:** xong 3 con → `git status --short` → **kỳ vọng 0 tracked-change ngoài run-folder**; có thay-đổi lạ ⇒ residual-write ⇒ **báo anh + revert** (G-015: propose-only KHÔNG code-enforced ở kênh Bash — git-diff = backstop THẬT).
|
||||
- **(vii) [M4] Vết 2 lớp:** proposal-line ở (i) **IN CẢ khi Light/hỏi-đáp** (Light ⇒ skip CHẠY hợp-lệ, **CẤM skip IM-LẶNG**); khi skip ⇒ ghi **1 dòng vết** vào `.claude/WAL.md`: `trio: skipped S<nn> (<ly-do: light | khong-gat | ...>)`.
|
||||
- **(vii) [M4] Vết 2 lớp (giữ NGUYÊN sau khi bỏ consent @S151):** dòng trạng-thái ở (i) **IN CẢ khi Light/hỏi-đáp** (Light ⇒ skip CHẠY hợp-lệ, **CẤM skip IM-LẶNG**); khi skip (Light **HOẶC** vòng không chạy được — 🧊 vế "khong-gat" retired @S151 cùng consent-gate) ⇒ ghi **1 dòng vết** vào `.claude/WAL.md`: `trio: skipped S<nn> (<ly-do: light | loi | ...>)`.
|
||||
- **(viii) Đơn-vị nhịp:** "phiên-LOGIC" hub map **TẠM** = nhãn-phiên `S<nn>` (SE chưa adopt session-logic). 🔴 **KHÔNG cadence-key** trong `memory-budget.json`, **KHÔNG tick** counter cho bộ-ba (nhịp bộ-ba ≠ nhịp H24 — trộn 2 đồng-hồ = hỏng cả hai).
|
||||
|
||||
### §L.c — completeness-gate 5-vòng (D1, land S146 — 🔴 CÓ RĂNG: CẤM bare-PASS)
|
||||
|
||||
@ -162,7 +162,7 @@ git check-ignore -q .claude/sessions/session-1 ; echo "exit=$?" # → exit=1
|
||||
- 🧪 **harness-eval** (monitor **trio-memory**, INFORM-only, **+S141**) — con **ĐO**: đọc output 5+1 instrument + `memory-budget.json` → TRẢ **số nguyên-văn** + so-baseline + verdict {HEALTHY|REGRESSION|MIXED}. 🔴 CẤM số-từ-trí-nhớ.
|
||||
- 🧭 **harness-refine** (monitor **trio-memory**, INFORM-only, **+S141**) — con **ĐỀ-XUẤT**: đọc `harness-eval-return.md` (PIN) → action 4-lớp {nạp-lại · thăng-hạng · lưu-kho L1→L2 · chưng-cất} + mục "đã cân-nhắc→BÁC". Chỉ acts **AGENT-MEMORY corpus** (lead hot-feed/carry ⇒ NHƯỜNG `lead-gap-auditor`).
|
||||
- 🧮 **harness-audit** (monitor **trio-memory**, INFORM-only, **+S141**) — con **KIỂM**: đọc **run-folder PIN đích-danh** → verdict ĐẠT/TRƯỢT per-claim + falsify-log + **re-chạy ≥2 số load-bearing**. 🔴 CẤM tự tìm "run mới nhất", CẤM ĐẠT-ảo.
|
||||
- 🔴 **Bộ-ba trio-memory = trục CHÍNH-HỆ-MEMORY, KHÁC H1/H2/H24/reviewer** — chạy **TUẦN TỰ** eval→refine→audit, **consent-gated**; nghi-thức đầy-đủ ở **§2.1.9** (đầu phiên) / `session-end §L.b(k)` (cuối phiên).
|
||||
- 🔴 **Bộ-ba trio-memory = trục CHÍNH-HỆ-MEMORY, KHÁC H1/H2/H24/reviewer** — chạy **TUẦN TỰ** eval→refine→audit, **AUTO 1 vòng/phiên giữa 2 bookend (owner @S151 — 🧊 consent-gated S141 superseded)**; nghi-thức đầy-đủ ở **§2.1.9** (đầu phiên) / `session-end §L.b(k)` (cuối phiên).
|
||||
- 🔴 **2 vai H24 = trục KHÁC H1/H2, KHÔNG gộp:** H1 = tooling-freshness · H2 = harvest-integrity · **H24 = soi chính LEAD**. Class-flag lấy từ **enum ĐÓNG** `lead_self_audit.flag_classes` (`.claude/agent-memory/memory-budget.json`) — **vai KHÔNG tự chế class**. Nhịp = `h24_cadence` (cùng file), **KHÔNG chạy mỗi phiên**.
|
||||
- Task match delegate criteria (ACCEPT) → BẮT BUỘC delegate (xem `.claude/agents/README.md` decision tree)
|
||||
- Con cũ rảnh TRONG-session → resume qua SendMessage (khả dụng lại — F2 S100) HOẶC fresh spawn re-inject MEMORY; cross-session luôn fresh spawn
|
||||
@ -264,16 +264,16 @@ ngược lại → counter += 1 ; last_ticked_session = S<nn> ; last_ticked_head
|
||||
|
||||
**(e) BÁO dòng-nợ 4-vế (nâng dòng H24 cũ — Item 2 S135):** gọi `powershell.exe -ExecutionPolicy Bypass -File scripts/nhip-no-probe.ps1` → in **1 dòng** `NHIP-NO: kiem light a/e deep b/f <ok|OVERDUE:…> | tran-bo-nho x over-cap | run-chua-gom y` (vế-1 nhịp-kiểm = `counter/light/deep/OVERDUE` thay dòng H24 cũ). 🔴 **probe KHÔNG chặn**: lỗi → in `probe-loi (khong chan)` → đi tiếp. 🔄 **HÌNH B @S149 (bookend-hoá light — spec qua gate W2):** cặp soi-lead (`lead-stale-auditor` + `lead-gap-auditor`) spawn **VÔ-ĐIỀU-KIỆN mỗi đầu phiên** — KHÔNG còn cổng OVERDUE(light); **OVERDUE(deep) GIỮ** (deep-sweep theo `deep_every`). Cặp trả → ghi số bằng máy `scripts/h24-signal-write.ps1` (đơn-vị tally = phiên-LOGIC: @open+@close gộp 1 quyết-định/class — FIX-1). `ring2-audit` AUTO sau cặp, **PIN đích-danh run-folder tươi** (cấm glob-latest — carve-out §A1). Luật sống canonical ở [`session-end`](session-end.md) §L.b(j)(ii) — **B1, mục này chỉ ÁP, không chép phạm-vi**. 🧊 *Bản S146→S149 = "auto khi tới nhịp"; đảo @S149 theo direction anh "chạy đc VIPIX, AI_INFRA" (lineage đầy đủ ở §L.b(j)(ii)).*
|
||||
🔸 **Phạm-vi 1 dòng (chống đọc nới):** gỡ **cổng NGƯỜI**, **giữ cổng NHỊP** (`h24_cadence`) ⇒ auto **khi tới nhịp**, KHÔNG phải mỗi phiên. Khác bookend-hub (hub bỏ counter) — SE chưa theo nhánh đó.
|
||||
⚠️ **KHÁC sleep-check §2.1.2** (vẫn CONSENT) và **KHÁC trio §2.1.9** (vẫn CONSENT) — 3 cổng nay **không còn cùng khuôn**, đừng suy một ra ba.
|
||||
⚠️ **KHÁC sleep-check §2.1.2** (vẫn CONSENT) — 🧊 vế "KHÁC trio §2.1.9 (vẫn CONSENT)" hết hiệu lực @S151: trio nay CŨNG AUTO (1 vòng/phiên giữa 2 bookend). Chỉ còn sleep-check là cổng consent; đừng suy khuôn cổng này sang cổng khác.
|
||||
|
||||
🔴 **Số nhịp = quyền anh.** Bước này **ĐỌC** `h24_cadence`, **KHÔNG** ghi. **CẤM hardcode nhịp ở đây** — copy số vào doc dẫn-xuất chính là drift mà single-source sinh ra để chặn (detector `governance-detectors.ps1` H24-2 **fail-loud** nếu key thiếu, **không** giả-định default).
|
||||
> 🟡 **Honest-caveat mang theo khi báo hub:** hub nói rõ *"số của các em = config của các em; ĐỪNG chép 3 số này"*. SE chọn **cùng 6/15/3** là **điểm khởi-đầu anh CỐ Ý chọn**, KHÔNG phải chép vô-thức. **Chỉnh lại sau chu-kỳ-2 CỦA SE** (deep-audit lần 2, xem .session-counter.json last_audit). Hub đã GỠ counter (bookend 07-15, sha 85bf89ca) → ví-dụ 6/15/3 "ở nguồn" = lịch-sử, KHÔNG còn mốc hub để so; delta hub hứa từ run-2 KHÔNG BAO GIỜ có (hub gỡ trước run-2) — **chưa ai được bán câu "đã chứng minh hiệu-quả"**. ✅ **Ratified 2026-07-17:** anh mark cổng reply `e50a4bd0` (2026-07-16-ai_infra-to-se-reply-adap); canonical = `memory-budget.json → h24_cadence._owner_ratified` (B1 — wording sống ở đó, đừng chép lại đây).
|
||||
|
||||
### 2.1.9 Bộ-ba đồng-kiểm memory — nhịp 2-đầu-phiên, CONSENT-GATED (adopt S141, khuôn hub 5-câu `58e28bae` khối B)
|
||||
### 2.1.9 Bộ-ba đồng-kiểm memory — AUTO 1 vòng/phiên GIỮA 2 bookend (owner @S151; 🧊 adopt S141 dạng consent-gated → superseded; khuôn hub 5-câu `58e28bae` khối B)
|
||||
|
||||
> Trục = **CHÍNH HỆ MEMORY** (độ-giữ · hành-động · đúng-spec) — **KHÁC** H1 tooling-freshness · H2 harvest-integrity · H24 soi-LEAD · reviewer chấm-diff. 3 vai read-only INFORM-only propose-only, chạy **TUẦN TỰ**: `harness-eval` (con ĐO) → `harness-refine` (con ĐỀ-XUẤT) → `harness-audit` (con KIỂM). Contract từng vai = canonical ở [`.claude/agents/harness-{eval,refine,audit}.md`](../agents/harness-eval.md) (B1 — **KHÔNG chép contract vai vào đây**).
|
||||
|
||||
- **(a) 🔴 CONSENT-GATED — KHÔNG auto-run** (cùng khuôn **sleep-check §2.1.2** — 🧊 **@S146 GỠ vế "+ H24 §2.1.8(e)"**: H24 nay **AUTO khi tới nhịp**, viện nó làm khuôn consent là **SAI**): em-main **IN đề-xuất 1 dòng** dạng `trio-memory: de-xuat chay eval->refine->audit @S<nn> (consent?)` → **anh gật mới chạy**. Không gật ⇒ KHÔNG chạy (KHÔNG hỏi vòng 2, KHÔNG "chạy thử cho nhanh").
|
||||
- **(a) 🔄 AUTO 1 VÒNG/PHIÊN — vị trí GIỮA 2 bookend (owner chốt @S151 2026-07-25, supersede consent-gate S141; ĐÂY = nhà canonical, `session-end §L.b(k)(i)` chỉ TRỎ):** anh: *"OK đồng ý, cứ đúng luật là tự làm, tao muốn có 1 vòng auto giữa 2 phiên bookend"* ⇒ trio chạy **TỰ ĐỘNG đúng 1 vòng mỗi phiên**, vị trí = **SAU bookend @open, TRƯỚC bookend @close** — KHÔNG cần anh gật từng lần (HANDOFF #12 resolve theo hướng này; vòng auto đầu tiên = chính S151). Em-main vẫn **IN 1 dòng trạng-thái** `trio-memory: auto-vong @S<nn> (giua 2 bookend)` khi khởi chạy — hết consent nhưng KHÔNG chạy chìm. Đã chạy @giữa rồi ⇒ @close KHÔNG chạy lần 2 (đúng 1 vòng/phiên). 🧊 *Lineage: consent-gated per-run (S141, khuôn 5-câu `58e28bae`) → AUTO @S151 owner-direction. ⚠️ Khuôn sleep-check §2.1.2 VẪN CONSENT — 3 cổng không cùng khuôn, đừng suy một ra ba.*
|
||||
- **(b) 🔴 TUẦN TỰ, CẤM song song:** **3 spawn RIÊNG** đúng thứ-tự eval → refine → audit. **KHÔNG dùng `parallel()` của `hmw.js` cho bộ-ba** — refine đọc output eval, audit chấm output của cả 2; chạy song song ⇒ chấm **bản cũ** ⇒ verdict vô-nghĩa.
|
||||
- **(c) Lead scribe NGAY (single-writer):** return từng con → lead ghi `.claude/workflows/runs/<run-id>/harness-{eval,refine,audit}-return.md` **ngay khi con đó trả**, **KHÔNG đợi đủ 3**. Lý-do: 3 vai **không có Write/Edit** (chặn-bằng-thiếu-tool) nên tự-ghi-đĩa bất-khả; phiên chết giữa chừng ⇒ mất return (bài-học vòng-1 S141).
|
||||
- **(d) PIN đích-danh (fail-closed):** `harness-refine` nhận **path** `…/harness-eval-return.md`; `harness-audit` nhận **path run-folder** đang chấm. 🔴 Pin **missing/rỗng ⇒ vai TỪ-CHỐI / TRƯỢT** — **CẤM** để vai tự đi tìm "run mới nhất" (vớ bản cũ ⇒ **ĐẠT-ảo**).
|
||||
@ -281,9 +281,9 @@ ngược lại → counter += 1 ; last_ticked_session = S<nn> ; last_ticked_head
|
||||
- **(f) Post-wave assertion:** chạy xong 3 con → `git status --short` → **kỳ vọng 0 tracked-change ngoài run-folder**. Có thay-đổi lạ ⇒ vai đã ghi (residual-write) ⇒ **báo anh + revert**. (G-015: propose-only **KHÔNG** code-enforced ở kênh Bash — git-diff là backstop THẬT.)
|
||||
- **(g) KHAI ranh 2 cánh-tay (chống đọc nhầm thành "đo 2 lần"):** **script-arm** = §2.1.2/§2.1.6/§2.1.7 (các script deterministic **in SỐ**) ⟂ **sub-arm** = bộ-ba (**ĐỌC** output script-arm rồi ĐO-lại/ĐỀ-XUẤT/CHẤM). Bộ-ba **KHÔNG thay** script-arm và **KHÔNG re-implement máy đo**.
|
||||
- **(h) Đơn-vị nhịp:** "**phiên-LOGIC**" của hub map **TẠM** = nhãn-phiên `S<nn>` của SE (SE chưa adopt session-logic — cùng caveat đơn-vị với counter §2.1.8). 🔴 **KHÔNG thêm cadence-key** vào `memory-budget.json` và **KHÔNG tick** counter cho bộ-ba (nhịp bộ-ba ≠ nhịp H24 — trộn 2 đồng-hồ = hỏng cả hai).
|
||||
- **(i) [M4] Vết 2 lớp — chuỗi skip PHẢI nhìn thấy được:**
|
||||
- **(1)** proposal-line ở (a) **IN CẢ khi Light/hỏi-đáp session**. Light ⇒ skip **CHẠY** là hợp-lệ, nhưng **CẤM skip IM-LẶNG**.
|
||||
- **(2)** khi skip (anh không gật **HOẶC** Light) ⇒ ghi **1 dòng vết** vào [`.claude/WAL.md`](../WAL.md): `trio: skipped S<nn> (<ly-do: light | khong-gat | ...>)`. Chuỗi skip dài ⇒ **nhìn ra ngay** ở WAL thay vì biến mất.
|
||||
- **(i) [M4] Vết 2 lớp — chuỗi skip PHẢI nhìn thấy được (giữ NGUYÊN sau khi bỏ consent @S151 — auto không có nghĩa là được im):**
|
||||
- **(1)** dòng trạng-thái ở (a) **IN CẢ khi Light/hỏi-đáp session**. Light ⇒ skip **CHẠY** là hợp-lệ, nhưng **CẤM skip IM-LẶNG**.
|
||||
- **(2)** khi skip (Light **HOẶC** vòng không chạy được — 🧊 vế "anh không gật" retired @S151 cùng consent-gate) ⇒ ghi **1 dòng vết** vào [`.claude/WAL.md`](../WAL.md): `trio: skipped S<nn> (<ly-do: light | loi | ...>)`. Chuỗi skip dài ⇒ **nhìn ra ngay** ở WAL thay vì biến mất.
|
||||
|
||||
### 2.2 Skill registry (6 skill)
|
||||
- Liệt kê: `contract-workflow` · `form-engine` · `permission-matrix` · `dependency-audit-erp` · `ef-core-migration` · `iis-deploy-runbook`
|
||||
@ -291,7 +291,7 @@ ngược lại → counter += 1 ; last_ticked_session = S<nn> ; last_ticked_head
|
||||
- Skill staleness audit: chỉ chạy theo lịch định kỳ (xem 2.4)
|
||||
|
||||
### 2.3 RAG + MCP health
|
||||
- `mcp__rag-unified__list_projects` — verify collection `proj_solution_erp` còn sống (baseline ~3076 chunks)
|
||||
- `mcp__rag-unified__list_projects` — verify collection `proj_solution_erp` còn sống (chunk-count so LIVE với row "RAG chunks" trong `docs/STATUS.md` §CURRENT STATE — B1, KHÔNG chép số ở đây; 🧊 mốc cứng "~3076" cũ = thước hỏng, gỡ @S151 per stale FLAG-2/H1 F-7)
|
||||
- Chunk count + `last_indexed_at` delta (drift > 20% → flag AI_INFRA). ⚠️ Re-index = **AI_INFRA op** (charter v2, cần VOYAGE_API_KEY) — KHÔNG tự chạy `bootstrap.py`; SE stopgap = `store_memory` key facts.
|
||||
- Voyage rerank quota OK (verify 1 query có rerank_score)
|
||||
- Kiểm tra RAG chủ trì + sub: prompts đã store + đánh dấu re-rank đầy đủ chưa
|
||||
|
||||
@ -6,7 +6,7 @@ argument-hint: (trống = bật mode · hoặc kèm task lớn đầu tiên)
|
||||
# /ultra-on — BẬT HMW-mode (SOLUTION_ERP)
|
||||
|
||||
> Cặp **`/ultra-off`**. 🔴 restart Claude Code sau khi tạo/sửa (command `.md` no hot-reload).
|
||||
> Gõ lệnh này = **CONSENT chạy Workflow fan-out** · scope **CHỈ repo SOLUTION_ERP** (S1 — KHÔNG fan-out repo/corpus khác) · workflow-agent = **worker-tier-pin `opus`+`effort:max`** (role-có-frontmatter, S124; lead = frontier-class anh chọn per-session {Fable 5 | Opus 4.8 — 1M MAX}, MTv3 S110; role-less→inherit lead S63; Fable qua /fable-real).
|
||||
> Gõ lệnh này = **CONSENT chạy Workflow fan-out** · scope **CHỈ repo SOLUTION_ERP** (S1 — KHÔNG fan-out repo/corpus khác) · workflow-agent = **worker-tier-pin `opus`+`effort:max`** (role-có-frontmatter, S124; lead = DEFAULT Opus 5 MAX (thư `59ce1d0f` @S149 — 🧊 MTv3 owner-choice-per-session S110 superseded-VALUE; Fable = `/model` đầu phiên hoặc `/fable-real`); role-less→inherit lead S63; Fable qua /fable-real).
|
||||
> **Mode persist qua marker:** `/ultra-on` → em main tạo `.claude/hmw-mode.on` (Write) + vào mode → SỐNG qua session/compact. `/ultra-off` xóa. **`/session-start` đọc marker → BÁO anh ON/OFF** (khỏi quên đang ở mode đốt-token). marker = source-of-truth · **gitignored** (KHÔNG commit — tránh mode kẹt-ON khi clone = on-ramp ungoverned).
|
||||
|
||||
**Task đầu (nếu có):** $ARGUMENTS
|
||||
|
||||
Reference in New Issue
Block a user