Files
solution-erp/.claude/workflows/runs/2026-08-07-S180-adap-upgrade-pack-phased/wave-plan-S180.md
2026-08-07 23:17:11 +07:00

49 KiB
Raw Blame History

wave-plan-S180 — N4 TỔNG HỢP → PLAN 7 WAVE (gói nâng cấp 7 GĐ, AI_INFRA)

Vai: reviewer (N4, /fable-real, Fable 5) · Phiên: S180 (2026-08-07) Đầu vào: spec + run.md + N1 fit-map (48 KB) + N2 (11 finding) + lead-verify D-LANE-01 + 6 lane N3 (A/B/C/D/E/F) — cùng thư mục. Chế độ ghi: GHI DẦN TRONG LÚC LÀM — mỗi wave append ngay khi chốt. File này KHÔNG có heading chờ-điền; wave nào chưa xuất hiện = chưa chốt. Ràng buộc cứng: OD-2 (đúng thứ tự GĐ-0→6, cấm nhảy cóc, cấm ăn lẹm) · mỗi wave trỏ ≥1 mã TC (không thì LOẠI — ngoại lệ duy nhất W0, khai bên dưới) · 4 ô hub để CHỮ (TC-02·03·07·10) GIỮ CHỮ · khoản VƯỢT-KHUNG tách sub-wave gated-anh · ước lượng khối lượng PHẢI kèm mẫu số · KHÔNG ĐO ĐƯỢC hợp lệ, bịa thì không · 2-3 xung đột triết lý: TRÌNH phương án, KHÔNG tự chọn.


