Files
solution-erp/docs/governance/adap-reports/2026-07-13-Governance-harness-23-explicit-model-at-spawn.md
pqhuy1987 e9124fc6de
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 5m30s
[CLAUDE] Docs: S125-S126 closeout GOP — H23-precedence DO (spawn-param THANG hard-pin, /fable-real SONG) + sweep all-inherit va 15+3+5 + gotcha #83 + hub-mail h23-result
- NHOM A restart-verify: A1 tier:'fable' tren reviewer pin-opus -> resolved claude-fable-5 (spawn-param THANG); A2 no-tier -> claude-opus-4-8 DU lead=Fable (pin an runtime); A3 autoMemory WRITE-path OK (project_h23_spawn_precedence.md moi).
- B1 sweep all-inherit floor-song: 15 dong/5 file + 3 cung-lop lot-pattern + 5 dong H23-stale o 3 command-file (H1 bat) -> VA HET; spawn-model-audit Section-D flush H8->S124 + effort-check (fault-inject 2-chieu PASS, 14 duong-gia -> 0); governance-detectors C3 seed +worker-tier-pin; re-grep 0 floor-song; suite 45 = baseline 0-new.
- vocab-alias-map §3 canonical flip -> worker-tier-pin (all-inherit/two-tier = 2 alias cu); STATUS:6 FROZEN-diary label (het H24-3 lag); STATUS:25 + agents/README:5 sync.
- Email hub h23-precedence-test-result stamp 945cf3ad (reviewer-gate FAIL bat 3 loi truoc stamp -> gotcha #83 aggregate-cumulative) + _index cung luot.
- B3/B4 owner-gated: soan b3-b4-owner-gated-proposals.md CHO ANH (mega-line retier + budget:74 wording) — 0 apply.
- Closeout: harvest 4 lane + 2 monitor (H2 GATE PASS 5/5, 0/29 orphan; H1 3/4 clean + 5-spot fix) + curate moved-not-cut reviewer/inv-cb + carry disposition (DONG 2: restart-s124, h23-fable-test-postrestart; MO re-stamp 9) + H24 counter=5 + pilot H22 D5 (pause-roundtrip + hook-fire re-verified; cross-model PENDING).
- Governance/tooling-only: 0 prod-code, 0 mig, test 509 GIU, bundle FROZEN.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 15:19:08 +07:00

7.8 KiB
Raw Blame History

adap-report — H23 explicit-model-at-spawn (PA-2)

1. id-broadcast

2026-07-13-Governance-harness-23-explicit-model-at-spawn

2. nấc G-011

executed — 2 lớp PA-2 đã land và chạy. 🔴 NHƯNG câu hỏi TRUNG-TÂM của broadcast vẫn CHƯA TEST (xem §5(a)) ⇒ KHÔNG được đọc đợt adopt này thành "H23 đã đóng". UPDATE 2026-07-16 S126: câu hỏi trung-tâm ĐÃ TEST — spawn-param THẮNG frontmatter hard-pin (evidence §5(a) khối UPDATE).

Phần Nấc
PA-1 (a)(b)(c)(d) — 4 file .md, 0 frontmatter, 0 config, 0 số, H8 nguyên-vẹn executed
PA-2a — hằng-số TIER2_EXPECTED_FULL_ID executed + runtime-verified (detector đổi trạng-thái đúng, §3)
PA-2b — spawn-model-audit.ps1 so resolved-vs-expected executed + runtime-verified (fail-loud ĐÚNG lúc thiếu → OK khi land; teeth-inject FLAG)
Precedence spawn-param ⟂ frontmatter (H23 §2(2)) executed + runtime-verified 2026-07-16 S126 (hết DEFER): lane tier:'fable' trên reviewer pin-opus → resolved claude-fable-5 = param THẮNG hard-pin; control no-tier → claude-opus-4-8 DÙ lead=Fable = pin ăn thật (§5(a) UPDATE)

3. evidence

Commit (ĐÃ PUSH, range 4727d16..c39ba9d):

  • d07bbb9scripts/spawn-model-audit.ps1 (PA-2b, 25 606 B)
  • 00a1c67hmw.js:50 const TIER2_EXPECTED_FULL_ID = 'claude-opus-4-8' (PA-2a) — trong 1 commit nguyên-tử 9 file
  • 53765b0fable-clone.md GAP#6 + fable-real-runbook.md

Đo thật — PA-2b đổi trạng-thái ĐÚNG theo thiết-kế (2 mốc, đo bằng chính script):

Mốc Output
TRƯỚC W2 land FAIL-LOUD: expected constant missing (W2 chưa land)
SAU W2 land [OK] claude-opus-4-8 = owner-ratified
Teeth-inject (lead tự tiêm claude-opus-9-9) FLAG mismatch → sửa → hết FLAG

⇒ script có răng thật, không phải happy-path xanh.

GAP#6 land (fable-clone.md): lane ensemble PHẢI mang tier:'opus'; hmw.js:63-64 resolveModel(): if (tier==='fable'||tier==='opus') return tier.

4. tailored-gì + skip-gì-vì-sao

TAILORED:

  1. PA-2 KHÔNG neo-tại-spawn — vì neo-tại-spawn BẤT-KHẢ-THI ở SE. Param model: của Agent-tool chỉ nhận enum alias (sonnet|opus|haiku|fable), không nhận full-id; và SE 0 full-id vì H8 all-inherit. ⇒ anh chủ-dự-án chốt (O1) đổi hình-thức sang PA-2a hằng-số + PA-2b audit so resolved-vs-expected. 🔴 Đây là đổi HÌNH-THỨC một quyết-định owner đã ký ⇒ đã report-before-stamp và anh ack riêng (fix#8a).

  2. GAP#6 diễn-giải theo project-fit SE: /fable-clone tự định-nghĩa là "ENSEMBLE tier-2" ⇒ lane BUỘC mang tier:'opus'. Thiếu ⇒ lane inherit lead ⇒ lead=Fable thì thành N× Fable = vừa đốt quota top-model gấp N lần, vừa phá đúng lý-do lệnh tồn-tại (ensemble rẻ để thay 1 lượt Fable đắt).

  3. Acceptance v1 grep tier:'opus' ≥1 hit giữ làm ĐIỀU-KIỆN CẦN, KHÔNG ĐỦ — nó chỉ đo CHỮ trong file, không đo runtime ⇒ Goodhart-able 100%.

SKIP / n-a: không skip điểm nào của broadcast.

5. honest-caveat

🔴 (a) LỖ TRUNG-TÂM CHƯA TEST — chính thứ H23 §2(2) BẮT BUỘC phải khai. Nguyên-văn broadcast đòi khai: "thứ-tự ưu-tiên giữa 'tham-số tại spawn''pin ở tệp định-nghĩa' khi CẢ HAI cùng hiện-diện — rất có thể chưa từng được test." Ở SE cả hai ĐANG cùng hiện-diện: hmw.js trả alias vào agent(…, {model:…}) TRONG KHI frontmatter toàn roster = inherit. Chưa ai test bên nào THẮNG. 🔴 Hệ-quả nếu frontmatter thắng: TOÀN BỘ fix GAP#6 = NO-OP ⇒ floor-2 vẫn thủng khi Fable UP — đúng lỗi 🟥 reviewer đã bắt @S108. Phép thử phân-biệt được (H23 §6 phép-thử-phá #3): chạy 1 lane tier:'opus' KHI lead=Fable → đọc model THỰC-TẾ resolve → lệch ⇒ báo owner. ⚠️ Phiên adopt này lead=Opustier:'opus'inherit2 nhánh ra CÙNG kết-quảKHÔNG phân-biệt đượcDEFER tới phiên lead=Fable. 🔴 Khai thẳng: CHƯA test, KHÔNG giả-vờ đã test.PA-2a/PA-2b là 2 lớp GIÁN-TIẾP, KHÔNG THAY được phép thử trên. Chúng chứng "hằng-số đúng và audit đọc được", không chứng "param có thắng frontmatter không".

UPDATE 2026-07-16 S126 — LỖ (a) ĐÃ ĐÓNG, phép thử còn MẠNH HƠN thiết-kế gốc. Bối-cảnh đổi: S124 owner-decision pin cứng 14/14 frontmatter model: opus (hết all-inherit) ⇒ contest chuyển từ param ⟂ inherit (mơ-hồ — inherit có thể chỉ là "defer to caller") thành param ⟂ HARD-PIN (contest thật). Đo phiên đầu sau restart, 2 lane wf_f960dae2-fa0, đọc bằng chính spawn-model-audit.ps1 -SessionId c0fa4300…:

  • Lane reviewer (pin opus) + spawn tier:'fable' → resolved claude-fable-5 (3 records) ⇒ SPAWN-PARAM THẮNG/fable-real·/fable-clone SỐNG, GAP#6 fix KHÔNG phải NO-OP (hệ-quả 🔴 ở trên KHÔNG xảy ra).
  • Lane investigator-codebase KHÔNG override → resolved claude-opus-4-8 (9 records) DÙ lead=Fable 5 ⇒ pin frontmatter ăn runtime, loại giả-thuyết inherit-lead. (Lead=Fable làm control phân-biệt được — đúng tinh-thần phép-thử-phá #3, chỉ đảo chiều alias.)
  • Audit tại thời-điểm đo (run contest wf_f960dae2-fa0, 2 lane): 0 mismatch. ⚠️ COUNTS của script = cumulative CẢ PHIÊN (2/2/0 lúc đo → 4/4/0 sau 2 lane review cùng phiên) ⇒ evidence bền = bảng per-lane theo run-id, KHÔNG phải số tổng. Evidence nội-bộ: runs/2026-07-16-S126-adap-spec-execute/runtime-verify-synthesis.md. Đã báo hub: 2026-07-16-se-to-ai_infra-h23-precedence-test-result.
  • ⚠️ Giới-hạn khai thẳng: (i) đo trên SE frontmatter ALIAS opus — hub pin FULL-ID, KHÔNG generalize sang hình-thức đó (bài ENV-DEPENDENT); (ii) retrospective 1 phiên — không hứa spawn TƯƠNG-LAI (đúng caveat PA-2b); (iii) fix#8a (param có từ-chối full-id?) VẪN chưa thử — không thuộc phép đo này.

🔴 (b) Chính mệnh-đề "param chỉ nhận alias" cũng CHƯA THỬ. Cổng-cuối /fable-real reviewer bắt đúng: bullet "param model: chỉ nhận enum alias" trong owner-decisions dán nhãn "Đo" nhưng KHÔNG nêu phép đo. Nấc trung-thực đã hạ xuống: "theo tài-liệu harness (Agent-tool model enum = sonnet|opus|haiku|fable), CHƯA thử truyền full-id để xem có bị từ-chối không" (fix#8a — anh đã ack hình-thức PA-2a+PA-2b trên nền nấc đã hạ này). 🔸 Đây là tiền-đề biến PA-2-nguyên-bản thành "bất-khả-thi" ⇒ nó đỡ cả kết-luận O1. Nếu tiền-đề sai, hình-thức PA-2 cần xét lại.

🔴 (c) hmw.js:46-49 mang cùng ghi-chú này trong mã — không chỉ ở report. Có chủ-đích: người đọc mã phải thấy lỗ ngay chỗ có thể bị lừa.

🟡 (d) → adap-request R1 (GIỮ, evidenced): H8 all-inherit ⟂ pin-simple ⟂ H23 — hub tự pin 17/17 trong khi broadcast nói all-inherit. SE giữ H8 nguyên-vẹn (0 frontmatter đổi) và đề-nghị hub làm rõ.


Ghi @S122 (2026-07-15) · lead Opus 4.8🔴 chính vì lead=Opus mà §5(a) KHÔNG test được phiên này · chain ĐÃ PUSH 4727d16..c39ba9d, tree clean UPDATE @S126 (2026-07-16) · lead Fable 5 — §5(a) ĐÓNG bằng phép đo thật (khối UPDATE trong §5(a)); (b) fix#8a vẫn mở.