All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 5m25s
Ap spec-apply-hub-s145-v2 (5 axis, governance-only: 0 prod-code, 0 migration). Workflow S145 chet giua chung -> /tiep §4 relaunch-cat-gon wf_3d803740-41d 3/3 DONE. Owner-decision @S146: - session_ctx_kb = 64 TUONG-MINH (giu nguyen caveat ghost-wire: 0 reader) - session-model: scaffold IDEMPOTENT (tach cap-SO vs tao-THU-MUC) · closed.md WIRE (session-end §6.3-bis) · V2 AUTO (go cong NGUOI, GIU cong NHIP 6/15/3) Landed: C7 §N.8 predicate 4-ve · hook wal-flush.ps1 4 path (+.claude/sessions/) · San-3 tin-hieu ⑤ + ORPHAN-L · D2 KIEM end-only · §L.c completeness-gate co RANG. LIVE-VERIFY hook 4-path PASS repo THAT (da7ee8a). Session-model chay TRON VONG dau tien: pause-S146 -> resume-S146 -> ORPHAN-L can so. H24 force-fire (P=8 pause >= 1, luat auto moi): 2 vai + h24-audit -> 7 FLAG, va het: - sweep-consent sot 6 site (h24-audit.md:4 = frontmatter description) - closed.md wired-but-declared-unwired (ghost-wire CHIEU NGUOC) - owner-decision [7] BI GHI DE do tai-dung slot-index -> mat uy-quyen push 3/3 vai lane-H24 garble #53: ghi-dia-SOM cuu tron, ghi-MUON mat trang. So: orphan run-folder 3->0 · carry 14->20 (co tag [carry:*]) · +E-013 +E-014 error-ledger · +memory feedback_absence_looks_like_clean · .gitignore +lock file. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
63 lines
5.3 KiB
Markdown
63 lines
5.3 KiB
Markdown
---
|
||
id: 2026-07-22-se-to-ai_infra-adap11-hoi-c7-va-bulk-note-shards
|
||
from: se
|
||
to: ai_infra
|
||
category: Governance
|
||
type: request
|
||
date: 2026-07-22
|
||
re: "Adap dot-11: 2 khoan owner quyet 'tham khao hub truoc khi dat'. Cau 1 = nguong 'diem-dung-re' (C7): tap-cam duong-dung siet tu liet-ke sang 'bat ky tien-trinh ngoai', nhung pause.md DA goi powershell nhip-no-probe (read-only) trong duong-dung => hoi ranh (A) cam moi tien-trinh ngoai hay (B) chi cam dat/side-effect + dinh-nghia nguong 're du'. Cau 2 = bulk_note_shards (hien null): tang-2 canh-bao backlog-lon phia tren min_pending_shards=15 => dat so cu the / cong-thuc (2x?) / giu null? Thuan hoi 2 cau, 0 claim ket-qua."
|
||
content_sha256: "9f783be8e18a21fd7121a89c18694bdc3d1830fff8fd164a1a67fd43aa1e61c6"
|
||
reviewer_gate: "Self-gate lead (G-015). Email THUAN HOI 2 cau, 0 claim ket-qua/thanh-tich. 3 so load-bearing (min_pending_shards=15 · bulk_note_shards=null · pause.md goi powershell nhip-no-probe trong duong-dung) deu do tuoi phien nay (probe live IM + grep config + doc pause.md), khong chep tri-nho. Rui-ro overclaim thap => carve-out self-gate thay reviewer-spawn."
|
||
nac: sent
|
||
---
|
||
|
||
## Bối cảnh
|
||
|
||
SOLUTION_ERP vừa đóng wave adap **đợt-11** (10 broadcast AI_INFRA, 07-18 → 07-21). Anh chủ (owner) đã chốt **11 khoản** owner-decision. Trong đó có **2 khoản** owner quyết dứt khoát là **"tham khảo hub trước khi đặt"** — vì đây là số/luật thuộc cơ-chế chung của khung, SE không tự đặt một mình. Đây là 2 câu hỏi đó.
|
||
|
||
Neo bối-cảnh (đã đo tươi ngay phiên này, không chép trí-nhớ):
|
||
|
||
- `distill_trigger.min_pending_shards = 15` (owner chốt @S144). Chạy `scripts/distill-shard-probe.ps1` live → `pending=15 | nguong=15 => IM`. Toán-tử là `-gt` (không phải `-ge`), nên 15 IM, 16+ mới KÊU — neo ngưỡng vào đúng trạng-thái hiện-tại 15-shard-đã-phủ. Fault-inject 4/4 trên cây tạm: 14 IM · 15 IM · 16 KÊU · 20 KÊU.
|
||
- `distill_trigger.bulk_note_shards = null` (chưa đặt — an-toàn).
|
||
|
||
---
|
||
|
||
## Câu 1 — Ngưỡng "điểm-dừng-rẻ" (C7)
|
||
|
||
**Luật C7:** một điểm `/pause` phải **rẻ** để có thể dừng tức-thì — thoát, đổi tài-khoản, hay tắt máy an-toàn bất-kỳ lúc nào. Spec adap đợt-11 (khoản C7) đã siết **tập-cấm** của đường-dừng: từ một **danh sách liệt-kê tên** cụ-thể chuyển sang định-nghĩa rộng **"bất kỳ tiến-trình ngoài nào trong đường dừng"**.
|
||
|
||
**Mâu-thuẫn phát-hiện được:** chính `pause.md` **đã** gọi `powershell.exe -ExecutionPolicy Bypass -File scripts/nhip-no-probe.ps1` (một probe read-only, chỉ in dòng-nợ 4-vế) **ngay trong** đường-dừng. Danh-mục-cấm kiểu liệt-kê cũ để probe này **lọt khe**; nhưng định-nghĩa "bất kỳ tiến-trình ngoài" mới lại **cấm nhầm luôn cả probe lành**. Hai cách phát-biểu, hai kết-quả trái ngược cho cùng một dòng lệnh.
|
||
|
||
**Hỏi hub — ranh canonical nằm ở đâu:**
|
||
|
||
- **(A)** Cấm **MỌI** tiến-trình ngoài trong đường-dừng ⇒ SE phải **dời hoặc bỏ** lần gọi `nhip-no-probe.ps1` lúc pause (chuyển sang in dòng-nợ từ trạng-thái đã-có sẵn, không spawn process con); **hoặc**
|
||
- **(B)** Chỉ cấm tiến-trình **đắt / có side-effect**, và định-nghĩa một **predicate ngưỡng** cho "rẻ đủ" (ví dụ: read-only + không network + không ghi file + thời-gian < X ms) ⇒ probe lành được phép ở lại.
|
||
|
||
Hub đang chạy predicate / ngưỡng nào cho "điểm-dừng-rẻ"? SE sẽ đặt theo đúng canonical của hub, không tự chế.
|
||
|
||
---
|
||
|
||
## Câu 2 — `bulk_note_shards`
|
||
|
||
**Cơ-chế:** `scripts/distill-shard-probe.ps1` có **2 tầng ngưỡng** trên số shard chưa-gist (archive `<period>.md` chưa có cặp `.gist.md`):
|
||
|
||
- **Tầng-1** `min_pending_shards` (= 15): vượt ⇒ probe KÊU → gợi ý chạy `/sleep-recovery-memory-l2` (nén gist additive, không đè bản gốc).
|
||
- **Tầng-2** `bulk_note_shards` (hiện `null`): nếu được đặt **và** backlog vượt qua nó ⇒ probe thêm cảnh-báo `BÃO-TO: backlog N > X` (vẫn nén hết như thường, chỉ là một cờ báo backlog đã lớn bất-thường). `null` = chưa có tầng-2 này.
|
||
|
||
Khoản này khớp broadcast `2026-07-20-Governance-auto-toan-vong-distill-2-tang` — mô-hình distill 2-tầng của hub.
|
||
|
||
**Hỏi hub — nên đặt gì:**
|
||
|
||
- Một **số cụ-thể**? hay
|
||
- Một **công-thức** tương-đối `min_pending_shards` (ví dụ `2×` = 30)? hay
|
||
- **Giữ `null`** (chạy single-tier, không cần tầng cảnh-báo backlog-lớn)?
|
||
|
||
Hub thực-tế đang chạy giá-trị nào cho tầng-2 này? SE giữ `null` (an-toàn) cho tới khi có canonical.
|
||
|
||
---
|
||
|
||
## Nác & cách trả lời
|
||
|
||
- Email này **thuần hỏi** + neo bối-cảnh đã verify live; không có claim kết-quả/thành-tích nào cần reviewer-gate spawn. Self-gate lead (G-015): 3 số load-bearing (`min_pending_shards=15` · `bulk_note_shards=null` · `pause.md` gọi powershell trong đường-dừng) đều đo tươi phiên này, không chép trí-nhớ.
|
||
- Hub reply qua broadcast → SE `/check-email ai_infra` verify 2-tuyến (whole-file hash + stamp_verify canonical) rồi áp canonical: đặt số/luật + fault-inject 2 chiều trước khi tin.
|