§Q — Quy ước dùng chung cho MỌI wave (chốt trước, wave chỉ trỏ về)

  • Q1 · Khuôn 7 trường mỗi wave: · điều-kiện-vào · TC chữa (mã) · deliverable (tệp cụ thể) · acceptance (lệnh chạy được | KHÔNG ĐO ĐƯỢC + vị-từ thay thế) · lớp restart A/B/C · rủi ro + rollback. Kèm khối lượng (tử/mẫu, khai mẫu số đếm CÁI GÌ).
  • Q2 · Nấc & scope (đường F-03): mỗi wave mở bằng 1 dòng nấc "đã đồng ý" trong tệp theo dõi: "adopt tới đâu" — liệt khoản VÀO scope + khoản NGOÀI scope (đi mục 8/10 báo cáo khuôn B). Thi công TRỌN scope đã khai ⇒ wave đạt nấc đã thi công hợp lệ; ô Quyết định fit-map giữ ĐÚNG 1 trong 3 giá trị (áp dụng/không áp dụng/hoãn), KHÔNG trộn. Nấc tự khai tối đa = đã thi công — nấc đã được kiểm chứng CHỈ hub cấp, CẤM tự viết (áp cả TC-03/TC-09).
  • Q3 · Điều-kiện-vào theo OD-2: wave k vào được ⟺ wave k1 đã thi công (theo scope Q2) HOẶC phần treo của k1 là miễn/hoãn CÓ KHAI (1 dòng trong tệp theo dõi + mục 10 báo cáo). Hub cho GĐ-4 kéo sớm — KHÔNG DÙNG quyền này (OD-2). Wave chạy hết phiên ⇒ dừng đúng ranh nấc, ghi WAL, KHÔNG ăn lẹm.
  • Q4 · Lớp restart (lane F): A = script/config ăn ngay · B = persona, ăn từ restart · C = settings.json/CLAUDE.md/commands/*.md, restart BẮT BUỘC. Trình tự trong 1 wave chạm nhiều lớp: A → B → RESTART → verify B → C → RESTART → verify C. Wave chạm B/C phải có ≥1 phép đo chỉ xanh SAU restart (ghi rõ lệnh).
  • Q5 · Đụng máy đang sống: sửa governance-detectors.ps1 / nhip-no-probe.ps1 / session_ctx.py = sửa máy các cửa phiên đang dùng ⇒ fault-inject -RepoRoot cây tạm TRƯỚC khi land (lỗi cấy vào → FLAG, trả lại → sạch); mọi phép 0-hit kèm control-dương.
  • Q6 · Sự thật đã chốt (dùng, không đo lại): GĐ-2 ≥ GĐ-5 cùng thước 8-bước (xếp hạng N1 đổ, claim thành phần đứng) · GĐ-2 mẫu số 3 cách lệch ~3× (13 khoản→42% · 8 bước→69-75% · 6 ô nghiệm thu→25%, mẫu số cấp-nấc) · spawn-model-audit.ps1 mù đường Task (17 lane phẳng, 168 bản ghi fable trong vùng mù, vẫn in TOTAL FLAGS: 0; H23 @S126 vẫn đứng) · jump_on_class_repeat fed-but-unread 0 reader (control-dương light_every có read :865) · session_ctx_kb + pull_warn_days KHÔNG phải ghost-wire · ranh fail-loud⟂advisory ĐÃ CÓ trên đĩa (memory-archive-gate.ps1:323-325; phạm vi thật 5 máy fail-loud + hmw.js 4 throw + 9 advisory + 3 biên) · tiep.md:181 chủ ngữ là checklist; sổ-3-khối đo 7 hàng × 4 kho: 4 hàng TRỐNG THẬT, đụng đúng 1 cột trạng thái · tiền-kiểm phủ 4/19 cửa, /adap-apply = 0 · GĐ-6 "chưa ĐÁNH GIÁ ĐƯỢC — thiếu vật tham chiếu" ⇒ W0 phải đẻ bản-đồ-áp-dụng · GĐ-0 không TC nào trỏ về · TC-10 = lỗ CHỮA duy nhất · TC-03/TC-09 SE không mắc (26/26 pin sạch) ⇒ không áp dụng CÓ KHAI · 3 lớp restart · vá jump phải chạy INFORM ≥1 phiên trước khi cho kêu to (8-12 class nợ tồn sẽ bật cùng lúc).

(Các wave append từ đây xuống — W0 trước.)


W0 — GĐ-0: Tiếp nhận + bản đồ áp dụng (đóng cho ĐỦ, không đóng cho có)

  • GĐ: 0. Điều-kiện-vào: thoả sẵn (4 món trên đĩa, hash 4/4 khớp canonical qua scripts/stamp_verify.py).
  • TC chữa: TC-06🔴 NGOẠI LỆ CÓ KHAI. Hub không gán TC nào cho GĐ-0 (lane E §4.3: theo chữ hub là "đồ chơi"). Lane E đưa 2 đường; N4 chọn đường 2 — tạm gán TC-06 vì SE có ca TC-06 SỐNG ngay trong GĐ-0 (nghi thức "ghi dòng đã-nhận" bị bỏ: grep "upgrade-pack-phased" broadcasts/_index.md = 0, control harness-22=3), đồng thời nêu cả 2 đường cho hub phán ở mục 8 adap-report (đường 1 = hub thêm ngoại-lệ enabling vào luật). CẤM chép câu N1 "điều kiện tồn tại của mọi TC" vào ô TC (chữ-vào-ô-đòi-mã — lane E §4.3 cảnh báo đích danh).
  • Deliverable (5, đường dẫn cụ thể):
    1. Sửa luật lane 1 dòng broadcasts/_index.md:7 theo đường (a) lane A §2.5 (mở phạm vi INBOUND nhận thư đại-trà — hợp thức hoá 22 dòng đang sống; đường (b) sổ-mới+gỡ-22-dòng đắt và dễ đẻ 2-chỗ-ghi). Cần anh gật 1 dòng (P6) vì là sửa luật lane; hỏi NGAY đầu wave.
    2. 24 dòng "đã nhận" vào broadcasts/_index.md (không phải 4 — lỗ thật lane A đo 24/69, thư cũ nhất 25 ngày; 3 thư không-to: + 1 thư all xử riêng từng dòng, không gộp). Riêng 4 món gói này: kèm sha12 từ frontmatter (43db2cf0·49287ce7·98e31fad·c24699f0) + dấu ✓ từ stamp_verify.py ⇒ đóng luôn vế ghi-băm G0-B2.
    3. Bản đồ áp dụng 7 dòngdocs/governance/adap-reports/upgrade-pack-phased-fitmap.md — ô Quyết định ĐÚNG 1-trong-3 (Q2): GĐ-0 áp dụng · GĐ-1 áp dụng · GĐ-2 áp dụng (kết luận per-khoản hiện trạng: chưa làm — 2/6 ô nghiệm thu, khai mẫu số cấp-nấc) · GĐ-3 áp dụng (scope đã-đồng-ý: 8/10 khoản; C3-04 cổng-mã-lỗi → mục 8/10) · GĐ-4 áp dụng (scope: sổ 3 khối; chấm-điểm-wire → W4b gated) · GĐ-5 áp dụng (scope: phần thiếu; TC-03/TC-09 = không áp dụng CÓ KHAI per-khoản, control-âm 26/26 pin) · GĐ-6 hoãn (điều kiện gỡ: mọi GĐ áp dụng đạt đã thi công). Vật này chính là vật tham chiếu mà điều-kiện-vào GĐ-6 đang thiếu (lane D §6.1).
    4. Tệp theo dõi 20 khoản A0-1..A16 (liệt TỪNG khoản, cấm viết A0..A16 dạng khoảng — A12) → docs/governance/adap-reports/upgrade-pack-phased-tracking.md, mỗi khoản 1 dòng {trạng thái · nấc · con trỏ} — sống lâu hơn phiên, KHÔNG nằm trong run-folder.
    5. Adap-report tiếp nhận (khuôn B 10 mục) — DRAFT trong phiên; mục 8 phản-biện gửi hub gồm: F-1 (4 thư status: DRAFT/reviewer_gate: PENDING ⟂ tuyên "bản nháp không phát") · GĐ-0-không-TC 2 đường · TC-10 = lỗ CHỮA duy nhất (lane E §4.4) · trường thứ 7 "đội hiểu thành gì" (lane C §C.4) · thang-mã-thoát cần điều-kiện-nơi-đọc (hmw.js:288 dừng-câm) · xung-đột-3 A10 (tập-tín-hiệu đóng ⟂ SE mở có tiền-lệ owner S143). Chạy 7 dòng Tự-chấm-nhanh trước khi trình. GỬI = chờ anh duyệt (outward).
  • Acceptance (lệnh): grep -c "upgrade-pack-phased" broadcasts/_index.md ≥ 4 · phép đối-chiếu-ngược inbox↔sổ (lane A §2.1 phép-2) in danh-sách-vắng = 0 (hôm nay 24) · grep -c '^| GĐ-' docs/governance/adap-reports/upgrade-pack-phased-fitmap.md = 7 (chạy trên tệp bản-đồ, KHÔNG trên khuôn — bẫy 14) · grep -c '^| A' …tracking.md = 20 · python scripts/stamp_verify.py broadcasts/inbox/ai_infra/2026-08-04-*.md exit 0.
  • Lớp restart: A (toàn docs/sổ — 0 restart).
  • Rủi ro + rollback: bù dòng TRƯỚC khi sửa luật :7 = thêm 4 vi phạm vào 22 ⇒ thứ tự CỨNG 1→2. Fit-map trộn giá trị = tái phạm F-03 ⇒ khuôn Q2. Docs-only ⇒ rollback = git revert 1 commit.
  • Khối lượng: GĐ-0 = 18 khoản (mẫu số lane A: 7 bước + 3 lệnh kiểm + 4 Phần-C + 4 ô nghiệm thu), hiện thiếu 9 + 3 sai khuôn; +1 rider SE (backfill 20 thư ngoài gói — đếm RIÊNG, không cộng vào mẫu hub). Ước < 1 phiên.

W1 — GĐ-1: Nền chuẩn đặt tên (chốt mở khoá — không khai miễn được)

  • GĐ: 1. Điều-kiện-vào: W0 đã thi công (fit-map + tracking tồn tại). Đường không áp dụng ĐÃ ĐÓNG bằng đo: vocab-alias-map.mdbảng dịch, trượt cả 3 phép thử tiên-đoán/phủ-sóng/hướng (lane A §3.3); docs/rules.md chỉ phủ tầng mã nguồn, 4/4 hit là naming code (lane A §8.1).
  • TC chữa: TC-11 (≥3 ca thật: sub-ctx-audit-* lọt C11(b) S153 · _tiep-1.md sha 7-ký-tự · "17/17" hardcode stale).
  • Deliverable:
    1. 🔴 Kiểm kê máy-đọc-tên TRƯỚC, ký chuẩn SAU (đảo bước 2 giao-thức di-trú hub — làm-KHÁC CÓ KHAI mục 6; lane A §6: ≥11 đoạn máy đọc tên, 3 đoạn suy vai bằng regex tham lam; đo nốt 5 kịch bản còn nợ lane A §7.1).
    2. Văn bản chuẩn DUY NHẤTdocs/governance/naming-standard.md: phủ 6 nhóm tên (vai · nhãn lớp kiểm · thư mục run · tệp mốc phiên · nhãn tác vụ · tên sổ) + luật lane đơn-trị + luật giữ-nguyên-tên-cũ (frozen-set 5 vùng kế thừa alias-map) + di trú 6 bước; dòng đầu khai "bổ sung tầng bộ-máy, KHÔNG thay docs/rules.md" (chống 2-chỗ-tìm).
    3. Sổ đổi tên máy-đọc (append-only, cột "đã quét những đâu" = lệnh + số hit thật) → docs/governance/rename-ledger.md.
    4. Máy soi tên báo-cáo-thôi, in mẫu số (N nhóm / M họ đang sống) — script mới scripts/naming-scan.ps1, chạy tay + gọi từ bookend (wiring 1 dòng vào session-end.md DỜI sang gói-C W3 để gom restart).
    5. Vá con số trôi hmw.js vùng :36-40 "11 class" → câu trỏ khoá lead_self_audit.flag_classes (B1, lane A §8.2 — thật 12 = 6 view + 6 gap).
  • Acceptance: grep -c '^## ' docs/governance/naming-standard.md ≥ 6 (6 nhóm, mỗi nhóm 1 mục) · scripts/naming-scan.ps1 in dòng mẫu số: … nhóm / … họ + fault-inject: cấy 1 tên lệch chuẩn vào cây tạm -RepoRoot → FLAG; gỡ → sạch · grep -n "11 class" .claude/workflows/hmw.js = 0 (control trước-vá = 1) · rename-ledger có cột "đã quét" với ≥1 dòng lệnh+hit thật.
  • Lớp restart: A (docs + script mới + hmw.js; hmw.js đọc-mỗi-spawn). Không đụng persona/commands.
  • Rủi ro + rollback: ký chuẩn trước kiểm kê → chuẩn không áp được mà không vỡ máy (lane A cảnh báo) ⇒ thứ tự CỨNG 1→2. Máy soi INFORM-only ⇒ 0 blast; rollback = revert docs + xoá script. Vai giữ-chuẩn (G1-B2) = VƯỢT-KHUNG (d) → P4, KHÔNG nằm trong W1 — W1 đạt đã thi công không cần vai (chuẩn + sổ + máy đủ nghiệm thu; vai là tầng vận-hành về sau).
  • Khối lượng: GĐ-1 = 24 khoản (mẫu số lane A §3); scope W1 = 22/24 (trừ G1-B2 vai → Q4 · G1-B7 siết-cổng → W3b). Ước 1 phiên.

W2 — GĐ-2: Lưới ghi đĩa + sổ mục lục vật chứng (đo NGHĨA, không chỉ đo TỒN TẠI)

  • GĐ: 2. Điều-kiện-vào: W1 đã thi công (tên artifact chuẩn hoá TRƯỚC khi viết máy soi — tránh máy mới ăn tên cũ).
  • TC chữa: TC-04 (nặng nhất — 10 vai #53/phiên S180; 3 run-folder không run.md có tên) + TC-05 (máy 4-vị-từ cho vai điểm danh). Rider SE-repair: TC-08 (H24-2) + TC-06 (jump fed-but-unread) — khai là vá-máy-SE đi kèm wave, KHÔNG phải khoản hub GĐ-2 (2 mẫu số TÁCH).
  • Deliverable:
    1. Máy điểm danh 4 vị-từ trên run-folder (vắng · rỗng · CỤT · NÉN-QUÁ-TAY) — cơ-khí-hoá AS-17/AS-19 từ nghi-thức thành máy. Vị-từ CỤT/skeleton dùng nhãn-treo-vào-heading (lane B, 0 dương-giả): grep -cE '^#{1,6} .*\[(ĐANG ĐO|CHỜ|TODO)' + tỉ lệ dòng-thật/heading (lane E §8.3a — guard byte MÙ với skeleton). NÉN: so ký tự cùng đơn-vị nguồn↔đích; không có nguồn cùng đơn-vị ⇒ in KHÔNG ĐO ĐƯỢC đúng luật hub (lane E §2a).
    2. Mục-lục-sống runs/ 2 tầng trỏ-không-chép (_ledger.md RETIRED có khai nhưng 73/88 folder không dòng ⇒ vế-phải của điểm-danh-2-nguồn đang RỖNG) + điểm danh 2 nguồn đĩa ⟂ mục-lục, in CHÊNH từng tên. 🔴 Nguồn-2 KHÔNG được là run-chua-gom (nó đọc thẳng đĩa = chính nguồn-1 — lane B); nguồn-2 = taskList snapshot trong run.md ghi TRƯỚC launch. Tên tệp trung gian mang định-danh lane (lane E §9 — va chạm tệp tạm ĐÃ xảy ra thật giữa 2 lane phiên này).
    3. Khuôn-tối-thiểu tệp nguyên văn thành văn (tiêu đề + model tự khai + input ghim + kết luận + END-line) + khoản GĐ-2(v) "khai điểm mù" (F-06): map tương-đương = closeout-sentinel (cửa-sau) + bookend @open (lượt soi đầu-phiên-sau); ghi NỢ đo được: lead-stale-auditor.md 0 hit run-folder|runs/ (control FLAG=4) — vá persona DỜI sang gói-B W3.
    4. Rider 1 — vá H24-2 governance-detectors.ps1:892-897: segment đầu từ index 0 (hoặc nới regex nhận ^#{2,3}) — vùng mù hôm nay L1-171 = 25/54 carry-key (46%), gồm chính tools-whitelist-no-teeth; máy đang in [ok] trên vùng chưa đọc. + bắt detector in phạm-vi-thật vừa quét và phân biệt 0 mẫu0 lệch (lane F §10.2).
    5. Rider 2 — vá jump_on_class_repeat fed-but-unread: thêm vế thứ 3 vào nhip-no-probe.ps1 (đọc .session-counter.json → class_repeat.counts, so ngưỡng 3, in OVERDUE:jump + liệt TỪNG class — A12). Chạy INFORM ≥1 phiên trước mọi gate (lane F §8-bis); khuyến nghị bật kèm freeze-baseline (chỉ kêu class TĂNG sau mốc) vì nợ tồn 8-12 class sẽ kêu cả nắm — khai rõ trong output lượt đầu.
    6. Rider 3 — secrets_sweep phủ runs/: session_ctx.py:173/180/787 chỉ rglob sessions/, còn runs/ nằm trong khối - excluded: của detector ⇒ vùng vật chứng ĐẮT nhất đang ngoài 2 lưới cùng lúc (lane B). Mở rộng sweep hoặc khai lý-do-miễn visible.
    7. Rider 4 — 3 neo B1 chết trong docs/STATUS.md (lệch +2 cả 3, N-3 born-dead tại 57e672f): vá 3 neo + đổi HÌNH THỨC neo B1 sang chuỗi-tìm-được/tên-row (lane E §1.1: thuốc LỚP-5 đang xây bằng bệnh LỚP-6 — vá số suông sẽ chết lại).
  • Acceptance: vị-từ CỤT chạy trên 3 file chuẩn lane B → 6/0/0, 0 dương-giả · điểm-danh in chênh: 0; control-dương: giấu 1 *-synthesis.md → chênh 1, trả lại → 0 (lane B đã chạy mẫu) · run-folder thiếu run.md = 0 hoặc liệt từng tên (hôm nay 3: S117-pe-approve-minmax · S117-pe-luyke-finalize · S144-bootstrap) · H24-2: cấy slug giả vùng L1-171 cây tạm → detector KÊU, gỡ → IM · jump: hạ class < 3 → IM, nâng ≥ 3 → KÊU (2 chiều bắt buộc) · secrets: cấy chuỗi giả-secret vào runs/ cây tạm → sweep bắt · 3 neo STATUS resolve bằng re-scan · 6 ô nghiệm thu GĐ-2 hub: 2/6 → 6/6 (chạy từng ô theo lệnh hub).
  • Lớp restart: A (scripts + python + docs — ăn ngay).
  • Rủi ro + rollback: nhip-no-probe gọi từ 6 cửa, governance-detectors là máy /session-end — bề mặt nổ rộng nhất repo ⇒ Q5 fault-inject cây tạm TRƯỚC land, backup git checkout 1 lệnh; mọi máy mới INFORM-only (doctrine exit-0 giữ nguyên tới khi anh phán P1). Secrets mở rộng có thể FLAG hồi tố hàng loạt → chạy INFORM 1 phiên trước khi tính severity.
  • Khối lượng: mẫu số hub = 6 ô nghiệm thu GĐ-2 (hiện 2/6 — mẫu số cấp-nấc, 42%/69-75% là 2 mẫu số khác đã khai) + 4 rider SE (đếm riêng). Ước 1-2 phiên (fault-inject chiếm phần lớn).

W3 — GĐ-3 phần áp: nghi thức 2 đầu + tiền kiểm + 4 nhãn (KHÔNG đụng exit-mode)

  • GĐ: 3 (scope đã-đồng-ý: 8/10 khoản — C3-04 cổng-mã-lỗi → W3b gated · C3-08 trần-chi-phí = KHÔNG ĐO ĐƯỢC, adopt dạng hướng-dẫn + nghĩa-vụ-khai). Điều-kiện-vào: W2 đã thi công.
  • TC chữa: TC-06 · TC-07 · TC-08. 🔴 TC-10: W3 chỉ KHAI BÁO trần theo chữ hub — không phải thuốc; TC-10 giữ nguyên là lỗ CHỮA duy nhất (lane E §4.4), đã nêu ngược hub ở W0 mục 8. CẤM claim W3 "chữa TC-10".
  • Deliverable:
    1. 4 nhãn lệch nghi-thức thành văn (quên · tự-ý-bỏ · suy-giảm-hợp-lệ · bị-chặn) + vị-từ đĩa TỪNG nhãn (bảng lane C §E.1) → docs/governance/ritual-labels.md. Khai thẳng: nhãn-Ý-ĐỊNH ≠ AS-signature 20 mã (nhãn hành-động) — dựng mới, không đổi tên cũ; vế "đánh-giá-lại-điều-kiện" của tự-ý-bỏ chưa có máy → khai.
    2. Vòng hỏi ngược khuôn 5 cột + luật đóng-khi-0-dòng-trống (hội tụ độc lập bảng-disposition-S119) — dùng bởi cặp auditor 2 đầu ĐANG có, không đẻ vai mới (lane C §E.1).
    3. Bảng 19 cửa × tiền-kiểm TỪNG DÒNG (hiện 4 chắc-có / 12 chắc-không / 3 đo nốt: check-email·snapshot·sleep-recovery) + thêm tiền-kiểm khuôn fail-soft nhip-no vào tối thiểu nhóm adap-* (ca LỚP-2 sống: /adap-apply — chính cửa áp gói này — 0 tiền kiểm) + cổng ép-seed cho /snapshot (nợ mới lane F §3.3) — sửa commands/*.md = lớp C.
    4. Luật tự-trị 3 bậc thành văn — MỘT bản NGUỒN tại .claude/governance/ACTIVE-MARKS.md (khối mới, mang RC-mark anh — cần P5 gật nội dung); ST-002 của sổ W4 sẽ TRỎ về đây (chống nguồn-đôi C3-07 ⟂ ST-002 — lane C §F.2 lỗ-1). ACTIVE-MARKS hiện là uỷ-quyền-per-quyết-định, KHÔNG phải luật 3 bậc (lane C §F.1 đo 0-hit, control 19).
    5. Gói-B persona (gom 1 lần restart): lead-stale-auditor.md vá 4 tầng lỗi (ví dụ stale 54→113 · neo chết STATUS:19 · tiền-đề "60 menu key" 0-hit · enum "5 class"→12=6+6) + thêm nhiệm-vụ soi runs/ (nợ W2.3 — GĐ-2(v)) · ring2-audit.md:4 "5 class view"→6 (vá CẢ 2 persona — lane E §1.4: kể-công-thức-5+6+1 là Goodhart rời-tập-đo) · ràng C3-02 "vai kiểm CẤM phán đặc tả; đặc tả chỏi → cờ xung đột trả điều phối" thành văn · wiring naming-scan.ps1 vào session-end.md (dời từ W1).
    6. C3-09 guard-vắng-tệp: khai TƯƠNG-ĐƯƠNG với 3 neo máy sẵn (distill-shard-probe.ps1:23 · mfe-eval.ps1:45 · memory-archive-gate.ps1:40-41).
  • Acceptance: ritual-labels.md đủ 4 nhãn, mỗi nhãn kèm ≥1 vị-từ-lệnh chạy được · bảng 19 cửa đủ 19 dòng từng-tên (3 cửa treo đã đo nốt) · sau RESTART: gõ /adap-apply (dry) in dòng probe fail-soft (lớp C verify) · sau RESTART: spawn probe lead-stale-auditor trả 1 dòng chứa "12 class = 6 view + 6 gap" (lớp B verify — phép đo chỉ-xanh-sau-restart) · ACTIVE-MARKS có khối 3-bậc mang RC-mark (sau P5) · khuôn 5-cột grep được + có luật đóng.
  • Lớp restart: A + B + C — trình tự Q4 (A → B → RESTART → verify B → C → RESTART → verify C).
  • Rủi ro + rollback: sửa commands sai 1 cửa = hỏng cửa đó ⇒ khuôn fail-soft y nguyên nhip-no (probe-loi (khong chan)), thêm dần từ nhóm adap-*; persona đo TRƯỚC restart sẽ tưởng-hỏng ⇒ chỉ đo sau restart; P5 chưa gật → khoản 4 treo CÓ KHAI (mục 10), wave vẫn đóng 7 khoản còn lại. Rollback: revert per-file.
  • Khối lượng: mẫu số = 10 khoản GĐ-3 (lane C §F: 3 có · 3 nửa · 3 thiếu · 1 ngược); scope W3 = 8/10. Ước 1 phiên + 1 restart-verify.

W3b — GĐ-3 phần NGƯỢC: cổng chặn mã lỗi (GATED — xung đột 1, anh phán P1)

  • GĐ: 3 (khoản C3-04 + thang 4-trạng-thái E.3). Điều-kiện-vào: anh chọn PA-1/2/3/4 (P1) + rider-jump W2 đã soak INFORM ≥1 phiên (lane F §8-bis: bật gate trước soak = chặn ngay vì nợ tồn 8-12 class).
  • TC chữa: TC-06 (răng thật cho nghi-thức) + TC-08.
  • Deliverable: theo PA anh chọn — thang 4 trạng thái (trọn · thiếu-có-tên · không-xác-định · đặc-tả-xung-đột) đặt ở mã thoát (PA-1/2/4) hay dòng in (PA-3). 🔴 KHÔNG thi công TRƯỚC khi chốt (lane C §E.3: hình dạng đổi theo PA — làm trước là làm lại). Sự-thật để cân (đã đo, khỏi đo lại): ranh có sẵn memory-archive-gate.ps1:323-325 (sắp-GHI hoặc nhị-phân ⇒ chặn · phán-xét ⇒ cờ), khớp 5/5 máy fail-loud; hiện trạng 5 fail-loud + 9 advisory + 3 biên + hmw.js 4 throw / 2 cố-ý-không-throw (dừng-câm hmw.js:288); hôm nay TOTAL FLAGS: 49 + INFORM 21 — lật detectors thô = 49 cờ chặn tức thì.
  • Acceptance: giả-lập thiếu 1 tệp mốc → cổng trả mã ≠0 (nghiệm thu hub phu-luc:223) · dry-run -WhatIf in "nếu chặn thì vì cờ nào" chạy ≥1 phiên TRƯỚC khi lật · INFORM-count không bị nuốt vào tập-chặn (đếm 2 dòng TOTAL ⟂ INFORM giữ nguyên).
  • Lớp restart: A (script) — nhưng là máy /session-end đang sống ⇒ Q5 fault-inject.
  • Rủi ro + rollback: biến $FailOnFlags mặc định $false + env-override; hạ-số-cờ-không-kèm-commit-sửa-bệnh = phải khai (Goodhart lane F §4.1); nếu PA-3 → báo hub "làm KHÁC" mục 6 kèm bằng chứng hmw.js:288.
  • Khối lượng: PA-2 = phân loại lại 70 cờ (49+21) — nặng nhất; PA-1/PA-4 ~1 phiên; PA-3 ~nửa phiên.

W4 — GĐ-4: Sổ 3 khối (GATED entry — anh phán P2 trước, rồi máy chạy)

  • GĐ: 4 (scope: 9/12 khoản — C4-10 chấm-điểm · C4-08 vai · C4-09 thu-hẹp-vai → W4b). Điều-kiện-vào: W3 đã thi công (OD-2 — KHÔNG dùng quyền kéo-sớm hub cho dù thu-chinh:197 cho phép; C3-04 hoãn-có-khai không chặn — lane C §F.2 vế-đúng) + anh đã chọn PB-1/2/3 (P2) — lane C §B.6: 3 phương án ⇒ 3 cấu trúc tệp khác nhau, thi công trước = làm lại từ đầu.
  • TC chữa: TC-01 (sổ đếm-lần-nhắc = dụng cụ TC-01 đang thiếu) · TC-02 (dựng THUỐC — ô nghiệm thu hub GIỮ CHỮ chưa có dụng cụ, không điền số) · TC-12 (nền: sổ = nguồn đếm đã ký luat:140).
  • Deliverable:
    1. Sổ 3 khối (hình dạng lane C §D, cấu trúc cột theo PB): khối việc-được-giao 6 trường hub + 🔴 trường thứ 7 "đội hiểu thành gì" (SE mạnh hơn hub — ca HANDOFF:17; gửi ngược hub) · khối sở-thích với 2 mục mồi: ST-001 lằn-ranh-đỏ LIỆT KÊ 7 loại, cấm tính từ (A6: đổi lược-đồ-dữ-liệu · xoá dữ liệu · hướng-ra-ngoài · không-lùi-được · dính tiền · đổi cơ-chế-governance · đổi số-nhịp/ngân-sách) + ST-002 tự-trị-khi-vắng = TRỎ về luật 3-bậc NGUỒN tại ACTIVE-MARKS (W3.4 — cấm chép) · khối lời-phàn-nàn (hôm nay TRỐNG TUYỆT ĐỐI — 0-hit, control "điểm dừng"=5 tệp).
    2. Mã vĩnh viễn YC-/ST-/PN-<số tăng> cấm tái dụng; đóng = lật trạng thái, không xoá dòng (C4-02 — SE đang NGƯỢC: HANDOFF:10-17 đánh số 1..7 tái dụng mỗi phiên, đã trả giá hỏi-lại-3-lượt).
    3. 🔴 Chống bẫy A1 (F-04 + lane C §C.5): cột nguyên-văn CHỈ nhận chữ anh gõ từ thời điểm dựng sổ; dữ liệu cũ WAL/HANDOFF/auto-memory/migration-todos → PHỤ LỤC riêng nhãn "suy ra, không phải nguyên văn" (61 tiêu đề auto-memory là nhãn-đội — đổ vào = 61 mục trượt đối chiếu). Ngoại lệ DUY NHẤT nhập bảng HANDOFF:10-17: chỉ khi P2 gật vế đó (VK-5).
    4. Kỷ luật ghi-NGAY + tra-sổ-trước-khi-hỏi cắm vào CLAUDE.md (+ docs/rules.md = chỗ thứ 2 theo A3; CẤM cắm vào commands — hub A2/phu-luc:252) + định nghĩa A5 thành văn (hỏi lại không viện dẫn thông tin mới = vi phạm; kèm nguồn mới = kỷ luật đúng) — lớp C, RESTART.
    5. Máy dò 2-số — nối 2 vế dữ liệu (đang-treo + nhắc-từ-lần-2) từ sổ vào nhip-no-probe.ps1 (khung C4-06 ĐÃ khớp hub từng chi tiết: read-only · exit-0 · CONFIG-THIEU không default); phân biệt chưa-có-dữ-liệu ⟂ đo-và-bằng-0 in 2 chuỗi khác nhau.
    6. Sổ vào tiep_reload.sources (memory-budget.json) — không thì /tiep không thấy = sổ chết (A3; lane F §4.3a) + trần ký tự cột nguyên-văn = khoá config mới (C4-01).
  • Acceptance: grep -c '^ST-' <sổ> ≥ 2 (nghiệm thu hub mục mồi) · mọi mã YC/ST/PN mang ts ≥ ngày dựng sổ; mục cũ chỉ ở phụ lục · máy dò fault-inject 2 chiều: sổ-rỗng → in chưa-có-dữ-liệu, sổ-toàn-mục-đóng → in 0 (2 chuỗi PHÂN BIỆT) · A10 phép thử chạy NGAY: đẩy 1 class lạ vào h24-signal-write.ps1 → exit 2 "a monitor may NOT invent a class" (ô xanh có thật đầu tiên của GĐ-4 — lane C §G) · sau RESTART (lớp C verify): lượt mới nhắc lại đúng chi-tiết luật tra-sổ chỉ-biết-nếu-đã-nạp (khuôn ctx-verifier).
  • Lớp restart: A + C (sổ/config/máy = A · CLAUDE.md + rules.md = C) — trình tự Q4.
  • Rủi ro + rollback: nguồn-đôi = rủi ro số 1 (lane F §4.3) — rào bằng ranh LOẠI-NỘI-DUNG: 3 khối là thứ WAL KHÔNG CÓ (4/7 hàng trống thật — đo lane C §B.3); cột trạng-thái theo đúng PB anh chọn; CLAUDE.md là bề mặt đắt nhất (mọi lượt nạp) ⇒ diff tối thiểu, đo byte trước/sau. Rollback: sổ = file mới (xoá là sạch) + revert CLAUDE.md; giữ WAL nguyên trạng mọi nhánh.
  • Khối lượng: mẫu số = 12 khoản GĐ-4 (lane C §G: 2 có · 3 nửa · 5 thiếu · 1 ngược · 1 chưa-đo); scope W4 = 9/12 + đo nốt C4-09 (grep -rln "yêu cầu của anh|lời anh|owner-request" .claude/agents/*.md + control). Ước 1 phiên sau khi P2 có.

W4b — GĐ-4 phần chấm điểm + vai (GATED — P4 + P8, sau W4)

  • GĐ: 4 (C4-10 · C4-08 · C4-09 + A9). Điều-kiện-vào: W4 đã thi công (sổ = nguồn đếm ĐÃ KÝ, luat:140 — không né được bằng đổi nguồn đếm, F-08/lane C §H.1) + anh phán P4 (vai tầng-2/3, roster) + P8 (wire khối chấm 2 cửa) (+ P3 định đoạt đường-ghi-lại A10).
  • TC chữa: TC-12 (SE nặng hơn hub: điểm CHƯA TỪNG được sinh — 0-hit "chấm điểm", control 5 tệp) + TC-01 + khoản A9 (3 mốc niêm phong — Phần-C chưa-ai-chạm).
  • Deliverable: công thức max(0, 10 số MỤC lặp ≥2) + 3 cách đọc bắt buộc (luat:53-55) · 4 tầng với ranh CỨNG (tầng-2 KHÔNG xem điểm tầng-1; tầng-3 kiểm PHÉP ĐẾM, CẤM đề xuất điểm khác; tầng-4 = anh) · 3 mốc emit_ts/redisplay_ts/first_owner_msg_ts — thiếu mốc-3 ⇒ in chờ niêm phong, KHÔNG đẩy hàng-chờ-anh · khối in ở 2 cửa phiên (P8) · đường ghi lại khi chấm sai thành văn (tầng-nào-sai + nhãn chấm sai sống ở error-ledger, CẤM nhét flag_classes trừ khi anh mở tập — ăn khớp P3) · dòng tổng kết đủ {điểm cuối · 3 giá trị tầng · trạng thái niêm phong · liệt TỪNG mục kèm mã, rỗng ghi "danh sách rỗng"} · phạm vi BẤT BIẾN = 5 khoản theo luat:140 (công thức · nguồn đếm · 4 tầng · 3 mốc · đường ghi lại) — KHÔNG theo câu tóm :23.
  • Acceptance: 🔴 lượt đầu khối chấm PHẢI in KHÔNG ĐO ĐƯỢC — số phủ sóng chưa tồn tại, luat:66 CẤM in điểm; in một con số 10/10 = vi phạm ngay luật vừa adopt (lane C §H.3). Đây đồng thời là phép-đo-chỉ-xanh-SAU-restart của lớp C. · Ca lặp 5 lần cùng mục → trừ đúng 1 (luat:120) · đẩy nhãn chấm sai vào máy cảnh báo → bị từ chối (exit 2) · giữ chấm điểm INFORM-only ≥3 phiên trước khi ảnh hưởng bất kỳ gate nào (lane F §4.2).
  • Lớp restart: B (vai mới — không sống tới RESTART; acceptance spawn xếp SAU restart) + C (session-start/end.md) — trình tự Q4.
  • Rủi ro + rollback: nguồn thưa → điểm luôn tuyệt đối = máy chết (hub tự đo — luat:65) ⇒ ô KHÔNG ĐO ĐƯỢC là chốt an toàn; số học roster: 26 file agents ⟂ hmw_width.cap=20 LOUD-skip ⇒ +2 vai = +2 lane rớt full-sweep, và measured{} mới có 17/25 baseline ⇒ vai mới PHẢI seed baseline kẻo thành 10 vai mù (lane F §4.4). Rollback: gỡ khối in 2 cửa + vai là file .md xoá được; điểm chưa từng ảnh hưởng gate trong ≥3 phiên đầu.
  • Khối lượng: mẫu số = 8 ô nghiệm thu luật chấm điểm (luat:120-127); hiện 2/8 chạm được ngay (ô-2 hai-hệ-đo-tách · ô-7 phép-thử-từ-chối). Ước 1 phiên + 3 phiên soak.

W5 — GĐ-5 phần tự-chạy: vá máy soát + luật GĐ-5 còn thiếu

  • GĐ: 5. Điều-kiện-vào: W4 đã thi công (OD-2). Điều kiện hub gốc (GĐ-1 + GĐ-2 đã thi công + CÓ hạn mức) tự thoả từ W1/W2; hạn mức đo được (168 bản ghi claude-fable-5 phiên này) ⇒ KHÔNG rơi nhánh không áp dụng.
  • TC chữa: TC-09 (vá máy soát chỗ-ngồi — SE không mắc BỆNH nhưng MÁY có lỗ: phủ phiên-Task-path = 0/17 mà in TOTAL FLAGS: 0) + TC-04 (luật lượt-mới/khai-thiếu) + TC-03 (GIỮ CHỮ ô hub chưa đủ mẫu; per-khoản = không áp dụng CÓ KHAI, control-âm 26/26 pin).
  • Deliverable:
    1. 🔴 spawn-model-audit.ps1 (lead-verify CONFIRMED MAJOR; 4 vế lane D §1): (a) chọn phiên KHÔNG lọc theo hình-dạng-thư-mục; (b) quét CẢ HAI đường subagents/*.jsonl (phẳng — Task) + subagents/workflows/**/agent-*.jsonl (Workflow); (c) phiên chọn ≠ mới nhất → in dòng KHAI chênh lệch, sửa nhãn vô-điều-kiện :262; (d) in mẫu số n lane đo / m lane tồn tại. 🔴 Chiều mù ĐÚNG: máy THẤY Workflow, MÙ Task/flat — errata E-5: lead từng viết NGƯỢC chiều trong prompt; vá theo chiều viết-ngược = vá đúng phía đang chạy tốt. Không đập cả máy: khối A 2-key + khối C/D 26/26 + khối E tự-khai ĐANG ĐÚNG (lane D §1 khai công bằng).
    2. D-3: hmw.js resolveModel đang trả undefined ở cả 2 nhánh = đúng nghĩa "để mặc định" — làm tường minh tham số model tại chỗ-gọi (đọc từ 1 nguồn, cấm undefined-im-lặng).
    3. D-10 luật thành văn "tổng hợp = MỘT LƯỢT GỌI MỚI, không nối lại lượt cũ" + vẽ ranh với resume-#53 (recovery vật chứng ≠ tổng hợp — N2 F-09; counter-datum §1-ter lane D: resume S180 KHÔNG rớt model, n=1, ghi nhận chứ không chép lo-ngại hub thành lo-ngại mình).
    4. D-12 luật tổng: mảnh ngữ-cảnh nào chưa có → khai (THIẾU — lý do) cho CẢ GÓI 5 mảnh (hiện chỉ phủ 1 mảnh ở pause.md:53).
    5. Mục 6 khuôn B — khai làm-KHÁC/mạnh-hơn: cửa-duyệt-spec ở ĐẦU thay vì giữa (D-8) · VALID_ROLES STOP-HARD mạnh hơn sàn (D-18) · TC-03/TC-09 không áp dụng CÓ KHAI🔴 CẤM viết "đã được kiểm chứng" (nấc chỉ hub cấp).
  • Acceptance: chạy máy đã vá trên phiên S180 (chỉ lane phẳng) → PHẢI thấy 17/17 lane + in mẫu số (phản-chứng bắt buộc lane D: "phiên chỉ có lane phẳng thì máy PHẢI thấy lane, không được rơi về phiên cũ") · control chiều kia: phiên có workflows/ vẫn đọc như cũ · giả-lập phiên-chọn-cũ → dòng khai xuất hiện · resolveModel hết nhánh undefined-im-lặng (grep + spawn 1 lane probe) · luật D-10/D-12 grep thấy trong doc governance.
  • Lớp restart: A (script + hmw.js + docs).
  • Rủi ro + rollback: spawn-model-audit gọi từ 2 cửa (fable-clone + session-start) ⇒ Q5 fault-inject cây tạm trước land; hmw.js là engine fan-out sống ⇒ diff tối thiểu + spawn probe 1 lane sau sửa; rollback git checkout 2 file.
  • Khối lượng: mẫu số = 20 khoản GĐ-5 (lane D §2, hôm nay 13,0/20 nới · 9/20 nghiêm — 3 mẫu số hub hội tụ 60-67%); W5 nâng D-3/10/12 + rider vá-máy (đếm riêng); phần D-4/5/11/14/15/16/17 → W5b. Ước 1 phiên.

