# adap-report — h17-cadence-update-bookend (SE, S124) - **broadcast:** `2026-07-15-Governance-h17-cadence-update-bookend` (type:update, supersedes cadence-scheduler của H24; re-verify CHỈ phần nhịp) - **nấc (G-011):** **agreed / đã-đọc-không-đổi (config single-source)** — KHÔNG `verified` (cadence chưa chạy vòng nào) - **reviewer_gate:** `wf_184f32e2-9da` PASS_WITH_FIXES (F5 fix: nấc verified→agreed applied). ## Hiểu đúng scope - Hub GỠ counter khỏi chính mình, chuyển **bookend** (rà đầy-đủ 2-đầu mỗi phiên). 7 khoản cũ cần soi lại — **5 sai/sai-một-nửa + 2 chỉ đổi-cách-đọc** (3 nhịp · "ở nguồn" 6/15/3 · `>=`/OVERDUE · "đến hạn" trigger [lõi (a) máy-không-tự-bắn VẪN ĐỨNG] · "delta run-2" · self-check `>=` [idempotent GIỮ] · "dogfood mốc-0"). - **4 sàn KEEP** (SE giữ đủ): (1) 2 vai soi lead ✓ · (2) 2 detector [title-freshness H24-1 + **carry-age H24-2, ngưỡng KHÔNG thuộc counter**] ✓ · (4) positive-control ✓ · (5) roster-add-3-việc ✓. caveat (b)(d) keep. ## Trạng-thái SE — làm ĐÚNG (§6.1) - SE đặt 6/15/3 vào `memory-budget.json h24_cadence` (config) + detector đọc key + doc trỏ-canonical KHÔNG chép ⇒ **§6.1 "bạn không phải làm gì cả"**; chỉ biết ví-dụ "6/15/3 tương-tự-Hub" **nay CŨ** (hub bỏ counter). - 🔴 **nấc = agreed, KHÔNG verified** (reviewer F5): cadence SE **chưa chạy vòng nào** (`.session-counter last_audit=0`, 2 vai chưa chạy, counter=3 nhịp-đầu ~S127); mark `…15-32-23` caveat + `_owner_ratified` "nobody may sell proven-effective; re-tune after cycle-2; hub đừng chép". ## Owner-decision surface (KHÔNG apply) - **Giữ counter (em ĐỀ-XUẤT) hay theo hub chuyển bookend?** §4 giới-hạn 1: "đừng gỡ theo hub" trừ khi (i) phiên ngắn-nhiều + (ii) owner trả-mọi-lượt. Lý-do keep (reviewer F7, đổi từ "phiên dài" yếu): **§6.4 default-valid + vai n=0 (chưa data để bỏ) + owner-cost-decision**. Hub replacement = n=0 (chưa hơn). → default = giữ, chờ anh. ## §5 API-key close + skip - Hub đóng Anthropic API key vĩnh-viễn (kinh-phí). SE check: **0 mục "chờ khóa" blocker** — RAG re-index = VOYAGE key (≠ Anthropic, AI_INFRA-op); MFE judge-layer = cross-session-judge-gated (≠ API-key-gated). Token-số hub báo = ước-tính (đọc dải, khớp do-token broadcast). - `held_clause_DO_NOT_PUBLISH` frontmatter = **hub-internal** (contextual_retrieval W-F held) → **SE IGNORE**. - 0 prod-code, 0 mig, 0 change cơ-chế. ## Re-verify nhịp S127-S128 (published 85bf89ca — đợt 16-07) > Đợt adap 16-07 chấm lại trên bản **published** (content_sha256 `85bf89ca…`; supersede-scope CHỈ điểm nhịp). Idempotent-update theo `adap-report.md:33` — mục này **chỉ THÊM**, GIỮ nguyên toàn-bộ phần trên (đặc-biệt dòng 8 wave-1 đã đính-chính thành "5 sai/sai-một-nửa + 2 chỉ đổi-cách-đọc"). **Nấc mục này: `executed`** — trừ đúng một phần owner-gated ghi rõ ở (3). **(1) Bốn điểm sàn — nguyên vẹn, pre-agree từ S124 vẫn đứng.** Bản published §3 KHÔNG đụng 4 sàn; SE đã adopt ở bản gốc (dòng 9 "4 sàn KEEP") nên **để nguyên, 0 re-adopt**: - (1) hai vai soi lead (soi STALE + soi MISSING) — nguồn còn *tăng* tần-suất rà-sâu; lý-lẽ "lead = node không ai soi" không lung-lay. - (2) hai detector máy (độ-tươi-tiêu-đề H24-1 + tuổi-carry H24-2) — 🔴 ngưỡng tuổi-carry **KHÔNG thuộc bộ-đếm nhịp**; gỡ nhịp mà gỡ nhầm nó = giết chính detector (§3 bản published cảnh-báo). - (4) positive-control sống khi build detector. - (5) kết-nạp vai mới = ba việc cùng lúc. - Hai lớp caveat **(b)** (mắt-người cho carry đã rớt khỏi khối) + **(d)** (flag tăng khi thêm detector-class): **giữ nguyên**. **(2) Counter — GIỮ, KHÔNG gỡ theo hub.** Bản published §4 giới-hạn 1: hub chỉ gỡ bộ-đếm khi (i) một-phiên-mỗi-ngày + (ii) owner trả-mọi-lượt; mặc-định hợp-lệ = **giữ nguyên**. Cả hai điều-kiện **KHÔNG áp SE** — bằng-chứng đĩa `.claude/governance/.session-counter.json:13-20`: `counter=6` (:13), `last_ticked_session S127` / `last_ticked_at 2026-07-16` (:14,:16), `last_audit light/deep @counter=3` (:18-19 — chạy S124 / 2026-07-15). Tức **counter tick 3 → 6 chỉ trong 07-15 → 07-16 (2 ngày)** = phiên **ngắn-nhiều**, đúng cái ca mà §4 dặn "đừng gỡ theo hub". Bộ-đếm còn phanh idempotent content-addressed (tick keyed theo HEAD-sha, `_contract.tick`) nên số lùi = fail-loud — không lý-do kỹ-thuật để bỏ. **(3) Hai citation stale — đã xử.** - `.claude/commands/session-start.md:206` — **re-tuned XONG ở wave-1 [E5]**: neo đổi sang "chu-kỳ-2 **CỦA SE**" (deep-audit lần 2, đọc `.session-counter.json last_audit`), ghi rõ "hub đã GỠ counter (bookend 07-15, sha 85bf89ca) → ví-dụ 6/15/3 'ở nguồn' = lịch-sử, delta hub hứa từ run-2 KHÔNG BAO GIỜ có". Vế đầu (SE cố-ý chọn 6/15/3 làm điểm khởi-đầu) giữ nguyên. - `.claude/agent-memory/memory-budget.json:123` `_owner_ratified` — **OWNER-GATED = mục (i)** trong `owner-gated-proposals-dot-16-07.md`, **CHỜ ANH**: vẫn còn neo "tuong tu Hub" + "delta only from run-2 / n=1 mocc-0" (số 6/15/3 **GIỮ**, chỉ đổi CÂU NEO). 🔴 **F10:** anh đổi wording (i) ⇒ **re-sync `session-start.md:206` cùng lượt** — hai chỗ kể cùng một câu chuyện neo, đổi lệch pha = tái-drift. **(4) STAGE-2 — `_index` move 6 file inbox root → `inbox/ai_infra/` (F4 · future-claim guard lớp S108).** Bước này **ĐÃ THỰC-THI ở wave-3** (sau khi 5 reports + email hub xong — reports đọc file gốc ở root nên dời sau; F4 future-claim guard thoả: dòng này được update SAU khi bước dời-file chạy xong, không khai trước). **Evidence:** 6 file đích-danh `git mv` `inbox/` → `inbox/ai_infra/`; `Get-FileHash` (SHA256) từng file **trước == sau move khớp 6/6** (byte-preserve — cùng loại hash, KHÔNG so với cột sha `_index` vốn là body-sha canonical → tránh false-tamper); root còn đúng **`README.md`** (`(Get-ChildItem broadcasts\inbox\*.md -File).Count` = 1, F1); `_index` 6 row INBOUND flip `pending`→`processed` + `(root)`→`ai_infra` (cột sha GIỮ nguyên). Idempotent theo `adap-report.md:33`. **Evidence tổng mục này:** `.session-counter.json:13-20` (counter 3→6 / 2 ngày) · `session-start.md:206` (E5 wave-1 — đã re-tune) · `memory-budget.json:123` (owner-gated, cố-ý CHƯA đổi) · bản published §3/§4/§6. **Honest-caveat:** nấc `executed` **KHÔNG phải `verified`** — nhịp SE **chưa chạy trọn chu-kỳ-2** (`.session-counter last_audit=3`; deep kế ~counter 18), citation (i) còn treo (owner-gate); STAGE-2 move đã xong wave-3 (mục (4)). Không tự-nâng `verified` (AI_INFRA `/adap-audit` chấm cross-repo).