3.7 KiB
3.7 KiB
ship-synthesis — W7 KHKK GĐ4 "Hợp đồng cứng" 1-MỐC (VERIFIED, lead tổng hợp @S162 2026-07-30)
Wave build 5/5 (W1→W2→W3→W6→W7) của dry-run KHKK. Commit
3119cb9(12 file, +1358/−18) — cicd PASS 3/3 chân.
Giao được gì (đúng chốt @S161 "Upload file cứng lên → Là xem như xong")
- BE (+31/−4, đo 2 phương pháp — errata BE tự-khai +35):
ListContractsQuery+ContractType? typefilter server-side (F-C1/F-05) + DTOHasSealedCopyderiveAttachments.Any(purpose=SealedCopy=3)append-cuối default false. 0 policy mới · 0 migration · attachment endpoints 0-diff (O-A giữ). - FE ×2 SHA-PAIR (
C7DCC20B…): trang/hard-copies— list phase=9 hardcode phía gọi + badge bản-cứng + panel upload multipart (file+purpose=3+note) khớp endpoint Contract có sẵn + Ý kiến cấp duyệt readonly + hộp amber "ký/đóng dấu NGOÀI hệ thống". 7 leafHdc_*re-point?type=1..7, coming-soon co-occurrence 0/0. - Tests:
ContractHardCopyTests3 PIN — suite 587→590/0; probe vi-phân_TempMutationProbe.cs(tạm, đã xoá + verify 2 chiều) 5/5 phân biệt bản-hỏng (>=DangDongDau,>=DaPhatHanh, bỏ-type,>=ScannedSigned,Any()); 2 invariant ghim: cờ-không-xét-phase (FE chặn ở phía gọi) + cờ-chết-2-màn (Đã xóa/Hộp thư default false — 3 căn cứ giữ nguyên).
Chuỗi verify
| Cổng | Kết quả |
|---|---|
| Gate 5-anchor | 5/5 |
| Review adversarial | PASS-có-điều-kiện → điều kiện ĐÃ XỬ (FLAG-1 untracked→F-0 gate; FLAG-2/3 comment vá giữ SHA-pair; FLAG-4 UX backlog) |
| CI #431 | success ~5m50s · gate 590/590 tách-phần 45+545, delta +3 Infra khớp đúng 3 PIN |
| sqlcmd prod | MenuItems 142 GIỮ · __EFMigrationsHistory 69 GIỮ · tables 96 · pool recycle PID 5576 StartTime 00:23:20 > DLL mtime 00:21:02 |
| Bundle ×2 | rotate 4/4 · marker khớp dự-đoán-chốt-trước từng đồng: hasSealedCopy=1 · hard-copies=10 · DƯƠNG 7 (distinct 1..7) / ÂM 0 · control 3-tầng old-hash+fake-hash→text/html |
| Smoke | ?phase=9 200 · ?phase=9&type=1 200 · âm ?type=999 400 ValidationProblemDetails thật · route bịa 404 |
Treo có chủ đích (KHÔNG phải lỗi)
hasSealedCopyper-item UNVERIFIED-LIVE — prod 0 hợp đồng (sqlcmd CONTRACTS_TOTAL=0) ⇒all()trên N=0 không tính. Tự đóng khi E2E (sau W5) tạo HĐ đầu tiên → re-curl?phase=91 lần.- §3.1 an-ninh hồ sơ W8: upload/download attachment Contract 0-rào (hiện trạng O-A anh chốt để mở; W7 thêm lối vào nổi bật nhưng không mở rộng bề mặt lộ).
- FLAG-4 UX backlog: multi-file upload dùng chung 1
note+isPendingchỉ phản ánh mutation cuối.
Bài học wave (đã ghi run.md + diaries)
- Memory-pack slice lead soạn cũng là giả-định — lane BE đo và bác (
IsDeletedkhông tồn tại trênContractAttachment). - "Số đoán trúng ≠ số đo được" — test lane tự cắt §5-§8 viết-trước-đo rồi đo lại.
- Control ÂM chỉ có nghĩa khi vế DƯƠNG cùng hình-dạng regex trả >0 (regex nháy-kép chết trên bundle backtick — suýt FALSE-CLEAN).
- PS5.1
commit -m @'…"…'@vỡ native-arg mà; pushvẫn chạy ⇒ message-có-quote dùng-F <file>+ tách commit/push. - #53 ×3 wave này (FE lane, reviewer, cicd) — 0 byte mất nhờ sub-md ghi-từng-mục; cicd còn 2 chân đo-xong-trước-garble, resume nối đúng chỗ.
W7 ĐÓNG ⇒ HẾT wave build được. Còn lại: W5 (cầu KHKK→HĐ) + E2E — BLOCKED chờ anh chốt NGƯỜI DUYỆT 3 trạm (PRO/CCM/CEO trong 18 user prod).