Files
solution-erp/docs/governance/adap-reports/2026-07-25-Governance-model-default-opus-5-max.md
pqhuy1987 11db5efdf8
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 5m39s
[CLAUDE] Docs: S153 closeout — adopt TRỌN Ctx soft-memory + OWNER-VETO 3-vai + RENAME hub-form (squash 22 wal:)
Pipeline anh lệnh: /check-email + /adap-apply -> /fable-real invest (spec 9-task/24-checklist)
-> hmw Opus-5-MAX 2 đợt + lead-solo T6-T8 -> checklist verify.

Thư ① 9c909007 (model-default Opus 5 MAX): TRỌN — filing 2-tuyến + probe-sau-restart
2-nguồn claude-opus-5[1m] + thư hub d432f5eab5cd + caveat (e) đóng.

Thư ② 0df10df4 (pause-tiep Ctx soft-memory, sàn 7-khoản): EXECUTED
- máy mind-check: scripts/session_ctx.py +542 dòng (7 phép + 2 phụ, 4 mức, draft/closed/--root/--session PIN, exit 0/1/3)
- template .claude/templates/session-mind-template.md + wire 4 lệnh (pause C-bis+2bis+§1-carve-out, tiep §2.6+§3-ter, session-start Phase 3.5, session-end §L.b(l)+6.3-bis)
- memory-budget: mind_ctx_kb=32 + tiep_reload + ĐÓNG ghost-wire session_ctx_kb (H18 class-2 sống S146->S153)
- fault-inject 18/18 + 2 fix hậu-T4 (FI 6/6): GAP-#9 closed-mode E-0-con-trỏ CỜ->TRƯỢT (chặn gradient
  thưởng xoá-con-trỏ-trung-thực, họ bẫy F-1 của chính thư hub) · secrets-sweep +--root parity
- số ĐO THẬT pause +117ms thay ước lệch 2.2-5.4x

OWNER 2 quyết trong-phiên:
- (38) VETO: 1-vai -> hub-form 3-vai (ctx-curator @pause + carve-out pause §1 · ctx-verifier @tiep · ctx-audit @2-bookend)
- RENAME theo chuẩn hub/sisters để audit chéo: ctx-pause-check->ctx-curator, ctx-reload->ctx-verifier
  (đo đĩa 3 nhà; hub≠sister => SE theo HUB-form, tiền lệ S149). Roster 20->23, VALID_ROLES 23.
  Gap còn lại: ring5-audit (V5 truth-floor) hub CÓ, SE+VIPIX chưa -> slot (41).

Bookend 2 đầu (12 spawn) + trio auto 1 vòng:
- @open: H1 7f · H2 4f · H24 5+3 FLAG · ring1 28Đ/4T · ring2 8/8Đ + M-1 MISS thật · trio eval-MIXED-14/refine-3A-7B-4N/audit-25Đ-3T (re-chạy 7 instrument, 24 số byte-exact)
- @close: H1 6f · H2 8f (baseline S154 = 16/10, tự sửa bản ~23/11) · H24 4+2 FLAG · ring1 47Đ/5T/1KC/53 · ring2 6/6Đ + 21 phép phụ
- lead xử 11 mục: 9 FLAG H24 + 3 RESIDUAL ring2 + F-r2 (plugin 3 hard-site) + M-1 cả 2 persona + M9 14 sổ diary + F-3/F-5/F-6 + nit Sàn-5 + BÁC F-4 (fan-out không vào _index)

#53 x14-cận-dưới, 0 mất dữ liệu (WRITE-lane derive-from-body · Agent-resume · SendMessage-resume x6).
Datum: trio return-only hết miễn nhiễm (3/3 CLEAN -> 1/3). 4-A suýt xảy ra thật (bản committed của 2 file H24 là bản cắt 24%/48%).
completeness-gate: 5 vòng đủ · phép ĐẠT 4 / TRƯỢT 0 / vacuous 0.
State: Mig 67 · 89 bảng · 532 test · gotcha 83 · Sub-agents 23 · counter 27 · bundle FROZEN · governance-only 0 prod-code.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-26 16:10:54 +07:00

