# Lead-evidence — soi HUB trực tiếp (em-main tự đo, KHÔNG qua lane) > Nguồn: đọc repo `D:\Dropbox\CONG_VIEC\AI_INFRA` (read-only, §J2 chỉ-ghi-repo-mình). Ngày đo **2026-07-15**. > Mục đích: (a) trả lời owner-decision #2 "xem cách làm của hub" · (b) đối chứng tiền-đề H23 cho lane C. --- ## A. Owner-decision #2 — hub xử 57-wal thế nào? ### A.1 Số đo hub (live) | Trục | Hub | SE | |---|---|---| | `wal:` trên `origin/main` (ĐÃ lọt) | **1** | **57** | | `wal:` chưa đẩy (`origin/main..HEAD`) | **2** | **3** | → **Hub KHÔNG dọn cái đã lọt.** Giữ nguyên 1 commit trên remote. ### A.2 Phương pháp hub (trích commit log) - `2c21bed`: "GUARD-5.2 dogfood-trọn (**23-wal-xen-kẽ → anh-chốt-A rebase-drop → fold-residual → verify-0-byte → push 7-mốc N=0**)" - `5114519`: "CODIFY wal-xen-kẽ (**anh-chốt-A AskUserQuestion ×2: REBASE-DROP giữ mốc đích-danh + máy-verify tree-identical** — §I4 + session-end-5.0 + mark `RC-pqhuy1987-14-07-2026-09-16-24` Active-High, partial-supersede AC5-s89 vế xen-kẽ)" **Quy trình hub = 5 bước:** 1. REBASE-DROP các `wal:` **chưa đẩy** — **giữ mốc đích-danh** (commit `[CLAUDE]` thật) 2. **Máy-verify tree-identical** (chứng minh drop `wal:` KHÔNG đổi nội dung) 3. fold-residual 4. verify-0-byte 5. push khi **N=0** **Owner-gate:** `anh-chốt-A` qua **AskUserQuestion ×2** + mark **`RC-pqhuy1987-14-07-2026-09-16-24` Active-High**. ### A.3 → Khuyến nghị cho SE (khớp hub, chờ anh ký) - **3 chưa đẩy** → rebase-drop/squash + máy-verify tree-identical + push khi N=0. **Được** (chưa đẩy = không vi phạm "cấm rewrite đã-đẩy"). - **57 đã lọt remote** → **ĐỂ NGUYÊN**, y hub. Rewrite = vi phạm hard-safety H22 + 57 commit trên remote chung = rủi ro cao. Guard chỉ chặn TƯƠNG-LAI. ### A.4 ⚠️ 2 cảnh báo đắt từ hub (họ đã trả giá) - **`E-029`** — "wal-squash-run-đầu (**verify-mốc-sai ca-fold-uncommitted** → reflog-recover 100%)": lần chạy squash ĐẦU TIÊN họ **verify nhầm mốc → nuốt work chưa-commit**, cứu bằng reflog. → SE PHẢI: verify mốc đích-danh + check `git status` sạch TRƯỚC khi rebase-drop. - **`E-030`** — "CRLF-agent-registry-loss — phát hiện + RCA + kết tinh spec (**EXECUTE defer s95 per anh**)": hub **CHƯA execute xong** chính cái CRLF họ vừa broadcast. → SE adopt là đi TRƯỚC hub ở khối này; đừng giả định hub có sẵn mẫu chạy được. --- ## B. Tiền-đề H23 — ĐỐI CHỨNG (material cho lane C + owner-decision #1) ### B.1 Hub PIN, không inherit (đo trực tiếp frontmatter) ``` 17/17 agent hub → model: claude-opus-4-8 (PIN full-id) ngoại lệ: librarian, scout → model: sonnet (helper rẻ) SE 12/12 agent → model: inherit ``` Hub roster (17) gồm: adoption-tracker · agent-ops-monitor · architecture-watch · cicd-monitor · fable-clone-aggregator · harness-audit · harness-eval · harness-refine · harvest-curator · implementer · investigator · **lead-gap-auditor** · **lead-stale-auditor** · librarian · reviewer · scout · tooling-auditor. > 📌 `lead-gap-auditor` + `lead-stale-auditor` **đã tồn tại ở hub** = chính 2 vai H24 §2(1). Tên tham chiếu cho lane D (SE tự-quyết tên — H24 §3(e) "tên vai = FORM tự-quyết"). ### B.2 Chuỗi model-tier — 3 bản, drift 3 chiều | Bản | Ngày | Nói gì | Nấc | |---|---|---|---| | **H8** all-inherit | 2026-06-16 | mọi sub → `inherit` (ăn top-tier lead) | SE ghi: "🔴 **BẮT BUỘC** (anh-chốt, **mọi sister**; chất lượng trên chi phí)" | | **model-tier-v2-pin-simple** | 2026-07-03 | hub đổi FORM sang pin. **"Không có mandate mới; các đội KHÔNG bắt buộc làm theo"** · **"Danh sách trợ lý nào ở tầng model nào = FORM mỗi đội tự quyết"** · **"cả hai đều đạt sàn miễn là đội trưởng ở model cao nhất và việc nâng-hạ tầng là có kỷ luật"** | `supersedes_scope: none` | | **H23** explicit-model-at-spawn | 2026-07-13 | §1: "chuỗi model-tier trước đã chốt... **mọi sub có bộ-nhớ chạy ở worker-tier gán-cứng**" + §2(1) "**KHÔNG dựa vào fallback ngầm — không dựa 'kế-thừa từ lead'**" + §2(2) "giữ pin ở tệp định-nghĩa làm **tầng-2**" | hub nội-bộ = `H8.6e` (commit `9bb5701`) | ### B.3 Phân tích (lead) **SÀN THẬT** (theo pin-simple — bản mới nhất phát biểu tường minh về sàn): 1. lead = model cao nhất ✓ 2. việc nâng-hạ tầng **có kỷ luật** (chống class "quên hạ tầng") **FORM** (sub nào ở tầng nào) = **mỗi đội tự quyết** — pin-simple nói thẳng. → **SE all-inherit ĐẠT SÀN:** lead frontier ✓ · all-inherit = **100% tất định, KHÔNG có điểm quyết-theo-tác-vụ nào** ⇒ class "quên hạ tầng" **không thể tồn tại** (chính là lỗi mà pin-simple sinh ra để chống — SE đóng nó bằng đường khác). → **SE nằm TRONG khung, KHÔNG vượt khung** (theo nguyên tắc anh chốt S119: "điều chỉnh trong cho phép" = OK, không cần request cho việc lệch form). → **DEFECT nằm ở H23 §1**, không ở SE: nó phát biểu **FORM riêng của hub** ("mọi sub chạy worker-tier gán-cứng") **như thể là SÀN đã chốt**, mâu thuẫn trực tiếp với pin-simple ("form mỗi đội tự quyết", "cả hai đều đạt sàn"). Sister đọc H23 theo nghĩa đen → tưởng **phải bỏ all-inherit**. → **Trầm trọng hơn:** H8 (06-16) tuyên all-inherit **"BẮT BUỘC mọi sister"**. Nếu pin-simple đã nới thành "form tự do" thì **H8 chưa từng được retract tường minh**; nếu H8 vẫn sống thì **H23 mâu thuẫn với chính H8**. Fleet đang giữ **3 phát biểu không tương thích** về cùng một trục. ### B.4 H23 §4 project-fit — escape hatch CÓ SẴN > "**Hệ chỉ dùng MỘT model duy-nhất cho mọi sub:** điểm (2) và (3) **rút gọn**... nhưng bạn **vẫn nên làm (1) và (5)**." SE = "một model duy nhất cho mọi sub" (dynamic = lead). ⇒ **(2)(3) rút gọn · (1)(5) vẫn áp**: - **(1)** ghi model tường-minh tại spawn-site → SE dùng **ghi-chú-đầu-cây** (H23 §2(1) khuyến nghị chính xác cách này cho cây điều-hướng nhiều nhánh): 1 note ở đầu `agents/README.md` decision-tree + `hmw.js` + commands, KHÔNG lặp inline N nhánh. - **(5)** kỷ-luật động-từ: grep tài liệu SE tìm chỗ viết "enforce/cơ-giới-hoá" sai nấc. ⇒ **SE adopt được H23 mà KHÔNG bỏ H8.** Không phải chọn-một. --- ## C. Kết luận lead → 3 owner-decision | # | Câu hỏi | Bằng chứng | Đề xuất (chờ anh) | |---|---|---|---| | 1 | H23 ⟂ H8 | pin-simple: form tự-quyết, cả 2 đạt sàn · H23 §4 escape hatch · hub tự pin nhưng broadcast inherit | **GIỮ H8 all-inherit** (trong khung) + adopt H23 (1)(5), (2)(3) n-a-reasoned → **`/adap-request`** yêu cầu AI_INFRA **reconcile H8 ⟂ pin-simple ⟂ H23** + re-broadcast cho sister (anh-directed) | | 2 | 57 wal: lọt remote | hub giữ nguyên 1/1 · rebase-drop CHỈ cho chưa-đẩy · mark `RC-…14-07-2026-09-16-24` | **3 chưa đẩy → drop + tree-identical verify.** **57 đã lọt → ĐỂ NGUYÊN** (khớp hub) | | 3 | số nhịp H24 | — | anh đã đồng ý adopt; **số = quyền anh**, em đề xuất ở spec, anh ký | --- ## D. Nấc trung thực - Số ở A.1/B.1 = **đo live 2026-07-15**, lặp lại được bằng lệnh trong bảng. - Trích commit-message hub = **verbatim từ `git log`**, KHÔNG diễn giải. - **CHƯA verify:** hub có `spawn_model_audit` script không (`ls scripts/ | grep -i spawn|model` = rỗng) dù `9bb5701` nhắc "spawn_model_audit LIVE 29-dispatch/0-mismatch" → có thể ở đường dẫn khác hoặc tên khác. **Không kết luận.** - Hub `.claude/settings.json` = 132B có wire `wal-flush` (grep=1) → hook hub **ĐÃ live** (file `settings-hooks-entry.STAGED.json` chỉ là bản mẫu sót lại). - Đọc repo hub = **read-only**; SE KHÔNG ghi gì sang đó (§J2).