check-email 6 broadcast moi (H23 model-at-spawn / H24 lead-self-audit / H22 wal-defect-fix 5-san / H22 push-guard / EOL-CRLF agent-registry / owner-sign) - hash 7/7 + tamper 4/4 MATCH. Pipeline H21: fable-clone invest 5-lane (wf_1f6bd5e2-478, 5/5 clean) -> spec v1 -> fable-clone reviewer 4-lane (wf_78a84f9b-03e: R2 FAIL 4C+8M, R3 FAIL 5C+6M, R1/R4 chet #53) -> v2 -> fable-real reviewer cong-cuoi (wf_cb964f83-331: GO-WITH-FIXES + 8 fix + 2 honesty-C) -> v3 (STILL-BROKEN = 0). Anh chot B: dung tai spec, wave chay phien sau qua /tiep. Do that: 57 wal: da lot origin/main (hub do duoc 1 -> SE = 57x); nguyen nhan KHONG phai turn-seam ma la session-end.md:113 SE tu viet "kep sau -> GIU NGUYEN". K troi 3->10/buoi. v1 SE GAY MAT VIEC (R3 fault-inject: NONWAL=0 -> 0 commit de fixup -> detached HEAD -> hook fail-open -> abort -> mat worktree = E-029 bang cua sau). Owner 6 chot: nguyen-tac moi (vuot-khung = request anh + AI_INFRA) / PA-2 = PA-2a hang-so + PA-2b audit / 6-15-3 / [carry:slug] / KHONG don 57 / fix#8 (a)(b). 0 prod-code, 0 migration, 0 FE. Test 509 giu nguyen (45D + 464I). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
112 lines
8.2 KiB
Markdown
112 lines
8.2 KiB
Markdown
# 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).
|