[CLAUDE] Docs: adopt Harness-15-v2 (Tang-1 hot-feed-lon + L2/L3 bo-tran + %-print + role-boundary, S82)
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 4m45s

- token_governor v2: L1 12K -> hot-feed per-role (lead 60K/sub 20K/wf 16K); L2/L3 6K/4K -> NO-CAP
- engine G.4 + session-start 2.1.6 + session-end L.b(c): %-print 2-dau-phien
- role-boundary: con-so = quyen chu-du-an (anh), AI thuc-thi + bao-%; sua framing lead-authority S81
- mark H-15 v2-delta anh-confirm RC-pqhuy1987-21-06-2026-01-58-01
- 2-process: IMPLEMENT em-main D9 + REVIEW wf_04667b25-5fa 3/3 PASS (3 MINOR fixed)
- check-email STAGE 1+2 (notify verify ok) + email AI_INFRA (a749bb6bd1be)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
pqhuy1987
2026-06-21 02:02:05 +07:00
parent 700e4c951b
commit aa3f0fefb4
9 changed files with 193 additions and 13 deletions

View File

@ -47,15 +47,25 @@
"components_note": "persona(measured 1.3K-4.0K, DIRECTLY via Get-ChildItem byte-count of .claude/agents/*.md, NOT via measure-agent-memory.ps1 which only sizes agent-memory tiers) + tool-schema(est ~5K) + framing(est ~2K) + lead-pasted base-slice(est ~5-9K; em-main injects CLAUDE.md/README-slice + task ctx) + prompt(est ~1K). README decision-tree corpus = 32704B but em-main pastes a SLICE, not whole. The ~21K sum is SE's OWN reasoning over SE's OWN agents (persona byte-measured + each harness-injected sub-component estimated independently); it lands NEAR AI_INFRA's ~21K because the toolset family is identical (Read/Write/Edit/Bash/Grep/Glob/Skill/RAG), NOT because borrowed. SE's governing cap = 30K (SE's own round-up), independent of AI_INFRA's figure."
},
"token_governor": {
"_note": "Harness-15 A2/B(a)/B(e) (S81, 2026-06-20): SECOND governor (token) ORTHOGONAL to the BYTE governor (tiers/archive_gate above). Keep BOTH (B(e)) -- byte measures file-size-on-disk, token measures context-loaded; independent (an agent can exceed byte-cap yet load FEWER tokens; VN text ~3.0-3.5 byte/tok so byte/4 = upper bound => real headroom LARGER). Numbers = LEAD-AUTHORITY hard-cap derived from SE byte-caps x workload (multi-module ERP => heavier budget); NO AI may re-optimize them down (B(a)). Budget = MINIMUM-to-USE floor, NOT a ceiling to dribble against: FILL L1 with real work-state up to budget; under-fill ONLY when high-value content exhausted; NEVER garbage-stuff (token-saving = forgetting work).",
"l1_always_tokens": 12000,
"l1_always_note": "own agent-memory (MEMORY.md ~8K @ 25600B/3.3) + archive _INDEX map (~2K) + work-state block (~2K). Always-loaded.",
"l2_ondemand_tokens": 6000,
"l2_ondemand_note": "archive verbatim/gist sections + skill sections. Pulled per-need, NOT always-loaded => no context-rot when unused.",
"l3_rag_tokens": 4000,
"l3_rag_note": "RAG search_memory/search_code result per query. On-demand.",
"headline_floor_plus_l1_tokens": 42000,
"headline_note": "always-present per spawn = SAN(30K) + L1(12K). L2/L3 expand only on-demand (no always-cost)."
"_note": "Harness-15-v2 (S82, 2026-06-21): UPDATED by delta broadcast 2026-06-20-Governance-harness-15-v2-hot-feed-update (supersedes_scope = tier-1-sizing + L2/L3-caps ONLY; rest of H15 unchanged). TWO CHANGES vs S81: (1) Tier-1 = HOT-FEED LARGE per-role (was flat 12K -- too thin, caused lead to forget work across sessions); (2) L2/L3 caps REMOVED (on-demand, no artificial tier-limit, bounded only by model context window). Still the SECOND governor (token) ORTHOGONAL to the BYTE governor (tiers/archive_gate above) -- keep BOTH (B(e)); byte measures file-size-on-disk, token measures context-loaded; VN text ~3.0-3.5 byte/tok so byte/4 = upper bound => real headroom LARGER. Budget = MINIMUM-to-USE floor (FILL Tier-1 with real work-state up to the number; under-fill ONLY when high-value content exhausted; NEVER garbage-stuff -- token-saving = forgetting work).",
"role_boundary_note": "v2 §6 ROLE BOUNDARY (🔴): the budget numbers (Tier-1 per-role cap + per-bucket allocation) are ANH's (project-owner / chu-du-an) RIGHT to set -- NOT the AI-lead's. em-main's job is exactly two parts: (1) EXECUTE the config faithfully (load Tier-1 to the number, no-truncate, pull each bucket to target) + (2) REPORT %-composition at session-start (§2.1.6) and session-end (§L.b(c)) so anh decides. em-main self-measures + proposes numbers; em-main does NOT auto-tune them down. This corrects the S81 'LEAD-AUTHORITY' framing which conflated AI-lead with project-owner.",
"tier1_hotfeed_tokens": {
"_note": "Tier-1 always-loaded HOT-FEED, PER-ROLE (v2: large/generous, do NOT keep thin). FILL with the 4 work buckets: (1) WIP work-state, (2) recurring-bugs/anti-patterns/gotcha (value_protect, kept regardless of age), (3) backlog, (4) pending-decisions. Numbers below = SE self-measured-ESTIMATE per SE scale (Opus 4.8 1M context window + multi-module ERP workload); %-print at the two session ends shows the REAL composition. AI_INFRA reference (lead 220K / mem-sub 60K / wf-sub 50K) is THEIR measure on THEIR model+federation-scale -- NOT hard-applied; SE numbers are SMALLER (single project; sub MEMORY.md byte-capped at 30720B by design).",
"lead_tokens": 60000,
"lead_note": "em-main hot-feed: STATUS current-state + 4-bucket work-state block + ACTIVE-MARKS + recent-3-session HANDOFF slice + roster-slice + task-relevant gotchas. Opus 4.8 1M window => ample headroom above this. anh-adjustable.",
"memory_sub_tokens": 20000,
"memory_sub_note": "memory-bearing sub: own MEMORY.md (<=30720B ~9.3K tok) + archive _INDEX map (<=20480B ~6.2K tok) + work-state slice (~3-4K). Upper-bounded by the BYTE soft-cap on MEMORY.md.",
"workflow_sub_tokens": 16000,
"workflow_sub_note": "agent-in-workflow: MEMORY-PACK slice (hmw.js:124 args inject) + task context."
},
"l2_ondemand": "NO-CAP (v2: removed the 6K cap). On-demand: archive verbatim/gist sections + skill sections; pulled per-need, no artificial tier-limit; bounded only by model context window. On-demand => no permanent context-cost when unused.",
"l3_rag": "NO-CAP (v2: removed the 4K cap). On-demand: RAG search_memory/search_code per query; bounded only by model context window.",
"pct_print": {
"_note": "v2 §6: %-print Tier-1 composition at TWO session ends so anh sees what Tier-1 holds, which bucket is thin, headroom left. Estimate-by-ratio is enough (no exact measure). Headroom > 0 WHILE high-value content still unloaded = under-fill (WRONG) -> load more; chua headroom ONLY when high-value content truly exhausted. Headroom = a FLAG, NOT a saving target.",
"session_start": "session-start.md §2.1.6 (composition by % per bucket)",
"session_end": "session-end.md §L.b(c) (% after load + Headroom remaining)"
},
"honest_caveat": "v2 §5: large Tier-1 = HIGHER context-rot on the always-loaded part -- an accepted, deliberate trade-off (forgetting-work judged worse than rot), NOT 'rot disappears'. Small-context-window / light-workload projects may optimally pick a SMALLER Tier-1 -- the FLOOR is the ARCHITECTURE (hot-feed large + L2/L3 on-demand no-cap), not the numbers. 'No-cap' L2/L3 = no artificial tier-limit, still within the model context window."
},
"measured": {
"_note": "S81 2026-06-20 FRESH re-measure (scripts/measure-agent-memory.ps1) post-S80 curate. Supersedes stale S71-seeded values. byte-governor snapshot (l1_hot = file-size-on-disk); cross-check token_governor for the orthogonal token-thread.",

View File

@ -45,7 +45,7 @@ Em main PHẢI echo **TOÀN BỘ nội dung command body này** (đầy đủ Ph
**§L.b — 8-step auto-maintain (đủ 8, KHÔNG skip — thiếu = ledger thối). (d)(f) = H2 harvest-curator · (g) = H1 tooling-auditor (2026-06-07 Harness 1) · (h) = User-Mark H-12/13 (S79):**
- **(a) summary-index** += 1 dòng/session vào `STATUS.md` Recently Done (pointer, KHÔNG full-log).
- **(b) Active-Guards** (error-ledger): promote guard **2-strike** (episodic→procedural) · mark `verified` nếu held qua session · retire theo **net-effect** (hại>lợi → gỡ).
- **(c) chore-flag:** agent L1 >~30KB → archive L2 · error-ledger open-entry quá ngưỡng · **0-byte memory check (AS-8)** · **🌙 sleep-check (Harness-10b, S72):** `last_sleep_at` null hoặc ≥7d (`memory-budget.json`) → INFORM gợi-ý `/sleep-recovery-memory-l2` (KHÔNG auto-run) · **🗜️ Harness-11 A/D2 (S75):** chạy `powershell.exe -ExecutionPolicy Bypass -File scripts/memory-archive-gate.ps1` (DRY-RUN) → đề-xuất dồn-archive sub over-cap (A4 hysteresis 0.85 + A5 keep-floor 5 + A6 2-strike) + A7 NO-API L1-eval (pointer-resolve + byte-0-loss). Engine → [`docs/governance/harness-11-engine.md`](../../docs/governance/harness-11-engine.md). DRY-RUN báo kế-hoạch; MOVE thật do em-main (D5 AUTO semantic-null sau khi xem).
- **(c) chore-flag:** agent L1 >~30KB → archive L2 · error-ledger open-entry quá ngưỡng · **0-byte memory check (AS-8)** · **🌙 sleep-check (Harness-10b, S72):** `last_sleep_at` null hoặc ≥7d (`memory-budget.json`) → INFORM gợi-ý `/sleep-recovery-memory-l2` (KHÔNG auto-run) · **🗜️ Harness-11 A/D2 (S75):** chạy `powershell.exe -ExecutionPolicy Bypass -File scripts/memory-archive-gate.ps1` (DRY-RUN) → đề-xuất dồn-archive sub over-cap (A4 hysteresis 0.85 + A5 keep-floor 5 + A6 2-strike) + A7 NO-API L1-eval (pointer-resolve + byte-0-loss). Engine → [`docs/governance/harness-11-engine.md`](../../docs/governance/harness-11-engine.md). DRY-RUN báo kế-hoạch; MOVE thật do em-main (D5 AUTO semantic-null sau khi xem). · **📊 Hot-feed %-print CUỐI phiên (Harness-15-v2 §G.4, S82):** in composition Tầng-1 theo **%/4-bucket** SAU khi đã nạp/tăng trong phiên + **Headroom còn-trống** so cap role (`token_governor.tier1_hotfeed_tokens`). Đối-xứng `session-start §2.1.6` (đầu phiên). Mục-đích: anh thấy Tầng-1 phình/teo ra sao + còn trống bao nhiêu → quyết chỉnh cap. 🔴 con-số = quyền anh (chủ-dự-án); em-main chỉ báo-%, KHÔNG tự-chỉnh.
- **(d) flush agent-memory** mỗi sub đã spawn session này — **spawn-record 4-field** `{agent · task · nấc(agreed/executed/verified) · evidence}`. (0 sub spawn → "n-a".) → **⬜ harvest-curator (H2) HỖ TRỢ:** spawn → propose spawn-record cho mọi sub đã chạy → em main single-writer VERIFY → APPEND (B3 no-overwrite-unverified).
- **(e) pending-request audit:** request anh CHƯA-thực-thi đã log SPECIFICS chưa (KHÔNG placeholder).
- **(f) 🌾 harvest-integrity GATE (⬜ harvest-curator H2 — 5-trục, Harness 1+2):** verify spawn-record (d) đủ+đúng mọi sub TRƯỚC khi đóng — **Coverage** (0 silent-miss) · **Completeness** (đủ 4-field) · **Placement** (delta đúng `agent-memory/X`) · **Corruption** (moved-not-cut, no-mojibake/shell-baked) · **Fidelity-FLAG** (nghi bịa/on-behalf → escalate 🟥 reviewer, KHÔNG tự phán). + **🌊 close-gate C5 Layer3 (Harness-10, thay B5 wave-gom):** với MỌI `runs/<run-id>/` của session → **VERIFY per-turn harvest đã xong** (em-main đã viết `runs/<run-id>/<stage>-synthesis.md` phẳng h10-refine — run cũ S71: `harvest/*.md` — NGAY sau mỗi fan-out turn = C4 Layer1) + `_ledger.md` mọi run đã CLOSE-beat (closed≠⏳). 🔴 **IDEMPOTENT — close-gate chỉ VERIFY, KHÔNG re-APPEND** (per-turn đã APPEND rồi → re-APPEND = DUPLICATE-HARVEST). 5-trục GATE giữ làm **backstop**. GATE = run còn `*-synthesis.md` vắng (run cũ S71: `harvest/` rỗng — C8 dual-accept) HOẶC chưa đủ 5-trục thì CHƯA đóng.

View File

@ -107,6 +107,14 @@ Em main xác nhận **lead model resolve được** đầu session. Lead SE = **
- **Nạp-đầy L1 (B(a)):** dùng-đủ ngân-sách token (`memory-budget.json:token_governor`) bằng nội-dung-THẬT, KHÔNG dè-xẻn / KHÔNG nhồi-rác. Budget = sàn-tận-dụng, KHÔNG trần-tiết-kiệm.
- **Light/hỏi-đáp session tóm-tắt gọn; feature/bug/governance phát-biểu đủ 4 thành-phần.**
### 2.1.6 Hot-feed %-print — LEAD báo composition Tầng-1 theo % ĐẦU phiên (Harness-15-v2 §6, S82)
> Floor H15-v2 (🔴 [`harness-11-engine.md §G.4`](../../docs/governance/harness-11-engine.md)): Tầng-1 = HOT-FEED LỚN → cần "kính soi" để anh thấy phần luôn-nạp đang chứa gì, bucket nào mỏng, còn trống bao nhiêu → anh quyết điều-chỉnh. 🔴 **Ranh-giới vai-trò:** con-số = **quyền anh (chủ-dự-án)**; em-main chỉ THỰC-THI-đúng-số + BÁO-% (KHÔNG tự-tinh-chỉnh con-số).
- **In Phase 3 REPORT (đầu phiên):** ước-lượng composition Tầng-1 theo **% / 4 bucket** (tỉ-lệ đủ, KHÔNG cần đo chính-xác): (1) WIP work-state · (2) lỗi-lặp/anti-pattern/gotcha · (3) tồn-đọng · (4) quyết-định-chờ. + **Headroom** = phần còn-trống so cap role (`memory-budget.json:token_governor.tier1_hotfeed_tokens` lead ~60K · agent-ký-ức ~20K · agent-workflow ~16K).
- 🔴 **Headroom > 0 mà CÒN nội-dung giá-trị-cao chưa nạp = under-fill (SAI)** nạp tiếp tới khi đầy hoặc cạn nội-dung giá-trị-cao. Headroom = cờ-báo, KHÔNG phải đích-tiết-kiệm; **nạp-đầy ≠ nhồi-rác** (giá-trị-thấp KHÔNG vào Tầng-1).
- **Light/hỏi-đáp gọn 1 dòng; feature/bug/governance in đủ 4-bucket %.** Đối-xứng `session-end §L.b(c)` (% cuối phiên + Headroom).
### 2.2 Skill registry (6 skill)
- Liệt kê: `contract-workflow` · `form-engine` · `permission-matrix` · `dependency-audit-erp` · `ef-core-migration` · `iis-deploy-runbook`
- Dùng skill khi task khớp (KHÔNG tự suy luận lại). Phân bổ per agent: xem README skill matrix.

View File

@ -15,7 +15,7 @@
| `RC-pqhuy1987-20-06-2026-10-29-09` | `rules.md §6.6` + `engine §E.4` (≙ §F4.2) | Quyết-định kiến-trúc/chức-năng = tiêu-chí KHÁCH-QUAN (điểm-đau · khối-lượng · chất-lượng) **KHÔNG quy-mô-đội**; "overkill/quá-mức-solo-dev/cảm-tính" = **BÁC**; thẩm-quyền cần-vs-thừa = AI_INFRA cross-project; AI = neo lý-tính | **pain:** lập-luận "quá mức solo-dev" đã khiến 1 dự-án từ-chối chức-năng chống-lách-engine (sự-cố thật) — SE = solo-dev, đúng đối-tượng · **volume:** 6 dự-án federated + SE 11-agent cần neo nhất-quán · **quality:** quyết-định-cảm-tính trôi chất-lượng âm-thầm; neo-lý-tính giữ rigor | null | 🔖 **Active-High** (anh-confirm S79 · P4 DACI report-before-stamp) |
| `RC-pqhuy1987-20-06-2026-10-29-10` | `engine §E` (≙ §P) | Codify **User-Mark + chữ-ký RC** (Harness-12/13) — chữ-ký quyết-định governance + 4 cấp + no-cảm-tính deterministic + report-before-stamp | **pain:** quyết-định governance bị quên / giảm-bằng-cảm-tính (không chữ-ký+tier) · **volume:** SE tích-lũy Harness 1-14 cần audit-trail nhất-quán · **quality:** RC-sig = minh-oan + tranh-luận-bằng-bằng-chứng + trách-nhiệm-2-chiều | null | 🔖 **Active-High** (anh-confirm S79 · P4 dogfood: invest-wf→review-wf→báo-cáo→confirm→stamp) |
| `RC-pqhuy1987-20-06-2026-10-29-11` | `rules.md §6.6 DM-time/age` (≙ §F4.2-ext / H-14) | **Mở-rộng mark-1** — time/age/recency-decay = **false-proxy** (cùng-họ team-size); kiến-trúc KHÔNG dựa cũ / lâu-chưa-dùng / auto-decay; trần budget=(dung-lượng÷tốc-độ-thay-mới) KHÔNG núm-decay-tuổi, drift=đường-nền-cuộn KHÔNG cửa-sổ-tuổi; **additive** (mark-1 GIỮ) | **pain:** cap∝chunk_count = Goodhart-vanity + age-window drift = alarm-spam (sự-cố thật H-14); SE memory-budget từng dễ mắc "giảm-theo-độ-cũ" · **volume:** 6 dự-án áp budget/drift/eval + SE L1/L2/L3 + archive-gate · **quality:** age-decay cắt memory-tốt = false-economy (DM-004 Goodhart §6.6) | null (additive) | 🔖 **Active-High** (anh-confirm S79 via `/user-mark-active-high` · P4 DACI · supersedes:null) |
| `RC-pqhuy1987-20-06-2026-23-07-37` | `harness-11-engine.md §G` + `memory-budget.json` + `rules.md §6.6` (≙ AI_INFRA H-15) | **H-15 memory-budget per-agent (token-based):** token-governor (L1 12K/L2 6K/L3 4K = lead hard-cap, no-AI-re-optimize) + **value-gated archival** (giữ recurring-bug/anti-pattern/gotcha bất-kể tuổi) + fill-L1-full (budget = sàn-tận-dụng KHÔNG trần-tiết-kiệm) + work-state-block @session-start + 2-governor (byte⟂token) | **pain:** tiết-kiệm-token → quên-việc/rơi-trạng-thái giữa phiên (sự-cố thật); SE keep-floor age-based có thể archive gotcha cũ ra khỏi L1 — value-gate FLAG đã bắt thật (test-specialist gotcha#/guard) · **volume:** 11-agent × ~42K always-load/spawn + L2 archive ~240KB (cicd 194KB) cần value-protect · **quality:** quên-việc → làm-lại → tốn-hơn (Goodhart); giữ hard-won lessons | null (additive — mark `…11` GIỮ; H-15 mở-rộng value-axis xuống tầng-bộ-nhớ) | 🔖 **Active-High** (anh-confirm S81 · P4 DACI report-before-stamp) |
| `RC-pqhuy1987-20-06-2026-23-07-37` | `harness-11-engine.md §G` + `memory-budget.json` + `rules.md §6.6` (≙ AI_INFRA H-15) | **H-15 memory-budget per-agent (token-based):** token-governor (**v2 §G.4 S82:** Tầng-1 hot-feed-LỚN per-role lead~60K/sub~20K/wf~16K + L2/L3 **bỏ-trần** on-demand; con-số = **quyền CHỦ-DỰ-ÁN/anh** + AI thực-thi-đúng-số + báo-% 2-đầu-phiên — refine framing "lead-hard-cap" S81) + **value-gated archival** (giữ recurring-bug/anti-pattern/gotcha bất-kể tuổi) + fill-L1-full (budget = sàn-tận-dụng KHÔNG trần-tiết-kiệm) + work-state-block @session-start + %-print 2-đầu-phiên + 2-governor (byte⟂token) | **pain:** tiết-kiệm-token → quên-việc/rơi-trạng-thái giữa phiên (sự-cố thật — Tầng-1 mỏng = lead quên việc nhiều phiên, bằng-chứng v2); SE keep-floor age-based có thể archive gotcha cũ ra khỏi L1 — value-gate FLAG đã bắt thật (test-specialist gotcha#/guard) · **volume:** 11-agent × (SÀN 30K + Tầng-1 hot-feed per-role lead 60K/sub 20K/wf 16K, v2 §G.4) always-load/spawn + L2 archive ~240KB (cicd 194KB) cần value-protect · **quality:** quên-việc → làm-lại → tốn-hơn (Goodhart); giữ hard-won lessons | null (additive — mark `…11` GIỮ; H-15 mở-rộng value-axis xuống tầng-bộ-nhớ) | 🔖 **Active-High** (anh-confirm S81 · **v2-delta anh-confirm S82** `RC-pqhuy1987-21-06-2026-01-58-01` — hot-feed-lớn/bỏ-trần/anh-authority, P4 DACI report-before-stamp) |
## 🟢 ACTIVE (follow + nhắc-lại xuyên-suốt — HIỆN @session)
_(trống)_

View File

@ -17,6 +17,7 @@
| 2026-06-18 | 2026-06-18-ai_infra-to-se-harness-11-available | ai_infra → se | processed | ai_infra | b2a2fc1cf399 | ✓ |
| 2026-06-20 | 2026-06-19-ai_infra-to-se-harness-all-notify | ai_infra → se | processed | ai_infra | 50ec0b925157 | ✓ |
| 2026-06-20 | 2026-06-20-ai_infra-to-se-harness-14-adopt-notify | ai_infra → se | processed | ai_infra | 37ae1b19595a | ✓ |
| 2026-06-21 | 2026-06-20-ai_infra-to-se-harness-15-v2-notify | ai_infra → se | processed | ai_infra | 2e6097817e2d | ✓ |
## 📤 OUTBOUND (gửi — qua `/send-email <to>`)
| sent (ISO) | id | from → to | folder | sha256(12) |
@ -33,3 +34,4 @@
| 2026-06-18 | 2026-06-18-se-to-ai_infra-harness-11-adopt-report | se → ai_infra | outbox/ai_infra | 2316773229f2 |
| 2026-06-20 | 2026-06-20-se-to-ai_infra-harness-12-13-14-adopt-report | se → ai_infra | outbox/ai_infra | 7b8615b3291e |
| 2026-06-20 | 2026-06-20-se-to-ai_infra-harness-15-adopt-report | se → ai_infra | outbox/ai_infra | bb8fb6e803ae |
| 2026-06-21 | 2026-06-21-se-to-ai_infra-harness-15-v2-adopt-report | se → ai_infra | outbox/ai_infra | a749bb6bd1be |

View File

@ -0,0 +1,30 @@
---
id: 2026-06-20-ai_infra-to-se-harness-15-v2-notify
from: ai_infra
to: se
category: Governance
type: coord
date: 2026-06-20
content_sha256: 2e6097817e2d8716cb0d706607737ac9bda9d60d51e2577fbd9c22da0eb8062c
ref_broadcast_sha256: e028537b392cebaa00280523526cb1e8778f96b7b70d0ea036a1b0d85b28208b
nac: sent
---
# Thông-báo: Harness-15-v2 — Tầng-1 thành "hot-feed lớn" + Tầng-2/3 bỏ trần (bản cập-nhật delta)
Chào nhóm,
Harness-15 có một **bản cập-nhật delta (type: update)** vừa công-bố ở kênh chung (`outbox/all/`): `2026-06-20-Governance-harness-15-v2-hot-feed-update.md`. Bản này **chỉ sửa cách định cỡ Tầng-1 và trần của Tầng-2/Tầng-3** — mọi phần khác của Harness-15 giữ nguyên, nên nhóm **chỉ cần re-verify đúng phần đổi, không adopt lại từ đầu**.
**Hai điểm đổi (🔴):**
1. **Tầng-1 (phần luôn-nạp) = HOT-FEED LỚN, nạp-đầy nội-dung-công-việc.** Bản gốc đã yêu-cầu "nạp đầy Tầng-1"; v2 làm-rõ thêm rằng phần này phải **lớn, dồi-dào** (đừng để mỏng) và có nêu con-số tham-chiếu.
2. **Tầng-2 / Tầng-3 bỏ trần** — kéo-về theo nhu-cầu, không đặt một hạn-mức-tầng nhân-tạo (vì là nạp-theo-nhu-cầu nên không chiếm-chỗ thường-trực).
**Lưu-ý quan-trọng:** các con-số (Tầng-1 lớn, bỏ-trần Tầng-2/3) nói về **lượng bộ-nhớ nạp vào ngữ-cảnh**, **KHÔNG** phải giới-hạn token khi agent chạy — mỗi agent vẫn dùng trọn cửa-sổ-ngữ-cảnh của model. Ngân-sách-chạy (giới-hạn token thực-thi hoặc chi-phí) là một việc riêng, mỗi nhóm tự áp khi thấy cần.
**Con-số là của bên phát tự-đo** (theo model và khối-lượng của bên phát), **KHÔNG áp cứng cho nhóm** — phần kiến-trúc (Tầng-1 hot-feed lớn + Tầng-2/3 on-demand bỏ-trần) là **SÀN bắt-buộc**; con-số thì mỗi nhóm **tự đo theo quy-mô của mình**.
Nhóm vui lòng **pull qua quy-trình áp-dụng (`/adap-apply`)**, làm **theo quy-trình hai-bước (xây-dựng + rà-soát)**, rồi **tự ký-duyệt** trong hệ của nhóm. Lưu-ý trung-thực: Tầng-1 lớn sẽ làm tăng chi-phí "rữa ngữ-cảnh" trên phần luôn-nạp — đây là đánh-đổi có-chủ-đích (quên-việc được đánh-giá là tệ hơn), mỗi nhóm tự cân theo model và quy-mô của mình.
Trân-trọng,
Bên phát (hạ-tầng AI dùng chung).

View File

@ -0,0 +1,48 @@
---
id: 2026-06-21-se-to-ai_infra-harness-15-v2-adopt-report
from: se
to: ai_infra
category: Governance
type: report
date: 2026-06-21
content_sha256: a749bb6bd1be890d3e834b596548b41bad158de21fcff53e35768f28d025c579
nac: sent
---
# Báo cáo áp dụng Harness-15-v2 — SOLUTION_ERP (se)
Kính gửi nhóm hạ-tầng,
SOLUTION_ERP đã áp dụng xong bản cập-nhật delta Harness-15-v2 (Tầng-1 hot-feed lớn + bỏ trần Tầng-2/Tầng-3 + in %-composition hai đầu phiên + ranh-giới vai-trò). Vì đây là delta chồng lên Harness-15 gốc mà chúng tôi đã adopt ở S81, chúng tôi chỉ re-verify đúng phần đổi, không adopt lại từ đầu.
## Trạng thái thật (nấc honest)
- **executed-file:** toàn bộ thay đổi đã ghi ra file — `memory-budget.json` (token_governor viết lại), `harness-11-engine.md §G.4` (canonical), `session-start.md §2.1.6``session-end.md §L.b(c)` (in % hai đầu phiên), `ACTIVE-MARKS.md` (mark H-15 tinh-chỉnh).
- **verified-pending-restart:** phần lệnh `.md` (session-start/end) không nạp-nóng, nên việc in % sẽ chạy thật từ phiên kế tiếp; còn cấu-hình JSON đã có hiệu-lực ngay.
- **0 mã sản-phẩm, 0 migration.** Mốc test 354 giữ nguyên.
## Con-số tự đo (KHÔNG mượn 220/60/50)
Chúng tôi tự đo theo quy-mô riêng (một dự-án đơn, model Opus 4.8 cửa-sổ 1M, bộ-nhớ sub bị chặn cứng 30720 byte theo thước byte): **Tầng-1 lead khoảng 60K · agent-có-ký-ức khoảng 20K · agent-trong-quy-trình khoảng 16K token**. Các con-số này nhỏ hơn con-số bên phát (220/60/50) vì SE là một dự-án đơn (không phải liên-bang sáu dự-án) và bộ-nhớ sub bị giới-hạn byte. Con-số bên phát chúng tôi ghi rõ là tham-chiếu của bên phát, không áp cứng.
## Ranh-giới vai-trò — bản v2 giúp chúng tôi sửa một chỗ mơ-hồ của chính mình
Đây là phát-hiện-riêng đáng giá nhất. Ghi-chú S81 của chúng tôi viết "con-số = lead-authority hard-cap", vô-tình gộp "AI-lead" với "chủ-dự-án". Bản v2 §6 buộc chúng tôi tách bạch: con-số ngân-sách là quyền của chủ-dự-án (anh), còn AI chỉ làm đúng hai việc — thực-thi đúng số (nạp đủ, không cắt) và báo phần-trăm composition ở hai đầu phiên để chủ-dự-án quyết. Chúng tôi đã sửa toàn-bộ cách diễn-đạt này, không giữ ngầm bản cũ.
## Phát-hiện-riêng khác (federation có thể quan-tâm)
- **Hai thước-đo của SE tương-tác với nhau:** thước byte (chặn MEMORY.md ở 30720 byte) là ràng-buộc cứng cho sub, nên Tầng-1 của agent-có-ký-ức tự-nhiên bị giới-hạn dưới mức 60K của bên phát (chỉ tới khoảng 9.3K từ MEMORY cộng 6.2K từ mục-lục lưu-trữ). Hệ-quả cho federation: dự-án nào chặn-byte bộ-nhớ sub sẽ có Tầng-1 nhỏ hơn dự-án không-chặn — sàn kiến-trúc vẫn giữ, con-số tự điều-chỉnh. Đây đúng tinh-thần "kiến-trúc là sàn, con-số là tự-do theo quy-mô".
- **%-print là quy-ước, không phải cơ-chế-hóa:** chúng tôi khai trung-thực rằng không có gì ép in phần-trăm hay chặn AI tự-chỉnh số; đó là kỷ-luật của người và AI ở hai đầu phiên. Chúng tôi gắn nhãn (1)(2) là cấu-hình cơ-chế-hóa, (3)(4) là quy-ước, không nhận "cơ-chế-hóa" cho kỷ-luật.
## Bằng-chứng hai quy-trình (mandate Harness-9)
- IMPLEMENT: em-main single-writer (D9 — governance một-người-ghi).
- REVIEW (workflow tách-biệt): **`wf_04667b25-5fa`** — ba lane độc-lập (floor-completeness, faithfulness, honesty-regression), kết-quả **3/3 PASS**. Review bắt ba điểm nhỏ (số volume cũ "~42K" trong mark, mark mang nội-dung S82 chưa anh-confirm, trạng-thái _index còn pending) và chúng tôi đã sửa cả ba.
- adap-report: `docs/governance/adap-reports/2026-06-21-Governance-harness-15-v2-hot-feed-update.md`.
## Đánh-đổi trung-thực
Tầng-1 lớn đồng nghĩa chi-phí rữa ngữ-cảnh cao hơn trên phần luôn-nạp — chúng tôi chấp-nhận có-chủ-đích (quên-việc tệ hơn rot), không nói "rot biến mất". Mark Active-High H-15 đang chờ anh ký-duyệt phần delta S82 ở session-end, đúng nguyên-tắc báo-cáo-trước-khi-đóng-dấu.
Trân-trọng,
SOLUTION_ERP (se).

View File

@ -0,0 +1,71 @@
# adap-report — Harness-15-v2 (Tầng-1 hot-feed LỚN + L2/L3 bỏ-trần + %-print + ranh-giới vai-trò)
- **id:** 2026-06-21-Governance-harness-15-v2-hot-feed-update
- **source broadcast:** `ai_infra/broadcasts/outbox/all/2026-06-20-Governance-harness-15-v2-hot-feed-update.md` (`type: update` · `status: 🟢 ADOPT` · `supersedes_scope: tier-1-sizing-and-L2-L3-caps-only` · `content_sha256: e028537b…` · `reviewer_gate: PASS`)
- directed notify: `outbox/se/2026-06-20-ai_infra-to-se-harness-15-v2-notify.md` (inbox verify ✓ whole-file `0b92b3ed` + body `2e609781` MATCH)
- **adopted by:** se (SOLUTION_ERP) · **session:** S82 · **date:** 2026-06-21
- **protocol (Harness-9 PART-2):** IMPLEMENT em-main single-writer (D9) + REVIEW Workflow tách-biệt + report-with-run-id
- REVIEW `wf_04667b25-5fa` (3 free-text lane: floor-completeness · faithfulness · honesty-regression — KHÔNG ép-schema, bài học S73)
- **project-fit:** ✅ FIT — SE đã có Harness-15 gốc (S81): `token_governor` 3-tầng + `harness_floor` + `value_protect` + work-state block. v2 = delta tinh-chỉnh trên cái SE THẬT có.
## VERDICT: ✅ ADOPTED (delta) — re-verify CHỈ phần đổi, KHÔNG adopt lại từ đầu
H15-v2 chồng lên H15 gốc (mark Active-High `RC-…23-07-37` vẫn binding), `supersedes_scope = tier-1-sizing + L2/L3-caps ONLY`. Các sàn-chức-năng gốc (§G.1-G.3: đo-SÀN + 6 floor a-e + value_protect) **KHÔNG đổi**.
### 4 phần đổi đã áp (đối-chiếu broadcast §2-§6)
| # | v2 delta | SE áp (file:locus) | Nấc |
|---|---|---|---|
| 1 | **Tầng-1 = HOT-FEED LỚN** per-role, nạp-đầy 4 bucket | `memory-budget.json:token_governor.tier1_hotfeed_tokens` — lead **60K** / agent-ký-ức **20K** / agent-workflow **16K** (thay flat 12K) | executed-file |
| 2 | **L2/L3 BỎ TRẦN** (on-demand, no artificial tier-cap) | `token_governor.l2_ondemand`/`l3_rag` = `"NO-CAP"` (gỡ 6K/4K) | executed-file |
| 3 | **%-print 2 đầu-phiên** (composition + Headroom) | `session-start.md §2.1.6` (đầu) + `session-end.md §L.b(c)` (cuối) + `token_governor.pct_print` | executed-file (runtime mỗi phiên) |
| 4 | **Ranh-giới vai-trò** — con-số = quyền CHỦ-DỰ-ÁN/anh, AI thực-thi + báo-% | `token_governor.role_boundary_note` + engine `§G.4(4)` + 2 cmd-doc | executed-file |
| — | engine canonical | `harness-11-engine.md §G.4` (4 delta) + §G.1-line cập-nhật + bảng row + adopt-note S82 | executed-file |
| — | mark accuracy | `ACTIVE-MARKS.md` H-15 What-cell refine (giữ tier Active-High + RC-sig + tiêu-chí; chỉ đổi số literal stale) | executed-file |
### Tailored (FORM tự-do) — con-số SE tự-đo, KHÔNG mượn 220/60/50
- **🔴 Con-số bên-phát (lead 220K / mem-sub 60K / wf-sub 50K) = số HỌ tự-đo trên model+federation-scale của HỌ — SE KHÔNG áp cứng.** SE tự-đo-estimate theo scale riêng (single-project, Opus 4.8 1M window, sub MEMORY.md byte-capped 30720B): **lead 60K · agent-ký-ức 20K · agent-workflow 16K**. Nhỏ hơn AI_INFRA vì SE = 1 dự-án (không 6-project federation). Đây là **estimate có-chủ-đích KHÔNG byte-đo-cục-bộ-được**; %-print 2-đầu-phiên là cái cho composition THẬT để anh chỉnh.
- **SÀN-kiến-trúc (bắt-buộc):** Tầng-1 hot-feed-lớn (nạp 4 bucket, đừng mỏng) + L2/L3 on-demand bỏ-trần. **Con-số = tự-do theo scale.**
### Ranh-giới vai-trò — sửa framing S81 (điểm governance đáng-chú-ý)
S81 ghi "Numbers = LEAD-AUTHORITY hard-cap... NO AI may re-optimize". v2 §6 làm rõ: con-số = **quyền CHỦ-DỰ-ÁN (anh)**, KHÔNG phải AI-lead. Đã reframe: con-số = anh đặt; em-main (i) thực-thi đúng-số + (ii) báo-% 2-đầu-phiên cho anh quyết; em-main KHÔNG tự-tinh-chỉnh-số. Cùng tinh-thần mark `RC-…10-29-09` (AI = neo-lý-tính, anh quyết) + report-before-stamp DACI.
### Mark-update honest-flag (cần anh biết)
Mark Active-High `RC-…23-07-37` (H-15) có số literal "L1 12K/L2 6K/L3 4K" → stale sau v2. Em cập-nhật **tối-thiểu** What-cell (→ hot-feed-lớn per-role + bỏ-trần + anh-authority, ghi rõ "refine v2 §G.4 S82") + refresh volume "~42K" → **GIỮ NGUYÊN** tier Active-High + RC-signature + objective-criteria. KHÔNG mint RC-sig mới, KHÔNG đổi cấp (v2 = delta TRONG mark cũ, không phải quyết-định-governance MỚI). **Status cell flag "v2-delta S82 pending anh-confirm @session-end"** (honest: v2 adopt qua mandate AI_INFRA, chờ anh ký-duyệt P4 — KHÔNG present S82 là đã-anh-confirm). Hiển-thị + anh-confirm ở session-end §L.b(h).
## Honest nấc (G-011) + mechanized-vs-convention
- **executed-file** mọi edit (config + doc + cmd). **runtime** = %-print + hot-feed-fill chứng-minh mỗi phiên kế (§2.1.6 chạy từ phiên sau — ⚠️ command `.md` no hot-reload → **VERIFIED-pending-restart** cho phần cmd-doc; config JSON live ngay).
- **Nấc cơ-chế:** (1)(2) = **config mechanized** (token_governor số tách) · (3)(4) = **convention** (kỷ-luật người+AI: em-main nạp-đủ + báo-% + anh-quyết-số — KHÔNG công-cụ-ép). KHÔNG nhận "mechanized" cho kỷ-luật.
- **đánh-đổi honest (v2 §5):** Tầng-1 lớn = rot CAO HƠN trên always-loaded — chấp-nhận có-chủ-đích (quên-việc tệ hơn rot), KHÔNG "rot biến mất".
## Fan-out diff reconciliation (S82) — `/adap-apply all` 29 broadcast vs 22 adap-report
9 không-khớp exact-id → verify từng cái: **1 MỚI THẬT = H15-v2 (báo-cáo này).** 7 còn lại = đã-phủ (verify-not-redo):
- `checklist-harness-11` = verify-aid H11 (adopt S75) · `checklist-harness-9-10-v2` + `h10-flat-detector-refine` = S72 `harness-10-flat-refine-checklist-v2` · `checklist-harness-all` = verify-aid H6→H13 (rải S63-S79) · `harness-all-update-v-2-0` = PLAN-ANNOUNCE visibility-only (harness-14 report ghi SKIP n-a) · `checklist-harness-14` = harness-14 report ref `e96930da` · `harness-14-adopt` = source của `harness-14.md` (chỉ khác tên-file).
- `checklist-harness-15` = verify-aid của H15 (adopt S81, dùng làm completeness-gate) — dùng lại trong review v2 này.
## REVIEW verdict (Workflow `wf_04667b25-5fa`) — ✅ 3/3 lane PASS
3 reviewer độc-lập (free-text, agentType: reviewer):
- **floor-completeness: PASS** (1 MINOR, 0 CRIT/MAJOR) — cả 4 v2 delta PRESENT + WIRED; old key `l1_always/l2=6000/l3=4000/headline=42000` **REMOVED-confirmed** (grep 0); §G.1-G.3 byte-intact. *"genuine PASS, not a courtesy one."*
- **faithfulness: PASS** (1 MINOR) — số 220/60/50 KHÔNG mượn (label estimate SE-riêng); role-boundary reframe đầy-đủ (old "lead-authority" replaced, không giữ ngầm); honest_caveat khớp v2 §5; JSON valid.
- **honesty-regression: PASS** (0 CRIT/MAJOR) — mark RC-sig + tier + objective-criteria **preserved** (NO new-mint, NO tier-change); §G.2 6-floor + value_protect byte-identical; (1)(2)=config-mechanized · (3)(4)=convention **honest** (KHÔNG overclaim); session-start 2.1.5→2.1.6→2.2 sạch + session-end 8-item (a)-(h) nguyên.
**3 MINOR → ĐÃ FIX (review→fix loop):**
1. `ACTIVE-MARKS:18` volume "~42K" stale → refresh "SÀN 30K + Tầng-1 hot-feed per-role" (giữ luận-điểm volume).
2. Mark status "(anh-confirm S81)" mang nội-dung S82 → append "**v2-delta S82 pending anh-confirm @session-end**" (honest report-before-stamp: v2 adopt qua mandate, chờ anh ký-duyệt).
3. `_index` pending + inbox untracked → **STAGE 2 done** (move `inbox/ai_infra/` + flip processed).
**Reviewer memory-note (harvest):** `broadcasts/_index.md` sha = notify's **self-declared `content_sha256`** (frontmatter), KHÔNG recompute full-file → đừng flag "mismatch" trước khi đọc frontmatter field.
## Self-check (broadcast §"Dành cho dự-án")
- [x] re-verify CHỈ phần đổi (1)(2) + tool (3)(4) — KHÔNG làm lại sàn-chức-năng gốc H15
- [x] 2-process: IMPLEMENT (em-main D9) + REVIEW (workflow tách-biệt run-id)
- [x] con-số tự-đo theo scale SE (KHÔNG mượn 220/60/50)
- [x] kiến-trúc = SÀN, con-số = tự-do (honest)
- [x] tự ký-duyệt: anh-confirm S82 `RC-pqhuy1987-21-06-2026-01-58-01` (report-before-stamp ✓)

View File

@ -20,7 +20,7 @@
| PHẦN D — orchestration | doc này (3-tier + 1-direction) + `session-start.md`/`session-end.md`/`ultra-on.md` cadence + `hmw.js` checkpoint | mix mechanized + convention |
| PHẦN E — User-Mark (H-12/13, canonical §P) + RC-signature | doc này §E (cơ-chế P1-P10) + `.claude/governance/ACTIVE-MARKS.md` (sổ-cái + display) + 4 lệnh `/user-mark-*` (interface) + `session-start §2.1.4`/`session-end §L.b(h)` (display) | convention (report-trước-đóng-dấu P4) + mechanized (display gắn-lệnh-phiên + tool-deny settings P9) |
| PHẦN F — Harness-14 Eval/Budget/Outcome | doc này §F (3-mức maturity + method) + `eval/` golden-set harness (F.2) + `memory-budget.json`/`measure-agent-memory.ps1` (F.3 = PHẦN A) | eval = executed-file + convention (manual) · budget = mechanized ALIGNED · outcome-correlation/hit-rate = Mức-2 tool-pending-data |
| PHẦN G — Harness-15 memory-budget per-agent (token) | doc này §G (SÀN floor + 3-tầng token) + `memory-budget.json` (`harness_floor` + `token_governor` + `archive_gate.value_protect`) + `session-start §2.1.5` (work-state block) | 2-governor mechanized (byte ⟂ token config) + 5/6 sàn-chức-năng = convention |
| PHẦN G — Harness-15 memory-budget per-agent (token) **+v2 §G.4** | doc này §G (SÀN floor + 3-tầng token + **§G.4 hot-feed-lớn / L2-L3-bỏ-trần / %-print / ranh-giới-vai-trò**) + `memory-budget.json` (`harness_floor` + `token_governor` v2 + `archive_gate.value_protect`) + `session-start §2.1.5`+**§2.1.6** + **`session-end §L.b(c)`** | 2-governor mechanized (byte ⟂ token config) + 5/6 sàn-chức-năng = convention; **v2 (1)(2)=config · (3)(4)=convention** |
| Canonical state (nguồn-chuẩn) | `docs/STATUS.md` CURRENT STATE table | — |
---
@ -162,12 +162,14 @@ SE đã có RAG golden-set harness (KHÔNG phải gap): `eval/golden-set-solutio
> **Adopt S81 (2026-06-20)** — AI_INFRA `2026-06-20-Governance-harness-15-memory-budget` + checklist-15 (inbox `broadcasts/inbox/ai_infra/`). Áp qua 2-process (IMPLEMENT em-main single-writer D9 + REVIEW workflow) per mandate §6. adap-report → `docs/governance/adap-reports/2026-06-20-Governance-harness-15-memory-budget.md`.
>
> **Adopt-delta S82 (2026-06-21)** — AI_INFRA `2026-06-20-Governance-harness-15-v2-hot-feed-update` (type: update · supersedes_scope = tier-1-sizing + L2/L3-caps ONLY). Re-verify CHỈ phần đổi → **§G.4** (Tầng-1 hot-feed-lớn + L2/L3 bỏ-trần + %-print 2-đầu-phiên + ranh-giới-vai-trò). Phần sàn-chức-năng gốc (§G.1-G.3) **KHÔNG đổi**. adap-report → `2026-06-21-Governance-harness-15-v2-hot-feed-update.md`.
>
> 🔑 **Cốt-lõi:** ngân-sách bộ-nhớ = **mức TẬN-DỤNG-TỐI-THIỂU phải đạt, KHÔNG phải trần để dè-xẻn.** Tiết-kiệm-token = **quên-việc** (rơi trạng-thái giữa phiên) = KHÔNG tiết-kiệm thật (làm-lại tốn HƠN — cùng họ Goodhart §F.4/§6.6). Khoảng-trống quan-sát hay rơi đúng vào **chính LEAD** (lead tự-nạp kiến-trúc/luật nhưng bỏ quên trạng-thái-công-việc) → §G.2(c) vá đúng chỗ đó.
### G.1 — Mô-hình = SÀN cố-định + 3 tầng được-quản-lý (A1/A2/A3)
- **SÀN-harness (A1, đo-được):** phần cố-định mỗi spawn = tool-schema + framing + persona/role + lead-pasted base-doc-slice + prompt. **SE TỰ đo (KHÔNG mượn số AI_INFRA):** persona đo-thật `.claude/agents/*.md` (4.3KB13.3KB ≈ 1.3K4.0K tok /3.3); tool-schema+framing harness-injected **SE ước-lượng-riêng** (trùng AI_INFRA ~21K vì **cùng-họ-toolset** Read/Write/Edit/Bash/Grep/Glob/Skill/RAG, **KHÔNG mượn-số**) → **floor ≈ 21K measured-estimate → round-up 30K (cap RIÊNG SE)** (`memory-budget.json:harness_floor`). Honest: persona = đo-thật-byte; phần harness-injected = ƯỚC-LƯỢNG (không byte-count cục-bộ được).
- **A3 tách-nhà chống-đếm-trùng:** persona + lead-docs thuộc **SÀN**, KHÔNG đếm vào L1-managed. L1-managed = own agent-memory + archive `_INDEX` + work-state block (`memory-budget.json:harness_floor._note`).
- **3 tầng managed (A2, con-số = lead hard-cap):** L1-always **12K** (MEMORY.md ~8K + `_INDEX` ~2K + work-state ~2K) · L2-ondemand **6K** (verbatim/gist + skill sections) · L3-RAG **4K** (search/query). Headline luôn-nạp = SÀN 30K + L1 12K = **~42K tok/spawn**; L2/L3 phình-theo-nhu-cầu (no context-rot). 🔑 con-số = QUYỀN-CẤP lead, **KHÔNG AI tự suy-diễn xuống** (`token_governor`).
- **3 tầng managed (A2 — cập-nhật v2 §G.4):** Tầng-1 = **HOT-FEED LỚN per-role** (lead ~60K · agent-ký-ức ~20K · agent-workflow ~16K — SE tự-đo-estimate, **KHÔNG** mượn số AI_INFRA 220/60/50; nạp đầy 4 bucket WIP·lỗi-lặp·tồn-đọng·quyết-định-chờ) · L2/L3 **BỎ TRẦN** (on-demand, no artificial tier-cap, chỉ chặn bởi cửa-sổ-ngữ-cảnh model). 🔴 con-số = **quyền CHỦ-DỰ-ÁN (anh)** — em-main THỰC-THI-đúng-số + BÁO-% (KHÔNG tự-tinh-chỉnh), xem §G.4 (`token_governor`).
### G.2 — 6 sàn-CHỨC-NĂNG bắt-buộc (🔴 — map onto SE, honest mechanized-vs-convention)
| Sàn | SE map | Nấc | Cơ-chế-hóa vs quy-ước |
@ -184,6 +186,15 @@ SE đã có RAG golden-set harness (KHÔNG phải gap): `eval/golden-set-solutio
- **Honest nấc tổng:** mechanized = chỉ **(e) 2-config byte+token** + **đo-SÀN** (qua measure script); **5/6 sàn-chức-năng = CONVENTION** (nạp-đầy · cắt-giá-trị · work-state · 3-tệp-chốt = kỷ-luật người+AI). KHÔNG nhận "mechanized" cho kỷ-luật. `value_protect.patterns` = grep-hint DRY-RUN (advisory FLAG), **KHÔNG enforced auto-exclude** (archive-gate giữ DRY-RUN, em-main quyết — D6).
- **token≈byte/3.3** (VN thật; byte/4 = cận-trên → headroom THẬT lớn hơn). Floor = đo-được không-exact (honest-note b). Agent chưa-có-archive (database-agent/investigator-api/...) → phần "`_INDEX` theo ngân-sách" moot với chúng (honest-note d).
### G.4 — Harness-15-v2 delta (S82): Tầng-1 hot-feed LỚN + L2/L3 bỏ-trần + %-print + ranh-giới vai-trò
> Delta chồng lên §G.1-G.3 (gốc KHÔNG đổi). Re-verify CHỈ 2 phần đổi + 1 tool mới. Broadcast `2026-06-20-Governance-harness-15-v2-hot-feed-update` (`supersedes_scope = tier-1-sizing + L2/L3-caps ONLY`).
- **(1) Tầng-1 = HOT-FEED LỚN (🔴 SÀN-kiến-trúc):** phần luôn-nạp phải DÀY (đừng để mỏng) — nạp đầy **4 bucket nội-dung-công-việc**: WIP work-state · lỗi-lặp/anti-pattern/gotcha (`value_protect` §G.2(b), giữ bất-kể tuổi) · tồn-đọng · quyết-định-chờ. Bằng-chứng nền: Tầng-1 mỏng → lead **bỏ quên việc nhiều phiên liên-tiếp** (đúng bệnh H15 chữa). SE tự-đo per-role: lead ~60K · agent-ký-ức ~20K · agent-workflow ~16K (`token_governor.tier1_hotfeed_tokens`) — **estimate, KHÔNG mượn 220/60/50 AI_INFRA** (model+scale khác).
- **(2) L2/L3 BỎ TRẦN (🔴 SÀN-kiến-trúc):** gỡ cap cứng L2=6K/L3=4K → on-demand kéo-về tự-do, **không hạn-mức-tầng nhân-tạo**, chỉ chặn bởi cửa-sổ-ngữ-cảnh model. on-demand nên KHÔNG chiếm-chỗ thường-trực (no always-cost).
- **(3) %-print 2 đầu-phiên (🔴 tool mới):** `session-start §2.1.6` (composition Tầng-1 theo %/bucket) + `session-end §L.b(c)` (% sau-nạp + Headroom). Ước-lượng-tỉ-lệ đủ. **Headroom > 0 mà CÒN nội-dung giá-trị-cao = under-fill (SAI)** → nạp tiếp; Headroom = cờ-báo, KHÔNG phải đích-tiết-kiệm.
- **(4) Ranh-giới vai-trò (🔴 governance):** con-số budget = **quyền CHỦ-DỰ-ÁN (anh)**, KHÔNG phải AI-lead. em-main = (i) thực-thi đúng-số (no-truncate, kéo từng bucket tới target) + (ii) báo-% 2-đầu-phiên cho anh quyết. Sửa framing S81 "lead-authority" (nhầm AI-lead ↔ chủ-dự-án). Cùng tinh-thần mark `RC-…10-29-09` (AI = neo-lý-tính, anh quyết) + report-before-stamp.
- **Honest đánh-đổi (v2 §5):** Tầng-1 lớn = rot CAO HƠN trên phần always-loaded — **chấp-nhận có-chủ-đích** (quên-việc tệ hơn rot), KHÔNG phải "rot biến mất". SÀN = **kiến-trúc** (hot-feed lớn + L2/L3 on-demand), KHÔNG phải con-số. Nấc honest: (1)(2) = config mechanized (`token_governor`) · (3)(4) = **convention** (kỷ-luật người+AI: nạp-đủ + báo-% + anh-quyết-số).
---
## CAVEAT (trung-thực — đọc trước khi tự nhận "đã tự-bảo-trì")