# sub-invest-6 — 3 thư 2026-07-19 (ensemble cost-lens / depth-axis / depth-cost)

> Khung ghi @lượt-1 TRƯỚC KHI ĐỌC (chống #53). Run `2026-07-24-S149-dong-du-5-vong` · vai `investigator-codebase`.
> Nguồn ĐỌC TRỌN: `D:/Dropbox/CONG_VIEC/AI_INFRA/broadcasts/outbox/all/<id>.md` (3 file). Ký hiệu: **[C]** cost-lens `0a03b2c8` · **[A]** depth-axis `f05eba5b` · **[B]** depth-cost `294be326`.

## 0. VERDICT 1 dòng
**Chỉ 1/3 thư có BINDING = [A] depth-axis (§3 "Khung sàn (function-floor — 4 khoản)" `:38-43`). [C] và [B] TỰ KHAI "KHÔNG floor mới, không bắt làm gì" ⇒ với 2 thư đó: KHÔNG CÓ GÌ BẮT BUỘC.** Và 🔴 **3 thư đã được SE đọc + dispose + vá code @S144 (2026-07-22)** — cái thiếu là **adap-report (báo nấc)**, không phải adopt.

---

## 1. [C] cost-lens (`0a03b2c8`) — trục cost khan-hiếm + routing thật/ảo

**(a) BINDING — KHÔNG.** Verbatim (4 chỗ tự khai):
- `:10` (frontmatter re) — *"Cả 3 = owner-side chia-sẻ, KHÔNG floor."*
- `:11` (status) — *"sister pull /adap-apply (FYI, không bắt làm gì)."*
- `:20` — *"Cả 3 khoản = chia-sẻ cách-làm, **KHÔNG floor mới**."*
- `:50` — *"FYI owner-side — KHÔNG floor, không bắt làm gì."*
- Nghĩa-vụ KÊNH duy nhất (đã là luật sẵn của SE, không phải khoản mới): `:50` *"Pull `/adap-apply`, báo nấc thường-lệ."*

**(b) owner-SỐ:**
- `:28` — *"**Trần/giá cụ-thể mỗi nhà tự điền theo subscription của mình.**"* ⇒ trần quota hạng-nhất (hub: ~50%) + hệ-số giá (hub: ×2) = **số của chủ dự án**, AI không tự chọn.
- `:50` — *"**Owner mỗi nhà tự chốt form.**"* · `:32` heuristic *"việc mới để chế-độ thật · fix cái cũ để model ảo"* = **owner-LUẬT** (hub tự khai `:37` *"Là heuristic khởi-điểm, **không phải luật**"*).

**(c) SE tự làm trong khung:**
- Khoản ③ `:44` suggest **đúng 1 dòng** non-blocking rồi chạy — `:50` *"**Khoản ③ áp được cho MỌI nhà** (kể cả 1-chế-độ)"* ⇒ sửa luật/prompt lead, **0 số owner**, rẻ nhất.
- Khoản ① `:28` thêm cột *"đốt đơn-vị NÀO"* vào bảng cost. Bảng cost DUY NHẤT của SE = `.claude/agents/README.md:249-257`, đơn-vị hiện là **thứ-ba** ("Effective tokens billed (after caching)") + toàn giá trị `~` ước + đóng băng ở thời 7 sub-agent (S144 `sub-investigator-codebase-0.md:123-125`). Thêm CỘT = SE làm được; **điền SỐ = phải ĐO** (không phải owner đặt).

**(d) Trục:** **ENSEMBLE cost-lens + routing thật/ảo — KHÔNG phải 5 vòng tự-bảo-trì.** (5 vòng = checklist hub `f71c5b65`, sống ở `docs/governance/session-model-se-draft.md:8,21,58` + outbox `b9ef5ede`.) Không có chữ "vòng" nào trong thư.

---

## 2. [A] depth-axis (`f05eba5b`) — **THƯ DUY NHẤT MANG BINDING**

**(a) BINDING — CÓ.** Điều-kiện kích-hoạt `:20`: *"Áp cho dự-án nào có **ensemble đa-agent / đa-lăng-kính** … Không có ensemble → FYI, chưa cần áp."* → **SE QUALIFY** (`.claude/commands/fable-clone.md:15` + `.claude/workflows/hmw.js:175` `parallel()`).
`:38` — *"## 3. Khung sàn (function-floor — 4 khoản)"*. VERBATIM 4 khoản:
- **F1 `:40`** — *"Trục sâu = owner-gated, posture tự-chọn: mỗi dự-án chọn default (AI_INFRA = trần + dial-down + MAX; hoặc opt-in-off); tắt-trục-sâu = escape về chiều-rộng LUÔN còn (không khoá cứng); clamp trần cứng (vd ≤3) + assert tổng-lượt ≤ trần."*
- **F2 `:41`** — *"Đào-vào-điểm-tranh-cãi, KHÔNG đào-tất: worker tầng-2 nhắm điểm nóng (bị-phá/bỏ-sót/mâu-thuẫn) + nhận lời-thử-phá làm bản-đồ, KHÔNG tổng-hợp (không có đồng-thuận để nịnh)."*
- **F3 `:42`** — *"Chống-mỏ-neo tường-minh: worker tầng-2 = con TƯƠI, prompt-floor \"đồng-ý-lại=0-điểm\"; tầng-2 REFUTE-có-evidence đè tầng-1, tầng-2-paraphrase = 0-tín-hiệu."*
- **F4 `:43`** — *"Cận-ngân-sách LOUD: vượt ngân-sách trước bước đào → BỎ đào + báo RÕ (không văng lỗi, không lặng-thầm bỏ), trả kết-quả chiều-rộng."*
- Điểm sàn adopt `:55` — *"điểm sàn adopt = có trục sâu **bật-được** + có **escape width-only** (không khoá cứng), KHÔNG bắt buộc default nào."*

**Trạng thái SE hôm nay (đo tươi 2026-07-24):** 4/4 khoản ĐÃ dispose @S144 — `C14-disposition-per-khoan.md:32-35`:
| Khoản | Disposition S144 | Neo đĩa hôm nay |
|---|---|---|
| F1 | **ADOPT phần WIDTH · BLOCKED phần SÂU (O-2)** | `hmw.js:116-134` C8b LOUD-skip, `WIDTH_CAP = 16` (`:125`), cite `depth-axis:40`/`:43` (`:119`,`:121`) |
| F2 | **N-A** (chưa có trục sâu) | grep `deepen\|thử-phá-2\|đào-vào-điểm\|chống-mỏ-neo` trong `.claude/commands/ .claude/workflows/*.js docs/governance/` = **0 hit** (re-verify hôm nay) |
| F3 | **N-A + nợ đã lộ (O-4a)** | refute SE do **em-main** (đã đọc tầng-1) ≠ con TƯƠI |
| F4 | **ADOPT** | `hmw.js:129-132` LOUD-skip, KHÔNG throw (đúng `:43`) |

**(b) owner-SỐ:**
- **Trần tổng-lượt trục sâu** — `:40` *"clamp trần cứng (**vd ≤3**)"*: "vd" = ví-dụ, KHÔNG mandate ⇒ số thật = **O-2** (`spec-adap-dot-11-22-07-2026-v2.md:93` *"Posture trục-sâu + **trần tổng-lượt**"*; `:116` C8a BLOCKED-by-O-2).
- **k worker đào + tên 3 lăng-kính + cách nhắm điểm-nóng + quyền đọc-file** — `:47` *"mỗi dự-án tự quyết theo engine mình"*.
- **Posture default** (trần+dial-down HAY opt-in-off) — `:34`/`:55` = owner-LUẬT (không phải số).
- **Ngân-sách để F4 so** — SE chưa có budget-gate nào ⇒ ngưỡng = owner-SỐ (cùng lớp `spec v2:136` "C7-ngưỡng").
- (Đã chốt rồi: trần **width** 16 = **O-7**, owner chốt 2026-07-22 — `hmw.js:124` *"Trần 16 = GIÁ TRỊ CŨ ĐÃ CÓ, không phải số mới AI đặt. Đổi số = quyền owner (O-7)."*)

**(c) SE tự làm trong khung:** (i) **khai** escape width-only đã thoả *trivially* (0 trục sâu ⇒ không có gì để khoá) — chỉ là 1 câu trong report; (ii) F4 đã xong; (iii) trả **nợ O-4a** (refute-bởi-em-main = mỏ-neo) bằng luật/prompt "con refute phải TƯƠI" — 0 số owner. **Dựng trục sâu THẬT = KHÔNG tự làm được** (chờ O-2).

**(d) Trục:** ensemble chiều-sâu. Không phải 5 vòng — nhưng **chạm** hạ-tầng tự-bảo-trì qua `hmw.js` (2 vá đã land).

---

## 3. [B] depth-cost so-do-thuc (`294be326`) — số đo, KHÔNG floor

**(a) BINDING — KHÔNG.** `:20` — *"Không floor mới; FYI-số + bài học."* · `:63` — *"FYI-số + bài-học — KHÔNG floor mới, không bắt làm gì."* Chỉ khuyến nghị `:63` (*"đối-chiếu bảng cost của mình theo kiểm-nhanh §4; 4 bài học §3 đáng soi lại pipeline nhiều-tầng"*) + falsifier `:59`.

**(b) owner-SỐ: KHÔNG có.** Mọi số trong thư là **số ĐO của hub** (`:24` trần 10 lượt cấu-hình đo · `:28` ~1.14M vào+ra · `:29` 467.5K phía-ra · `:30` ~114K/lượt · `:31` 41.5% · `:36` lệch 2.9× / `:10` 2.4×) — mô-tả, không mandate. Cái SE thiếu là **số ĐO của chính SE**, không phải số owner đặt.

**(c) SE tự làm trong khung:**
- ✅ **ĐÃ LÀM**: bài-học-2 `:53` (*"attempted-failed tường-minh"*) → `hmw.js:240-259` **C1 LANE-CHẾT-PHẢI-KÊU**, cite đích danh `depth-cost:53` (`:246`) + falsifier `:59` (`:248`), giữ shape trả về (`:251`), repro thật `wf_491c05a8-6dc` 3/5 lane chết (`:244-245`).
- ⬜ **CHƯA**: falsifier `:59` câu-1 *"bảng cost của bạn ghi đơn-vị nào — tổng vào+ra hay phía-ra? Hai số đó lệch bao nhiêu lần?"* → SE **chưa đo** (đơn-vị thứ-ba + giá trị ước). Đo được bằng nội-lực, không cần owner.
- ⬜ bài 3 `:54` (*"flip không đổi hành-động = flip-cosmetic, không cho đè"*) + bài 4 `:55` (*"con thử-phá tầng-2 phải THẤY vòng-1"*) — chỉ áp khi có tầng-2 ⇒ theo O-2.

**(d) Trục:** cost-đo + hardening pipeline nhiều-tầng. **KHÔNG phải 5 vòng.**

---

## 4. Tổng hợp (a)(b)(c)(d)

| Thư | (a) BINDING | (b) owner-SỐ | (c) SE tự làm | (d) trục |
|---|---|---|---|---|
| [C] cost-lens | **KHÔNG** (`:20`,`:50`) | trần quota % + hệ-số giá (`:28`) · form routing (`:50`) | ③ suggest-1-dòng (`:44`) · thêm cột đơn-vị (`:28`) | ensemble cost/routing |
| [A] depth-axis | **CÓ — 4 khoản `:40-43` + sàn adopt `:55`** | trần tổng-lượt trục sâu / k đào / ngưỡng ngân-sách (O-2) | khai escape width-only · trả nợ O-4a · F4 xong | ensemble chiều-sâu |
| [B] depth-cost | **KHÔNG** (`:20`,`:63`) | không có (số hub = mô-tả) | ĐO bảng cost 2 đơn-vị · (C1 đã vá) | cost-đo + hardening |

**Không thư nào thuộc trục 5-vòng tự-bảo-trì.** Trục 5 vòng nằm ở cụm `Governance-*` (vd `2026-07-19-Governance-harness-dong-du-vong-audit-va-eval-use-side`, `…goi-chot-nam-khoan`) — cùng đợt-11 nhưng khác thư.

## 5. Nợ THẬT còn lại (khác với "chưa adap")
1. **Báo nấc đợt-11** — `broadcasts/_index.md` tail: 07-22 có `bao-nac-wave-dot-9-10`, `errata-…`, `adap11-hoi-c7-va-bulk-note-shards`; **0 row** báo-nấc cho đợt-11 ⇒ hub chưa biết SE đã vá 2 chỗ.
2. **O-2** (posture trục sâu + trần tổng-lượt) — chặn F1-sâu/F2/F3.
3. **Đo bảng cost 2 đơn-vị** (falsifier `[B]:59`) — SE tự làm được.

## 6. KHÔNG CHẮC
1. **Không tái-đo hash** 3 file `outbox/all` hôm nay vs bản `broadcasts/inbox/` SE dùng @S144 (S144 tuyên 10/10 byte-identical, tôi TIN chứ không đo). Hub sửa file sau 07-22 ⇒ verdict lệch.
2. **Ý nghĩa "BINDING" của [A] mơ-hồ 2 chiều:** `:20`+`:38` nghiêng "SE **phải** có trục sâu"; `:34` (*"Dự-án e-ngại cost → chọn opt-in-off"*) + `:55` (*"KHÔNG bắt buộc default nào"*) nghiêng "posture off là hợp-lệ". SE hiện = **off-by-absence**, chưa tuyên tường-minh ⇒ chưa chắc PASS hay FAIL sàn adopt.
3. **Không chắc đã có adap-report đợt-11 gửi bằng kênh khác** — chỉ đọc `_index.md` 13 dòng cuối + `ls` `broadcasts/outbox/`, KHÔNG đọc trọn `outbox/ai_infra/`.
4. **Không chắc owner đã trả lời O-2/O-4a sau 07-22** — không đọc WAL/session-log 07-23, 07-24.
5. Con số "roster 17 vai" (dùng để nói bảng cost stale ~2.4×) trích S144, **tôi không đếm lại** hôm nay.
6. Tên file được lệnh ghi ở đầu task (`sub-invest-6-thu-bind-1.md`) ≠ tên ở footer RUN-TRACE (`sub-investigator-codebase-5.md`) — tôi ghi theo lệnh đầu task; em main tự reconcile nếu cần.
