5.7 KiB
run: 2026-07-29-S160-khkk-dryrun-plan — DRY-RUN toàn trình đến Hợp đồng cứng (Plan cha + spec/checklist per-wave)
Mở @S160 2026-07-29 ~15:45 (L8 window-2, ngay sau chốt đóng đầu việc arc-2). 🔴 Sub-file ghi-đĩa-TRONG-lúc-làm (chống #53). RAW
sub-*⟂ VERIFIED*-synthesis.md/spec (lead viết).
🔴 LỆNH ANH (verbatim, 2026-07-29 @S160)
"Hiện tao quyết định sẽ dry-run luôn cho đến hợp đồng cứng. Hợp đồng cứng trong folder D:\Dropbox\CONG_VIEC\SOLUTION\FORM Còn quy trình và cách đặt tên: D:\Dropbox\CONG_VIEC\SOLUTION\QUY_TRINH Spec vừa rồi build đúng rồi đó. Giờ cho 2 /fable-real invest bổ sung lại cái spec củ để chạy dry-run luôn đến hợp đồng cứng -> Ra cái spec-chi-tiết-cách-làm-checklist-cho cụ thể từng wave (Mỗi wave cho 1 spec-chi-tiet-cach-làm cu thẻ và checklist )luôn. (Lập 1 cái plan cha cho cái này luôn). /fable-clone review lại. /fable-real review lại chốt cuối. Sau đó cho Opus 5 MAX chạy hwm dry-run hết các wave ->Dựa vào Plan cha chạy từ spec cụ thể cho từng wave và kiểm tra luôn."
Đọc-hiểu chốt (lead — vá drift theo lane-1 F-09/F-20 + spec :27): ① spec KHKK cũ = RATIFIED, chỉ BỔ SUNG không viết lại · ② phạm vi mở rộng theo ranh ĐÃ CHỐT @S159 (spec :27): GĐ2 = b.7→12 (KHKK, spec cũ W1-W5; b.7 email BỎ — Q8 ĐÓNG) + GĐ3 Duyệt hợp đồng = b.13→18 (tận dụng Contract V2) + GĐ4 Hợp đồng cứng = b.19→21, ký cứng UPLOAD-ONLY (Hdc_* skeleton → trang thật) — 🧊 bản đầu run.md này viết "GĐ3 (b.13→21)" = SAI (13→21 là span verdict-LAI, không phải span GĐ3). Nhãn GĐ2: "Đề xuất ký kết hợp đồng" (spec :27, đời sáng @S159) → superseded "Kế hoạch ký kết HĐ" (PAUSE-1 chốt cuối + prod Khkk_G1 seeder) — Plan cha dùng nhãn MỚI, class/bảng English ContractSigningPlan* GIỮ — toàn trình chạy được end-to-end dạng dry-run để mọi người bấm thử + góp ý (khớp ❹ @S159) · ③ deliverable đợt này: 1 Plan cha + mỗi wave 1 spec-chi-tiết-cách-làm + checklist · ④ lệnh này ĐỒNG THỜI là lời giải cho gate "Wave 5 chạm HĐ ⇒ hỏi lại anh" (HANDOFF) — anh chủ động mở; riêng LỖ HỔNG authz S156 vẫn phải khoanh vùng đưa vào spec cho review chốt, KHÔNG tự coi là được sửa hay được bỏ qua.
Nguồn PIN
| Nguồn | Path | Ghi chú |
|---|---|---|
| Spec KHKK cũ (RATIFIED) | runs/2026-07-28-S157-ke-hoach-ky-ket-hd/spec-ke-hoach-ky-ket-hd-28-07-2026.md |
+NOTE W1 @S160 (Khkk_* tái dùng, dark-launch ĐẢO) |
| QT trình ký 21 bước | runs/2026-07-28-S157-ke-hoach-ky-ket-hd/src-QT-TRINH-KY-HD.txt (14.425B) |
extract S157 từ QUY_TRINH docx |
| FO-002.01 Bảng kiểm tra HĐ | runs/2026-07-28-S157-ke-hoach-ky-ket-hd/src-FO-002.01-bang-kiem-tra-HD.txt (21.287B) |
checklist per-phòng |
| RG-001 v02 mã số HĐ | runs/2026-07-29-S160-khkk-dryrun-plan/src-RG-001-v02-ma-so-hd.txt (2.907B) |
extract @S160 — DIFF với forms-spec/codegen repo (repo parse Phase 0) |
| Catalog 8 form | docs/forms-spec.md + FORM folder (6 template .doc/.docx/.xlsx còn lại) |
form-engine đã render 8 form |
| Verdict LAI b.7→21 | STATUS ✅S155→S158 mục ② | b.13→21 TÁI DÙNG Contract V2 · b.7→12 DỰNG MỚI |
taskList snapshot
| # | Stage | Vai / cách | Trạng thái |
|---|---|---|---|
| 1 | Scaffold + extract RG-001 v02 | lead | [x] |
| 2 | invest lane-1: NGUỒN/QUY-TRÌNH GĐ3-GĐ4 (b.13→21 chi tiết + RG-001 v02 diff + FO-002.01 checklist-map + "hợp đồng cứng" = gì cụ thể) | /fable-real investigator-codebase #1 |
[ ] |
| 3 | invest lane-2: CODEBASE dry-run map (PE→KHKK→Contract→Hdc gap-map + reuse Contract V2 + authz khoanh vùng + dry-run mode + wave structure đề xuất) | /fable-real investigator-codebase #2 |
[ ] |
| 4 | Plan cha + spec-chi-tiết + checklist per-wave | lead (từ 2 invest + spec cũ) | [ ] |
| 5 | Review ensemble | /fable-clone reviewer |
[ ] |
| 6 | Review chốt cuối | /fable-real reviewer |
[ ] |
| 7 | hmw Opus-5-MAX chạy dry-run từng wave theo Plan cha + kiểm | hmw (worker-tier-pin) | [ ] |
Ràng buộc mang theo (từ sổ bền)
- 🔴 GATE 5-ANCHOR (HANDOFF, reviewer đề @S157): trước thi công MỖI wave mở 5 anchor bất kỳ; ≥1 trượt ⇒ chấm lại TOÀN BỘ anchor wave đó. → nhúng vào Plan cha.
- 🔴 Authz HĐ (S156):
ContractWorkflowService.cs:48-66Reject-trước-guard +ContractsController.cs:13[Authorize]trần 22 endpoint ghi — dry-run mở menu cho mọi người ⇒ phải khoanh vùng + đề phương án trong spec (review chốt quyết). - 🔴 KHÔNG SQL tay cho menu (gotcha #84) — mọi thay đổi menu/permission qua seeder.
- 🔴 Khkk_* + Hdc_* skeleton ĐÃ TỒN TẠI prod (arc-2) — tái dùng, ComingSoon → trang thật; seeder skip-existing.
- Acceptance đo-được kiểu spec cũ: pin N + TÊN test (H5), tránh literal tự-lão-hoá (neo TÍNH-CHẤT).
Stages
- 1. scaffold + extract (15:45-15:50)
- [!] 2+3. 2 lane
/fable-real investigator-codebasemodel=fable PHÓNG SONG SONG ~15:55 (lane-1 nguồn GĐ3-GĐ4 →sub-investigator-codebase-1.md· lane-2 codebase map →sub-investigator-codebase-2.md— cả 2 ghi-đĩa-trong-lúc-làm, kết bằng END+TOTAL line)- lane-2 lượt-1 ~16:03: #53 garble (return = mẩu "## Q2 — Bridge…"); đĩa cứu §0-§2 (Q1-Q2, 11.039B ruột thật — Q1 có RE-VERIFY line-trôi vs S156 do arc-2 thêm ListDeleted); SendMessage-resume làm nốt Q3-Q7 append cùng file