W5b — GĐ-5 phần GATED (P7): sổ-khung-nhìn lượt đắt + truyền-nguyên-văn lane dispatch

  • GĐ: 5. Điều-kiện-vào: W5 đã thi công + anh phán P7 (2 vế — cả hai lane D xếp VƯỢT-KHUNG §7.1/§7.2).
  • TC chữa: TC-04 (D-14/15/16/17 — sổ lượt-đắt 5 cột · dòng-sống-kể-cả-chết-giữa-chừng · thiếu-tệp-lượt-đắt = severity CAO NHẤT) + TC-03 (D-4/5/11 — mảnh lời chủ nguyên văn ở lane dispatch).
  • Deliverable: (i) sổ-khung-nhìn lượt đắt = DERIVE-VIEW (không phải sổ chép tay — lane D §4a: dữ liệu ĐÃ nằm sẵn ở runs/ + dấu [engine: trong 8 tệp agent-memory + WAL): 5 cột {thời điểm · loại · đề bài · con trỏ vật chứng · kết luận}, regenerate-only, đề xuất đặt docs/governance/expensive-runs-view.md (VIEW đúng sàn-3 — anh chốt vị trí trong P7); vế-6: nối thiếu-tệp-ở-lượt-đắt = mức nghiêm trọng CAO NHẤT vào máy điểm danh W2. (ii) luật truyền-nguyên-văn lane DISPATCH: rào > anh: + đi-nguyên-khối + khai-thiếu — mở rộng từ pause.md:53 (rào ĐÃ CÓ nhưng chỉ phủ lane LƯU TRỮ — N1 từng khai sai chiều "chưa có rào", lane D §4b sửa); ca sống tự-quy-chiếu: prompt lane D chứa 0 khối > anh:.
  • Acceptance: lệnh sinh view chạy 2 lần cho kết quả y hệt (idempotent) + mọi con trỏ resolve · fault-inject: xoá 1 tệp trong run-folder lượt-đắt cây tạm → điểm danh in severity CAO NHẤT · sau khi luật dispatch land: spec-file của wave KẾ TIẾP chứa ≥1 khối > anh: nguyên văn (đo trên vật thật).
  • Lớp restart: A (+ đổi HÀNH VI dispatch của lead — không phải restart file).
  • Rủi ro + rollback: view đặt sai chỗ = nguồn-đôi với runs/ ⇒ header "DERIVED — regenerate, đừng sửa tay"; truyền-nguyên-văn đổi cách anh ra lệnh (lời anh đi thẳng vào prompt vai đắt, lead không tóm) — chính vì thế nó gated; CẤM tuyên "đã chứng minh" (hub tự khai vế này của họ đang bỏ-qua-có-khaithu-chinh:62(iii)).
  • Khối lượng: 7/20 khoản GĐ-5 thuộc cụm này. Ước 1 phiên. Đích sau W5+W5b: ~18-19/20 (D-8 giữ KHÁC có khai).

W6 — GĐ-6: Niêm phong đồng bộ + bảng gốc (mốc ký = ANH)

  • GĐ: 6. Điều-kiện-vào: mọi GĐ trong phạm-vi áp dụng của bản-đồ W0 đạt đã thi công — nay ĐÁNH GIÁ ĐƯỢC nhờ W0 (lane D §6.1: trước W0 trạng thái đúng là chưa-đánh-giá-được, thiếu vật tham chiếu). Phần gated anh chọn KHÔNG làm → lật ô per-khoản thành không áp dụng/hoãn CÓ KHAI trong fit-map + mục 10, rồi GĐ-6 vẫn vào được (phạm-vi-áp-dụng là phạm vi SAU quyết định của anh).
  • TC chữa: TC-09 (quét lại — chạy lại đúng máy ĐÃ VÁ ở W5) + toàn bảng gốc 12 TC (hợp đồng nghiệm thu cả gói).
  • Deliverable (mẫu số 17 khoản lane D §6.2 — hôm nay 3/17, thấp là bằng chứng TUÂN OD-2 chứ không phải chậm):
    1. Cổng đồng bộ 4 tầng chạy + dán kết quả (khớp / lệch-đã-khai từng tầng) · trace xuôi mảnh→spec→GĐ→vật chứng · trace ngược = liệt TỪNG khoản phạm-vi-tự-phình · đối chiếu 3 chiều bệnh→thuốc→bằng-chứng · soi riêng khoản áp-một-nửa.
    2. Cổng điểm danh: số-kỳ-vọng SUY TỪ danh sách (khuôn E-7 đã đạt 1 cổng — nhân rộng) + quét số-cũ-viết-cứng + mutation-test roster (bỏ 1 tên cây tạm → ≥2 bài kiểm đỏ — E-9) + đo E-8 (bài kiểm ghim TÊN hay ghim SỐ: grep -rn "VALID_ROLES|informRoles" .claude scripts tests soi từng chỗ).
    3. Luật E-10/E-11 trọn-gói-1-commit thành văn (vai mới vào cổng khi CÙNG commit đủ 4 vế) — áp ngay cho vai P4 nếu anh đẻ; đối chứng tên 2 chiều + phản chứng (dựa chuẩn W1 — E-12).
    4. Bảng gốc 12 TCdocs/governance/adap-reports/upgrade-pack-phased-bang-goc.md: mỗi ô {số · lệnh tái lập · ngày đo}; 4 ô hub GIỮ CHỮ (TC-02 chưa có dụng cụ · TC-03 chưa đủ mẫu · TC-07 chưa có dụng cụ · TC-10 KHÔNG ĐO ĐƯỢC); TC-03/TC-09 phía SE = không áp dụng CÓ KHAI; TC-10 khai là lỗ CHỮA; 🔴 CẤM chữ "đã được kiểm chứng" trong MỌI ô (nấc đó CHỈ hub cấp).
    5. Bảng A16 máy⟂tay 3 NẤC đủ 21 script từng-tên (M1 = 1 hook Stop/wal-flush · M2 = 17 máy-qua-nghi-thức · M3 = 3 mồ côi; cột "fire tự động?" — thang 2 nấc là thang HỎNG, lane F §1.1) + quét rò-rỉ-đặc-thù-nội-bộ trên bản gửi hub, khai máy-hay-tay của chính phép quét.
    6. Quét đồng bộ tài liệu tick từng cái (danh sách chốt trước) · bản-nháp-dấu chờ-ký, ô RC-mark ĐỂ TRỐNG (E-14 cơ chế ĐÃ ĐỦ — schema RC-pqhuy1987-… ACTIVE-MARKS; người thi công KHÔNG tự cấp dấu) · báo cáo cuối khuôn B 10 mục + chạy 7 dòng Tự-chấm-nhanh → anh duyệt → gửi hub · nấc đã được kiểm chứng chỉ flip SAU hub soi (E-16).
  • Acceptance: grep -c '^| TC-' …bang-goc.md = 12 · 4 ô chữ đúng nguyên văn tại đúng 4 dòng · mutation-test: bỏ 1 tên → ≥2 kiểm đỏ, trả lại → xanh · grep -rc "đã được kiểm chứng" <artifact gói phía SE> = 0 · bảng A16 đủ N dòng script (N = số đo lại @S181 = 23 script + 1 hook; thước cũ ghi 21 — xem tracking §7) · ô RC-mark rỗng cho tới khi anh điền · báo cáo cuối có mục 6 (làm-khác) + mục 8 (phản biện: F-1 · GĐ-0-TC · TC-10 · trường-7 · nơi-đọc-mã-thoát · A10) + mục 10 (nợ có mốc).
  • Lớp restart: A (+ B nếu P4 có vai mới vào trọn-gói).
  • Rủi ro + rollback: tự flip nấc kiểm-chứng = vi phạm luật nấc (CẤM — chỉ hub); niêm phong khi wave gated còn treo-không-khai → chặn bằng fit-map per-khoản; mutation-test chạy trên CÂY TẠM, không đụng roster thật. Rollback: mọi thứ giữ DRAFT tới khi anh ký RC.
  • Khối lượng: 17 khoản (3/17 → đích 17/17 hoặc từng-khoản khai). Ước 1-2 phiên + vòng hub.

§T — BẢNG TỔNG 7 WAVE (+3 sub gated)

Wave TC (mã) Lớp A/B/C Trạng thái Deliverable 1 câu
W0 0 TC-06 (tạm gán — ngoại lệ CÓ KHAI, trình hub 2 đường) A chạy-ngay (nút P6 1 dòng đầu wave) Sổ đã-nhận 24 dòng + fit-map 7 dòng + tracking 20 khoản + adap-report tiếp nhận (draft)
W1 1 TC-11 A chạy-ngay (sau W0) Kiểm kê máy-đọc-tên → chuẩn-tên duy nhất 6 nhóm + rename-ledger + naming-scan INFORM
W2 2 TC-04 · TC-05 (+rider TC-08/TC-06) A tự-chạy (phiên sau, sau W1) Máy 4-vị-từ đo-NGHĨA + mục-lục-sống runs/ + điểm-danh-2-nguồn + 4 rider vá máy
W3 3 TC-06 · TC-07 · TC-08 (TC-10 = chỉ khai-báo) A+B+C tự-chạy (carve-out P5) 4 nhãn + vòng-hỏi-ngược + bảng 19 cửa tiền-kiểm + gói-B persona + luật 3-bậc (P5)
W3b 3 TC-06 · TC-08 A 🔴 chờ-anh P1 (+soak jump ≥1 phiên) Cổng mã lỗi thang-4 theo PA anh chọn (PA-1/2/3/4)
W4 4 TC-01 · TC-02 · TC-12 A+C 🔴 chờ-anh P2 (rồi máy chạy) Sổ 3 khối + mã vĩnh viễn + chống-A1 + cắm 2 kỷ luật CLAUDE.md + máy dò 2-số
W4b 4 TC-12 · TC-01 (+A9) B+C 🔴 chờ-anh P4+P8 (+P3) Chấm điểm 4 tầng + 3 mốc + khối in 2 cửa — lượt đầu PHẢI in KHÔNG ĐO ĐƯỢC
W5 5 TC-09 · TC-04 · TC-03 A tự-chạy (sau W4) Vá spawn-model-audit (2 đường + mẫu số) + resolveModel tường minh + luật D-10/D-12
W5b 5 TC-04 · TC-03 A 🔴 chờ-anh P7 Sổ-khung-nhìn lượt đắt (derive-view) + truyền-nguyên-văn lane dispatch
W6 6 TC-09 quét lại + bảng gốc 12 TC A(+B) 🔴 chờ-anh (mốc ký RC) Cổng 4 tầng + trace 2 chiều + mutation-test + bảng gốc + A16 3-nấc + báo cáo cuối

Bất biến đã kiểm: 10/10 dòng đều trỏ ≥1 mã TC (W0 = ngoại lệ CÓ KHAI duy nhất, đúng luật cho phép) · thứ tự GĐ-0→6 tuần tự, 0 nhảy cóc, 0 ăn lẹm · 4 ô chữ hub không bị điền số ở bất kỳ wave nào · mọi khoản VƯỢT-KHUNG nằm trong sub-wave gated hoặc P-list, KHÔNG trộn vào wave tự-chạy · mọi wave có mẫu số khai "đếm cái gì" · mỗi wave qua gate reviewer riêng + 1 vòng vá mặc định (hub tự khai 6/6 lượt chấm chéo KHÔNG ĐẠT lần đầu; SE cùng hướng: ring1 32Đ/6T).

§P — CHỜ-ANH PHÁN (8 câu — khuyến nghị hỏi 1 LẦN ngay sau W0; hỏi ≠ thi công, không phạm OD-2)

# Câu hỏi Phương án (KHÔNG tự chọn) Mở khoá
P1 Xung đột 1: exit-0-advisory ⟂ cổng-chặn-mã-lỗi PA-1 kéo-dài-ranh-có-sẵn · PA-2 2-mã-thoát-mỗi-máy (phân loại 70 cờ) · PA-3 thang-ở-dòng-in (làm-KHÁC, khai hub) · PA-4 cửa-sau-có-răng (tiền-kiểm cửa kế chặn) — bảng cân lane C §A.6; ranh có sẵn memory-archive-gate.ps1:323-325 W3b
P2 Xung đột 2: sổ = đường-ghi-chính (ĐÃ KÝ) ⟂ sàn-3 cấm nguồn-đôi — xung đột THẬT chỉ 1 cột trạng thái PB-1 sổ giữ LỜI, trạng-thái = VIEW trỏ WAL · PB-2 sổ = REQUEST ⟂ WAL = TASK (cần anh SỬA luật ratify tiep.md:181+pause.md:117) · PB-3 nâng cấp HANDOFF thành sổ (phá hợp-đồng lean) — lane C §B.5. Kèm vế VK-5: có cho nhập bảng HANDOFF:10-17 làm ngoại lệ duy nhất? W4
P3 Xung đột 3 (ứng viên lane F §7): hub A10 tập tín hiệu PHẢI TỪ CHỐI nhãn mới ⟂ SE slot(68) CỐ Ý MỞ (tiền lệ anh S143) giữ-SE-mở + khai làm-KHÁC gửi hub · theo-hub-đóng (lớp mới chỉ sống ở error-ledger) cách viết A10 trong fit-map/báo-cáo + đường-ghi-lại W4b
P4 Đẻ vai mới: giữ-chuẩn-tên (G1-B2) · đọc-sổ tầng-2 · gán/đẻ tầng-3 + thu-hẹp-vai-cũ gật/không per-vai. Số học phải cân: roster 26 file ⟂ hmw_width.cap=20 LOUD-skip; 8 vai đang thiếu baseline measured{}; E-10 trọn-gói-1-commit W4b (+phần vai W1/W6)
P5 Luật tự-trị 3 bậc (rõ→tự-vá · mơ-hồ→nhánh-an-toàn · hỏi khi mơ-hồ+phá-huỷ) — gật NỘI DUNG + đích NGUỒN = ACTIVE-MARKS (ST-002 trỏ về) gật nguyên văn / sửa lời / không adopt khoản W3.4 + ST-002 của W4
P6 broadcasts/_index.md:7: thư đại-trà ghi đâu? (a) mở INBOUND _index (rẻ — hợp thức hoá 22 dòng đang sống) · (b) sổ mới + gỡ 22 dòng W0.2 (bù 24 dòng)
P7 GĐ-5 hai khoản lane D xếp vượt-khung (i) vị trí sổ-khung-nhìn lượt-đắt (đề xuất docs/governance/expensive-runs-view.md, derive-only) · (ii) truyền-nguyên-văn lane dispatch — lời anh đi NGUYÊN KHỐI vào prompt vai đắt (đổi cách anh ra lệnh) W5b
P8 Wire khối chấm điểm vào session-start.md + session-end.md (nghi thức 2 cửa là vật anh chốt) + chấp nhận nhịp INFORM-only ≥3 phiên gật / hoãn W4b

§R — RỦI RO CAO NHẤT (xếp hạng)

  1. Nguồn-đôi sổ⟂WAL (W4) — rủi ro số 1 toàn gói (lane F §4.3). Rào: ranh LOẠI-NỘI-DUNG (3 khối WAL-không-có; 4/7 hàng trống thật đã đo) + P2 chốt TRƯỚC khi build + sổ vào tiep_reload.sources kẻo chết.
  2. Bề mặt nổ máy-đang-sống (W2/W3b/W5)nhip-no-probe 6 cửa · governance-detectors = máy /session-end · spawn-model-audit 2 cửa. Rào: Q5 fault-inject cây tạm BẮT BUỘC + backup checkout-1-lệnh.
  3. Chấm điểm in SỐ ở lượt đầu (W4b) — vi phạm ngay luật vừa ký (luat:66); máy đọc nguồn thưa luôn cho 10/10 (hub đã đo). Rào: acceptance ép KHÔNG ĐO ĐƯỢC + INFORM ≥3 phiên.
  4. Restart-layer lẫn (mọi wave B/C) — đo trước restart tưởng-hỏng / tưởng-ăn. Rào: trình tự Q4 + mỗi wave B/C có 1 phép đo CHỈ-XANH-SAU-restart, ghi sẵn trong acceptance.
  5. Jump bật không soak (W2→W3b) — 8-12 class nợ tồn kêu cùng lúc, người tưởng máy hỏng và tắt. Rào: INFORM ≥1 phiên + freeze-baseline khuyến nghị + khai trong output lượt đầu.
  6. Goodhart sau khi có cổng (W3b) — áp lực giảm-số-cờ bằng đổi-hình-dạng-thứ-bị-đo. Rào: luật "hạ cờ không kèm commit sửa bệnh = phải khai" + không sinh tệp mốc để né cổng = rời-tập-đo (đã ghi trong PA-1 trade-off).

§L — WAVE BỊ LOẠI / NGOẠI LỆ CÓ KHAI / KHÔNG-MỞ-WAVE

  • Loại: 0 wave. 10/10 dòng có mã TC. (Nếu W0 không được phép dùng ngoại lệ thì theo luật hub phải LOẠI GĐ-0 — vô lý vì nó là enabling; đã trình hub cả 2 đường ở mục 8 adap-report.)
  • Ngoại lệ CÓ KHAI duy nhất: W0/GĐ-0 — N4 chọn đường 2 của lane E (tạm gán TC-06, có ca sống A0-3 làm bằng chứng), đồng thời nêu đường 1 (hub thêm ngoại-lệ enabling vào luật) cho hub phán. KHÔNG dùng câu chữ "điều kiện tồn tại của mọi TC" vào ô TC.
  • KHÔNG mở wave cho (đã cân, có lý do): tools-whitelist-no-teeth (anh chốt GIỮ @S179 "tha CA NÀY không tha cơ-chế" + SE tự khai ≥7 persona = đúng vế-2 thuốc LỚP-9 — lane E §1.6) · vòng-vá LỚP-3 (đã sống trong cấu trúc N1→N5; thay bằng luật 1 vòng vá/wave mặc định §T) · đề xuất N1 "W5 ghép W2" (BÁC vĩnh viễn — F-01: vi phạm điều-kiện-vào GĐ-5 lẫn OD-2; không tái xuất dưới mọi dạng) · session_ctx_kb + pull_warn_days (KHÔNG phải ghost-wire — đã đóng @S153 / cố-ý-trống-có-khai; đưa vào E-6 errata, không vào wave).
  • TC-10 không có wave chữa = ĐÚNG THIẾT KẾ khai lỗ (lane E §4.4: lỗ CHỮA duy nhất, 3 ô chữ còn lại chỉ là lỗ NGHIỆM THU) — đã chuyển hub ở W0 mục 8; SE chỉ adopt trần-hướng-dẫn + nghĩa-vụ-khai ở W3, có dán nhãn khai-báo, không phải thuốc.

§S — TRẢ LỜI DỨT KHOÁT: chạy NGAY ⟂ chờ ANH

  • Chạy NGAY trong phiên còn lại: W0 (trọn — chỉ cần anh gật P6 một dòng ngay đầu wave), rồi W1 nếu còn thời lượng (điều-kiện-vào tự thoả khi W0 đóng; không quyết định owner nào chặn lõi W1). Kèm việc song-song hợp lệ: phát 8 câu P1..P8 cho anh NGAY SAU W0 — hỏi không phải thi công, không phạm OD-2 (lane A §6 việc-5); hỏi muộn thì W3b/W4/W4b/W5b treo dây chuyền.
  • Tự-chạy các phiên sau, KHÔNG cần anh phán (theo chuỗi, mỗi wave 1 gate + 1 vòng vá): W2 → W3 (trừ khoản P5) → W5.
  • BẮT BUỘC chờ anh trước khi động: W3b (P1) · W4 (P2) · W4b (P4 + P8, +P3) · W5b (P7) · W6 (điều-kiện-vào + mốc ký RC là của anh).

END wave-plan-S180 — VERDICT=PLAN-CHỐT: 7 wave + 3 sub gated · W0/W1 chạy-ngay · 5 điểm chờ-anh (8 câu P) · 0 wave loại · 1 ngoại lệ CÓ KHAI (W0/TC-06) · TC-10 = lỗ-chữa khai hub · bất biến OD-2 + 4-ô-chữ + mẫu-số giữ trọn.