82 lines
13 KiB
Markdown

# adap-report — 2026-07-25-Governance-model-default-opus-5-max
> SE (SOLUTION_ERP) · wave adap-backlog S149 (lane L6).
> Lớp thi hành do **em main (lead) áp trước wave**; lane này **đo lại từ đĩa** và **tự probe model**, KHÔNG chép lời khai của lead làm bằng chứng.
## 1. id-broadcast
`2026-07-25-Governance-model-default-opus-5-max` — sha khai `59ce1d0f`.
🔴 **Sha này là KẾ-THỪA, KHÔNG tái-tính được tại SE.** File thư **không tồn tại trên đĩa repo**: `find broadcasts -name "2026-07-2[3-5]*" -type f` = **0 hit**, file mới nhất trong `broadcasts/inbox/ai_infra/``2026-07-22-ai_infra-to-se-reply-session-model-dung-ban-da-duyet.md`. Toàn bộ id + sha + cách đánh số Khoản trong report này lấy từ 3 chỗ lead đã ghi khi áp: `.claude/workflows/hmw.js:57-58` · `scripts/spawn-model-audit.ps1:96-99` · `.claude/commands/session-start.md:41`. Xem caveat (b).
🧊 *(superseded @S152 — 2 lệnh đo trong khối này SAI THẬT, xem khối dưới; giữ verbatim làm vết)* 🔄 **Đính-chính @S151 (2026-07-25, lead đo lại theo đề-nghị caveat (b)):** thư vắng **CẢ PHÍA HUB**`find AI_INFRA -name "*model-default-opus-5-max*"` = **0 hit**`grep -rl "59ce1d0f" AI_INFRA --include="*.md"` = **0 hit toàn hub**. ⇒ Đề-nghị (b) *"copy vào `broadcasts/inbox/ai_infra/` + stamp-verify"* **BẤT-KHẢ-THI trung thực** — không có vật để copy, KHÔNG bịa file/hash. Chuyển hướng: **hỏi hub re-publish bản gốc** (hoặc xác nhận kênh truyền = chỉ-đạo trực-tiếp owner, không phải file-broadcast) — queued thư hub @closeout S151. Mọi trích dẫn id/sha/Khoản của report GIỮ nấc **KẾ-THỪA** cho tới khi hub trả lời.
🔄 **Đính-chính @S152 (2026-07-26, `lead-stale-auditor` @close FLAG-1 HIGH — đo tươi trên đĩa hub):** thư **CÓ THẬT, `status: PUBLISHED`** tại `AI_INFRA/broadcasts/outbox/all/2026-07-25-Governance-model-default-opus-5-max.md` (7.299B, mtime 07-25 10:06) — 2 lệnh @S151 ở trên **sai thật khi chạy lại**: `find` = **1 hit** · `grep -rl 59ce1d0f AI_INFRA --include=*.md` = **3 hit** (MAIN-INDEX · SUMMARY-INDEX · COMMS-LEDGER — hub chưa sweep xong sổ mình, dữ-kiện kèm khi trả lời hub, KHÔNG phải FLAG SE). `content_sha256` bản published = **`9c9090073a0f…c47dc8`**; `reviewer_gate` tự khai **RE-STAMP sau bổ-sung Khoản-5 cùng ngày (G-024a)****`59ce1d0f` = sha PRE-re-stamp** (bản lead chép @S149) — hai sha không mâu-thuẫn về nội-dung, mọi trích Khoản của report **đối-chiếu được với bản published** (lead đã chạy `stamp_verify` OK @S152 BƯỚC 0.5). Nấc **KẾ-THỪA gỡ***"đã đối-chiếu bản published `9c909007`"*. Riêng phép đo **trong repo SE** (mục 1 dòng trên + caveat (b) vế `broadcasts/` SE) **vẫn đúng** — thư chưa copy về SE; copy + inbox-filing = `/adap-apply` trọn gói phiên kế.
**Hoàn tất filing @S153 (2026-07-26, `/adap-apply` — NEXT-em @S152 ①):** copy `broadcasts/inbox/2026-07-25-Governance-model-default-opus-5-max.md` · whole-file `Get-FileHash` IDENTICAL vs nguồn hub · `python scripts/stamp_verify.py` = **OK canonical match `9c909007`, exit 0**. Caveat (b) vế (iii) ĐÓNG — `/adap-audit` hub nay tìm thấy bản sao trong repo SE. STAGE-2 move → `inbox/ai_infra/` cùng lượt (thư đã xử trọn).
## 2. nấc G-011
**executed** — cả 3 lớp thi hành đã nằm trên đĩa repo. Chi tiết per-lớp (bảng, KHÔNG số tổng):
| Lớp | Trạng thái đo được | Nấc thật của lớp |
|---|---|---|
| ① Ghế lead — pin model | `~/.claude/settings.json:11` = `"model": "claude-opus-5[1m]"` (file **global, ngoài git** — đúng như `CLAUDE.md` mô tả) | **executed + runtime-effective** (probe §3.1) |
| ② Hằng-số 2-key TIER2 | `.claude/workflows/hmw.js:62` `const TIER2_EXPECTED_FULL_ID = 'claude-opus-5'` + `scripts/spawn-model-audit.ps1:100` `$OWNER_RATIFIED_TIER2_FULL_ID = 'claude-opus-5'`**đổi cùng lượt**, đúng ràng 2-key (`spawn-model-audit.ps1:91-94`) | **executed-file** (chưa commit — caveat d) |
| ②b Bucket legacy (Khoản 1.4) | `scripts/spawn-model-audit.ps1:101` `$TIER2_LEGACY_FULL_ID = 'claude-opus-4-8'` — hằng-số **CÓ**, người đọc **KHÔNG** | 🔴 **agreed-only / ghost-wire** — caveat (c) |
| ③ BƯỚC 0.6 value-update | `.claude/commands/session-start.md:41` (default = Opus 5 MAX **kể cả ghế lead**; Fable/model-cao-hơn = **lệnh từng phát**; báo đầu phiên **rút gọn**) + `:42` lineage MTv3 superseded-VALUE + `:44` outage-path giữ cấu-trúc | **verified-pending runtime** — command `.md` **no hot-reload**, chỉ ăn từ phiên sau |
## 3. evidence (đo thật)
### 3.1 PROBE-EVIDENCE — alias `tier:'opus'` resolve ra gì (đo bằng chính lane này)
Lane L6 được spawn với `tier:'opus'` trong wave S149. Lời **tự-giới-thiệu hệ thống** của lane, verbatim:
> `You are powered by the model named Opus 5 (1M context). The exact model ID is claude-opus-5[1m].`
⇒ Tại 2026-07-25, alias `opus` **resolve ra `claude-opus-5[1m]`**. Bỏ hậu-tố cửa-sổ-ngữ-cảnh `[1m]` (đúng gotcha #37, cũng là điều `spawn-model-audit.ps1:210-212` bắt riêng) thì **model-id = `claude-opus-5` = ĐÚNG giá trị hằng-số 2-key vừa đổi ở lớp ②**. Nói cách khác: hằng-số kỳ-vọng và runtime **khớp nhau**, đo từ hai hướng độc lập.
Ghi chú tin-cậy: đây là **self-report của model** (nguồn = system-prompt của lane), **KHÔNG** phải metadata API. Xem caveat (a).
### 3.1-bis PROBE SAU RESTART (Khoản 3.2 thư — đo @S153 2026-07-26, ĐÓNG nấc restart-verify)
S153 = phiên đầu sau CLI-restart (S152 máy treo → restart, anh xác nhận trong HANDOFF). Bookend @open spawn 4 vai **KHÔNG truyền model-param** (kế thừa frontmatter alias `opus`+`effort:max` worker-tier-pin S124) → 2 vai tự ghi self-report vào sub-file trên đĩa, **độc lập nhau**:
- `runs/2026-07-26-S153-bookend-open/sub-tooling-auditor-S153.md:3``MODEL-SELF-REPORT: claude-opus-5[1m]` (kèm nguồn: env-block "The exact model ID is claude-opus-5[1m]").
- `runs/2026-07-26-S153-bookend-open/sub-lead-gap-S153.md:4``model self-report: claude-opus-5[1m]`.
⇒ Khoản 3 bước 2 **ĐẠT**: spawn-sau-restart không-model-param resolve `claude-opus-5*`. Bước 3 (báo hub 1 dòng) = thư `2026-07-26-se-to-ai_infra-model-default-probe-opus5` cùng phiên. Vẫn là self-report (caveat (a) giữ nguyên nấc — chưa đối chứng metadata API/jsonl `spawn-model-audit.ps1` cho Agent-tool spawns).
### 3.2 Dấu vết file (đo bằng git, KHÔNG bịa sha)
```
git diff --stat .claude/workflows/hmw.js scripts/spawn-model-audit.ps1 .claude/commands/session-start.md
.claude/commands/session-start.md | 5 +++--
.claude/workflows/hmw.js | 7 ++++++-
scripts/spawn-model-audit.ps1 | 7 ++++++-
3 files changed, 15 insertions(+), 4 deletions(-)
```
`git status --short` cho cả 3 = `M` (**đã sửa, CHƯA commit** tại thời điểm viết report). **KHÔNG cite sha nào** — 2 commit duy nhất chứa thay đổi hôm nay là `wal: flush`, mà luật đã chốt: outward **cấm cite `wal:`-sha** vì squash closeout làm chúng dangling (`adap-reports/2026-07-18-Governance-model-tier-h23-precedence-tested-update.md:26`). Sha thật sẽ là commit closeout S149; lead neo lại khi commit.
### 3.3 Đóng nhãn tồn đọng
Khoản 4.1 của thư `2026-07-19-Governance-goi-chot-owner-nam-khoan` mang nhãn **BLOCKED-by-O-5** (pin model ghế lead chờ owner). Lớp ① + ③ ở trên **đóng nhãn đó**: default đã chốt bằng văn-bản + đã pin thật trong `settings.json`.
## 4. tailored-gì + skip-gì-vì-sao
- **TAILORED — đường pin KHÔNG áp cho SE (Khoản 1.2).** SE pin **ALIAS** `opus` ở frontmatter 17/17 sub-agent (worker-tier-pin S124), **không** pin full-id. Vì vậy **spawn-site code GIỮ NGUYÊN 0 dòng đổi** — alias tự resolve sang Opus 5 (chính §3.1 chứng). Căn cứ giữ alias đã ghi từ trước: alias = dạng **đã-test n-nhỏ**, full-id = **n=0 chưa ai thử** (`adap-reports/2026-07-18-…-h23-precedence-tested-update.md:20`, `hmw.js:56` "CHƯA THỬ fix#8a"). Đây là **lệch có chủ đích, khai thẳng**, không phải behind.
- **TAILORED — 2-key thay vì 1 chỗ.** SE cố ý khai giá trị kỳ-vọng ở **hai** file để một lần sửa đơn phương bị FLAG (`spawn-model-audit.ps1:91-94`). Áp broadcast vì thế = đổi **đồng thời** 2 file, đã làm đúng.
- **TAILORED — báo phiên rút gọn (Khoản 5).** Lead đúng default ⇒ **im**; chỉ nêu khi owner chủ động đổi hoặc model không resolve (`session-start.md:41`).
- **GIỮ, không skip — outage-path.** `session-start.md:44` vẫn chỉ về `claude-opus-4-8[1m]` khi Opus 5 không resolve + **báo hub ngay**. Cấu-trúc H5 giữ nguyên, chỉ đổi VALUE. (Chính đường này làm caveat (c) thành rủi ro THẬT chứ không giả định.)
- **SKIP = không có.** Không khoản nào bị xếp n-a trong bản này.
## 5. honest-caveat
- **(a) Probe là self-report, không phải metadata API.** §3.1 đọc lời tự-giới-thiệu của lane, không đọc trường `model` trong transcript. Đối chứng độc lập = `scripts/spawn-model-audit.ps1` (Section B đọc `"message":{"model":"…"}` trong `agent-*.jsonl`) — **do lead chạy SAU wave**, chưa có kết quả tại thời điểm viết. Report này **KHÔNG** claim đã có đối chứng đó.
- **(b) Thư gốc VẮNG trên đĩa ⇒ không stamp-verify được.** `broadcasts/` không có file nào ngày 07-23→07-25 (đo hôm nay). Hệ quả: (i) sha `59ce1d0f` không tái-tính được ở SE — trái với phản-xạ "hash-verify TRƯỚC khi áp"; (ii) cách đánh số Khoản (1.2 / 1.4 / 3 / 5) trong report này **kế thừa từ chú-thích của lead**, lane không đối chiếu được với bản gốc; (iii) `/adap-audit` phía hub sẽ không tìm thấy bản sao thư trong repo SE. **Đề nghị lead:** copy thư vào `broadcasts/inbox/ai_infra/` + chạy stamp-verify, rồi sửa mục 1 của report này (idempotent). *(🧊 @S152: vế (i)+(ii) hết hiệu-lực — bản published tìm thấy tại hub, `stamp_verify` OK sha `9c909007`, Khoản đối-chiếu được; vế (iii) còn đúng tới khi `/adap-apply` copy về SE phiên kế — xem Đính-chính @S152 mục 1.)*
- **(c) 🔴 GHOST-WIRE ĐO ĐƯỢC — Khoản 1.4 mới ở nấc KHAI, chưa ở nấc CHẠY.** `grep -c "TIER2_LEGACY_FULL_ID" scripts/spawn-model-audit.ps1` = **1** — đúng một dòng, chính là dòng định-nghĩa `:101`; **0 nơi đọc**. Trong khi đó bộ phân-loại `:299-320` vẫn xử theo family: record resolve `claude-opus-4-8` **nằm trong** `$TIER2_FAMILY_PREFIX` (`claude-opus-`) và **khác** `$expected` (`claude-opus-5`) ⇒ rơi vào nhánh `:309-315` = `Write-Flag 'HIGH'` *alias-drift*, **cộng vào TOTAL**. Tức là hành-vi hiện tại **ngược** với ý Khoản 1.4 ("legacy bucket, đếm riêng, KHÔNG cờ drift") mà chú-thích `:97-98` tuyên bố. Hai điều làm nhẹ, phải nói cho đủ: (i) Section B **chỉ soi phiên HIỆN TẠI** (`:258`), nên record cũ không bị lôi ra; (ii) vì vậy cờ giả chỉ nổ khi **một lane trong phiên đang chạy** resolve `claude-opus-4-8` — mà đó **chính là đường outage** `session-start.md:44` bảo dùng ⇒ **không phải giả-định**. **Lane L6 KHÔNG tự sửa** (`spawn-model-audit.ps1` không thuộc tập file được giao); PROPOSE-diff để trong `sub-apply-L6.md` §4, lead áp. Lớp lỗi = ghost-wire dạng "config-key defined-but-unread" (S100).
- **(d) Chưa commit tại thời điểm viết.** 3 file ở trạng thái ` M`. Nấc `executed` ở đây = "floor đã nằm trong repo (working tree)", đúng nghĩa §C5; nếu wave S149 vì lý do gì mà không commit, nấc này **tụt**, không giữ.
- **(e) Lớp ③ chưa thể runtime-proven trong phiên này.** `session-start.md` là command `.md` — no hot-reload; BƯỚC 0.6 bản mới chỉ ăn từ phiên sau. Bất kỳ ai đọc report này **đừng** hiểu "default Opus 5 kể cả lead" đã được nghi-thức đầu phiên thực thi — nó mới ở dạng văn bản. *(🧊 @S153: ĐÓNG — BƯỚC 0.6 bản mới chạy runtime lần đầu chính phiên này: lead = Fable 5 ≠ default ⇒ báo đúng 1 dòng "chủ dự án đổi" 0 caveat, đúng khuôn rút-gọn Khoản 5.)*
- **(f) 3 file lớp thi hành do LEAD sửa, không phải lane này.** Lane L6 chỉ **đọc lại từ đĩa** và probe. Lane này chỉ tự tay chạm đúng 3 file khác trong wave: `scripts/governance-detectors.ps1` (C-b), report này, và 1 dòng enrich ở report h10-S72.