24 KiB
sub-investigator-codebase-1 — LANE-1 NGUỒN/QUY-TRÌNH GĐ3-GĐ4 (S160 dry-run toàn trình)
RAW invest — fable-real single-deep-pass. Nguồn PIN: run.md + 5 file + folder FORM. Trục: NGHIỆP VỤ từ tài liệu nguồn (KHÔNG đọc src/Backend, fe-* — đó là lane-2). Ghi-đĩa-trong-lúc-làm chống #53. Mỗi mục đánh số F-nn.
§0 — Nguồn đã đọc (log tuần tự)
- F-01.
run.mdđọc TRƯỚC TIÊN (lệnh anh verbatim :6-15; đọc-hiểu lead :17; ràng buộc :42-48). Chốt: spec KHKK cũ RATIFIED chỉ BỔ SUNG; toàn trình 4 GĐ ❶PE ❷KHKK ❸Duyệt HĐ b.13→21 ❹HĐ cứngHdc_*. - F-02.
src-QT-TRINH-KY-HD.txt(14.425B, paragraphs=38 tables=2). TABLE 1 = lưu đồ 12r×5c (cột shape flowchart MẤT khi extract — tên bước phải suy từ TABLE 2 + thứ tự trách nhiệm). TABLE 2 = diễn giải 10r×3c = 9 bước có tên. QT tự nó KHÔNG đánh số 13→21 — numbering toàn-trình là quy ước dự án (S156/S157: b.13→21 ↔ 9 bước ISO 1:1).
§1 — Câu 1: Bảng b.13→21 chi tiết (mirror khuôn spec cũ)
F-03. Căn chỉnh số bước ↔ 9 bước ISO (nguồn: QT TABLE 2 :59-68 + TABLE 1 SLA :47-55)
TABLE 1 hàng theo thứ tự (cột Trách nhiệm + Thời gian — tên bước ghép từ TABLE 2 cùng trách nhiệm):
| Hàng T1 | Trách nhiệm | SLA (QT ghi) | Bước TABLE 2 khớp |
|---|---|---|---|
| :47 | PB/BCH CT | (form SOL-PRO-SP-001) | Lựa chọn NTP/NCC |
| :48 | QS/NV.PB/TBP/TPB | 07 ngày | Soạn thảo HĐ |
| :49 | PD/PM/PRO/CCM/FIN/ACT | 07 ngày | Góp ý nội dung |
| :50 | QS/NV.PB/TBP/TPB/PD/PM | 07 ngày | Đàm phán thương thảo |
| :51 | NTP/NCC/TĐ | 07 ngày | In HĐ (NTP in-ký-đóng dấu trước) |
| :52 | CCM | 03 ngày | Kiểm tra |
| :53 | BOD/NĐUQ | 01 ngày | Duyệt |
| :54 | HRA | (không ghi) | Đóng dấu |
| :55 | PB/BCH CT/CCM | (không ghi) | Phát hành + Lưu trữ |
F-04. FO-002.01 đọc xong (40r×13c, 1 table)
Cấu trúc form: header thông-tin HĐ (:8-11 Phòng ban/Dự án · Loại HĐ tick-box · Tên đối tác · Nội dung) + 4 KHỐI KÝ per-phòng (:15-45) + LƯU Ý 3 luật (:46).
4 khối ký + mục tick từng khối (mỗi khối có Họ tên + Ngày):
- PHÒNG BAN/DỰ ÁN — ĐỀ XUẤT (
:15-20): tick ①Soạn thảo ②Nội dung HĐ - PHÒNG CUNG ỨNG — PRO (
:21-30): tick ①Điều khoản HĐ ②Điều khoản t/toán ③Rủi ro pháp lý HĐ - PHÒNG CCM (
:31-40): tick ①G/trị HĐ so với NS ②Rủi ro pháp lý HĐ - GIÁM ĐỐC / NĐUQ (
:41-45): "Ký kết, phát hành" (1 mục)
LƯU Ý (:46) — 3 luật nghiệp vụ:
- (a) HĐ Chủ đầu tư: đơn vị đề xuất chuyển TRỰC TIẾP Giám đốc (bỏ PRO+CCM). Mọi loại còn lại PHẢI qua PRO và CCM trước. → khớp cờ
BypassProcurementAndCCMđã có trong code (lane-2 verify). - (b) Mỗi bộ phận CHỈ 01 NGÀY xử lý; quá 01 ngày chưa xong = XEM NHƯ ĐÃ THÔNG QUA (auto-pass). Kéo dài phải báo bộ phận soạn thảo + ghi chú vào "Ý kiến". → mâu thuẫn V2 no-auto-approve (đã biết S157, owner O-2: SLA=tham khảo).
- (c) Bảng kiểm tra PHẢI lưu kèm bộ hồ sơ gốc → FO-002.01 là ARTIFACT của bộ HĐ cứng, không chỉ màn hình.
Tick-box Loại HĐ trên form (:9): 6 lựa chọn = Chủ đầu tư / Nhà cung cấp / Thầu phụ / Tổ đội / Thiết bị thuê / Khác — KHÔNG 1:1 với 7 ContractType repo (không có Mua bán/Dịch vụ/Nguyên tắc riêng; có "Thiết bị thuê" + "Khác" mà repo không có). Ghi nhận diff phân loại, form-render cần map.
Chuỗi ký FO-002.01 = ĐỀ XUẤT → PRO → CCM → GIÁM ĐỐC. QT TABLE 2 chỉ nêu cover được ký ở b.17 (PD/PM/TPB), b.18 (CCM), b.19 (BOD) — PRO không có trạm riêng trong lưu đồ QT nhưng có khối ký trên cover + LƯU Ý (a) buộc "qua PRO và CCM". → QT mơ hồ chỗ này; đề xuất: PRO ký cover trong khoảng b.17→b.18 (sau ký nháy nội bộ, trước CCM).
F-05. RG-001 v02 đọc xong (2.907B)
Mã HĐ A/B/SOL&C/D (:7): A=Code dự án HOẶC Năm (HĐ dịch vụ/nguyên tắc) · B=viết tắt loại HĐ · C=viết tắt TP/NCC/TĐ/NC/ĐVDV · D=STT từ 01.
Bộ viết tắt loại HĐ v02 CHỈ CÓ 4 (:12-16): HĐTP · HĐGK (Giao khoán/Đội thi công/Nhân công cơ hữu) · NCC · HĐDV. KHÔNG có "MB" (Mua bán) — trong khi repo codegen có 7 type gồm HopDongMuaBan → {Project}/MB/SOL&{Sup}/{Seq}.
6 ví dụ mã HĐ (:46-51): FLOCK 01/HĐTP/SOL&HD/01 · FLOCK 01/HĐGK/SOL&PVL/01 · FLOCK 01/NCC/SOL&CC1/01 · 2026/NCC/SOL&AKATI/01 (nguyên tắc=Năm) · FLOCK 01/HĐDV/SOL&KG/01 · 2026/HĐDV/SOL&TTL/01.
2 dạng PO:
- PO THEO HĐ nguyên tắc (
:25, ví dụ:54):X/Y/PO Z={ProjectCode}/{NCC-abbr}/PO {Seq}— ví dụFLOCK 01/TRUNGDUNG/PO 01. KHÔNG cóSOL&, KHÔNG có token loại HĐ, "PO" đứng TRƯỚC seq có DẤU CÁCH. - PO KHÔNG theo HĐ nguyên tắc (
:36, ví dụ:57):A/PO/SOL&C/D— ví dụFLOCK 01/PO/SOL&PVL/01. "PO" chiếm vị trí loại-HĐ, cóSOL&.
Mã cho PHIẾU KHKK: RG-001 v02 KHÔNG quy định — văn bản chỉ cover mã HĐ + mã PO. (Đề xuất ở §3.)
§3 — Câu 3: DIFF RG-001 v02 vs bản repo (forms-spec.md)
F-06. Kết luận DIFF: forms-spec.md = parse của CHÍNH file v02 → 0 lệch trên format
Folder FORM chỉ có 1 file RG-001 = SOL-CCM-RG-001.v02 QD ma so hop dong.docx (46.147B, mtime 2026-03-19) — tức Phase 0 đã parse đúng bản v02, không có v01 nào khác trên đĩa. Đối chiếu TỪNG dòng:
| Điểm | RG-001 v02 (src :dòng) | forms-spec.md (:dòng) | Verdict |
|---|---|---|---|
Format HĐ A/B/SOL&C/D |
:7 |
:82-87 6 row |
KHỚP 6/6 ví dụ nguyên văn (kể cả FLOCK 01 có DẤU CÁCH) |
| 4 viết tắt HĐTP/HĐGK/NCC/HĐDV | :12-16 |
:82-87 cột Loại |
KHỚP (HĐGK gồm Tổ đội/NC cơ hữu ✓) |
| Nguyên tắc → Năm thay ProjectCode | :8-9 + ví dụ :49,:51 |
:85,:87 |
KHỚP |
PO theo HĐNT X/Y/PO Z (không SOL&, "PO␣01") |
:25,:54 |
:93 |
KHỚP |
PO không theo HĐNT A/PO/SOL&C/D |
:36,:57 |
:94 |
KHỚP |
3 điểm KHÔNG-khớp-hoàn-toàn (đắt cho lane-2):
- 🔴 "MB" (Mua bán) KHÔNG TỒN TẠI trong RG-001 v02 — v02 chỉ định nghĩa 4 viết tắt (
:12-16), KHÔNG có MB; forms-spec cũng không có row MB. NHƯNG codegen repo (skill contract-workflow, bảng Mã HĐ gen) cóHopDongMuaBan → {Project}/MB/SOL&{Sup}/{Seq}— tức "MB" là SÁNG TÁC của repo, không có gốc quy định. HĐ Mua bán (template FO-002.06 có thật) dùng mã gì theo v02? Nguồn CÂM. Đề xuất default dry-run: GIỮ "MB" hiện trạng (đổi codegen giữa dry-run = rủi ro), flag chờ anh ratify (option: map Mua bán→NCC hoặc →PO). Lane-2 check consumer. - Scope reset Seq: v02 CÂM — chỉ ghi "đánh số tăng dần bắt đầu từ 01" (
:19-20), KHÔNG nói seq reset theo gì. forms-spec:96diễn giải "theo dự án + loại HĐ + đối tác" = interpretation hợp lý (codegen per-prefix khớp), nhưng cần biết đây là suy, không phải quy định. - Chữ "dịch vụ/nguyên tắc" mơ hồ ở
:8("Năm đối với HĐ dịch vụ/nguyên tắc") — nếu đọc chữ, HĐDV cấp-riêng cũng dùng Năm; nhưng ví dụ:50=FLOCK 01/HĐDV/...(ProjectCode) → ví dụ THẮNG chữ: Năm CHỈ cho nguyên tắc. forms-spec đã resolve đúng theo ví dụ.
F-07. Mã cho PHIẾU KHKK: RG-001 v02 KHÔNG quy định
v02 chỉ cover mã HĐ + mã PO (2 loại). Không có mã phiếu trình/kế hoạch nào. → khai "nguồn không nói". Đề xuất default (mirror tiền lệ PE PE/{YYYY}/{A|B}/{Seq:D3} là mã tự đặt của hệ thống, không từ QĐ nào): KHKK/{YYYY}/{Seq:D3} atomic sequence, hiển thị trên phiếu + list; chờ anh ratify (spec cũ đã đề gì → xem §F-08 sau khi đọc spec).
§2-pre — Câu 2 chất liệu: folder FORM + "hợp đồng cứng" vật lý
F-08. Danh mục FORM folder (8 file, ls 2026-07-29 — khớp forms-spec 8 form, KHÔNG file mới)
| File (bytes, mtime) | Loại | Nhận diện |
|---|---|---|
| FO-002.01.v01 Bảng kiểm tra (113.214B docx) | Cover/checklist | ĐÃ extract S157 |
| FO-002.02.v01 Trọn gói NC+VT (516.608B .doc) | Template HĐ cứng | thầu phụ trọn gói |
| FO-002.03.v01 Trọn gói NC+TB (591.360B .doc) | Template HĐ cứng | thầu phụ trọn gói TB |
| FO-002.04.v01 Điều kiện chung (192.608B docx) | Appendix cố định | đính kèm HĐ trọn gói |
| FO-002.05.v01 HĐ Giao khoán (459.676B docx) | Template HĐ cứng | 10 table |
| FO-002.06.v01 HĐ mua bán (356.864B .doc) | Template HĐ cứng | NCC vật tư/TB |
| FO-002.07.V01 Đơn đặt hàng (1.032.615B xlsx) | Template PO | 3 sheet (SS GIA/PO/Po01 NLT) |
| RG-001.v02 QĐ mã số (46.147B docx) | Quy định | extract @S160 |
→ "6 template còn lại" = 002.02→.07. 3 file .doc (02/03/06) vẫn chưa convert (forms-spec TODO Phase 2 còn treo). mtime mới nhất 2026-03-19 = KHÔNG có bản mới sau Phase 0 parse → catalog forms-spec vẫn đúng hiện trạng đĩa.
§1 (tiếp) — Câu 1: bảng b.13→21 + ranh GĐ3/GĐ4
F-09. 🔴 RANH GĐ3/GĐ4 KHÔNG cần suy từ QT — OWNER ĐÃ CHỐT @S159
Spec cũ :27 (verbatim owner ratification): "ranh GĐ2 = b.7→12 (b.12 chốt con số ∈ GĐ2) · GĐ3 = b.13→18 tận dụng Contract V2 · GĐ4 = b.19→21 + ký cứng upload-only". QT tự nó KHÔNG chia giai đoạn (1 quy trình 9 bước liền); ranh là quy ước dự án đã ratify.
⚠️ DRIFT trong run.md :17: lead viết "GĐ3 Duyệt hợp đồng (b.13→21…)" — đọc đúng phải là khúc 13→21 = verdict LAI (toàn bộ tái dùng Contract), còn RANH GĐ3/GĐ4 = 13→18 / 19→21 theo owner @S159. Plan cha PHẢI dùng ranh @S159, đừng chép "b.13→21" thành span GĐ3.
F-10. Bảng b.13→21 chi tiết (khuôn spec cũ §1.5; nguồn = QT TABLE 2 :60-68 + SLA TABLE 1 :47-55 + FO-002.01)
Căn số: toàn trình b.1-6=PE(GĐ1) · b.7-12=KHKK(GĐ2) · b.13-21 ↔ 9 bước ISO 1:1 (spec cũ §1.3(A) :35-38, lens-fidelity xác nhận 9/9 :459-461).
| b | GĐ | Việc | Ai (QT) | Đầu vào | Đầu ra/artifact | Chuyển bước | SLA QT |
|---|---|---|---|---|---|---|---|
| 13 | GĐ3 | Lựa chọn NTP/NCC | PB/BCH CT (:60) |
QĐ theo SOL-PRO-SP-001 (:47,:60 — nguồn thứ 4 NGOÀI pin, chưa ai đọc, spec cũ :483-485) |
NTP/NCC được chọn | → b.14 | không ghi |
| 14 | GĐ3 | Soạn thảo HĐ | QS/NV.PB soạn; TBP/TPB kiểm khớp gói thầu + biểu mẫu (:61) |
Winner + giá chốt GĐ2 + template FO-002.02→06 | Dự thảo HĐ, gửi các PB qua email lấy ý kiến | → b.15 | 07 ngày (:48) |
| 15 | GĐ3 | Góp ý nội dung | PD/PM (phạm vi CV/tiến độ/chất lượng/biện pháp — HĐ BCH CT) · EQU (thuê/mua TB) · PRO (vật tư/TP trọn gói) · CCM (điều khoản chi phí) · ACT/FIN (thanh toán/bảo lãnh/bảo hành) (:62) |
Dự thảo | Ý kiến per-phòng | → b.16 | 07 ngày (:49) |
| 16 | GĐ3 | Đàm phán thương thảo | QS/NV.PB/TBP/TPB/PD/PM; PB/BCH CT đàm phán chất lượng/giao hàng/giá trị/thanh toán/tạm ứng; phòng chức năng tham gia nếu yêu cầu (:63) |
Dự thảo + ý kiến | Điều khoản chốt với NTP | → b.17 | 07 ngày (:50) |
| 17 | GĐ3 | In HĐ | ⚠️ 2 nguồn trong CÙNG doc lệch nhẹ: T1 :51 ghi trách nhiệm NTP/NCC/TĐ, T2 :64 ghi QS/NV.PB (chủ trì) — thực chất chuỗi: NTP in 2 mặt + KÝ + ĐÓNG DẤU TRƯỚC gửi về PB/BCH CT → cập nhật SỐ HĐ theo quy định (RG-001) → PD/PM/TPB ký nháy từng HĐ đúng vị trí → PD/PM/TPB/TBP ký duyệt + ý kiến lên cover FO-002.01 → QS/NV.PB chuyển CCM |
Điều khoản chốt | BẢN CỨNG ra đời tại đây + số HĐ + ký nháy + cover khối ĐỀ XUẤT | → b.18 | 07 ngày (:51) |
| 18 | GĐ3 | Kiểm tra | CCM; TP.CCM ký nháy từng HĐ + ký duyệt + ý kiến lên cover FO-002.01 (:65) |
Bộ cứng + cover | Cover khối CCM đã ký | → b.19 | 03 ngày (:52) |
| 19 | GĐ4 | Duyệt | BOD/NĐUQ xem xét + ký duyệt HĐ (:66) |
Bộ cứng đã qua CCM | Chữ ký GĐ trên HĐ + cover khối GĐ "Ký kết, phát hành" | → b.20 | 01 ngày (:53) |
| 20 | GĐ4 | Đóng dấu | HRA/ISO (T2 :67 có ISO; T1 :54 chỉ HRA); PB/BCH CT chuyển HĐ đã ký đến HRA/ISO đóng dấu theo quy định |
HĐ đã ký GĐ | HĐ đóng dấu SOL | → b.21 | không ghi |
| 21 | GĐ4 | Phát hành + Lưu trữ | PB/BCH CT + CCM (:68) |
HĐ hoàn chỉnh | scan + gửi 01 BẢN GỐC cho CCM · thông báo + chuyển bản gốc "theo đúng số lượng" đến NTP/NCC · lưu bản gốc · lưu Server theo Filing System (bản CỨNG chính + bản SCAN) | terminal | không ghi |
Nhánh lỗi/vòng lặp: QT KHÔNG VẼ nhánh trả-lại nào cho b.13→21 (spec cũ bảng mâu-thuẫn #5 :88 cùng nhận định) → hệ thống dùng TraLai/TuChoi sẵn có của V2, khai là default.
F-11. Nuance ranh: bản cứng SINH ở b.17 (GĐ3) nhưng MODULE cứng (GĐ4) mở từ b.19
Owner chốt GĐ4=b.19→21, nhưng theo QT thì vật-lý giấy + ký NTP + ký nháy + số HĐ đều sinh ở b.17-18 (∈GĐ3). ⇒ Trang Hdc_* phải HIỂN THỊ readonly metadata sinh từ b.17-18 (NTP đã ký/đóng dấu, ký nháy, cover 2 khối đầu), còn THAO TÁC của nó chỉ là 3 trạm b.19/20/21. Khai rõ để lane-2/lead không dựng trùng trạm.
F-12. Điều kiện ">5 tỷ" quanh b.18→19: NGOÀI nguồn pin
Sổ S156 ghi "bước-18 '>5 tỷ' chưa có máy" (nguồn = sơ đồ PDF S156, KHÔNG nằm trong 6 nguồn pin lượt này). QT + FO-002.01 + RG-001 đều IM LẶNG về ngưỡng giá trị. → uncertain: KHÔNG đưa ngưỡng vào bảng bước; lead muốn dùng phải re-check PDF S156 + hỏi anh (twin câu Q3 GĐ2 đang treo).
§2 — Câu 2: GĐ4 "Hợp đồng cứng" cụ thể là gì + đề xuất 6 leaf Hdc_*
F-13. GĐ4 theo nguồn — cái BIẾT và cái NGUỒN CÂM
Nguồn NÓI (QT :64-68 + FO-002.01 :46):
- Ký: NTP ký+đóng dấu TRƯỚC (b.17) → ký nháy nội bộ PD/PM/TPB đúng vị trí (b.17) → TP.CCM ký nháy (b.18) → BOD/NĐUQ ký duyệt (b.19). Đóng dấu SOL: HRA/ISO (b.20).
- Lưu: 01 bản gốc → CCM · bản gốc theo số lượng → NTP/NCC · PB/BCH CT lưu bản gốc · Server Filing System giữ CẢ bản-cứng-chính lẫn bản-scan (b.21).
- Scan/số hoá: CÓ — scan là nghĩa vụ b.21; cover FO-002.01 PHẢI lưu kèm bộ hồ sơ gốc (luật (c)
:46). Nguồn CÂM (khai + đề xuất default, đảo được): - Tổng số bộ in: QT không quy định (chỉ "01 bản cho CCM" + "theo đúng số lượng" cho NTP) → default: field
SoBoGocnhập tay khi tiếp nhận, tối thiểu 2; cần anh ratify. - Nơi lưu vật lý cụ thể (tủ/phòng/mã hồ sơ): không nói → default: field text
ViTriLuuTru+FilingPath(link server), nhập ở b.21. - Ai bấm gì trên hệ thống: QT là quy trình giấy; owner @S159 đã chốt cơ chế hệ thống = "ký cứng upload-only" → mỗi trạm b.19/20/21 = 1 action xác nhận + upload scan bằng chứng, KHÔNG e-signature.
F-14. Artifact GĐ4 cần track (đề xuất, suy trực tiếp từ b.17-21)
- Số HĐ (RG-001) — sinh trước GĐ4 (xem F-16 lệch thời điểm). 2.
SoBoGoc(default, nguồn câm). 3. Trạng thái cứng: đề xuất 4 mốcChoKyGD → DaKyGD → DaDongDau → DaPhatHanh(map 1:1 b.19/20/21+terminal). 4. Scan bộ HĐ đã ký+đóng dấu (b.21). 5. Scan cover FO-002.01 (luật (c)). 6. Tick + ngày "01 bản gốc đã giao CCM". 7. Số bộ + ngày giao NTP/NCC. 8.ViTriLuuTru+FilingPath. 9. Ngày ký GĐ / ngày đóng dấu / ngày phát hành + người thao tác (audit). 10. Readonly từ GĐ3: NTP đã ký (b.17), ký nháy PD/PM/TPB + TP.CCM (b.17-18).
F-15. Đề xuất nội dung 6 leaf Hdc_* (nhãn "- Bảng cứng", skeleton prod sẵn — run.md :47)
| Leaf | Dry-run cần hiển thị/thao tác |
|---|---|
Hdc_WfView |
Sơ đồ 3 trạm b.19→21 (Ký GĐ → Đóng dấu → Phát hành/Lưu) + đếm HĐ đang đứng mỗi trạm — mirror trang "Tổng quan quy trình" arc-2 |
Hdc_List |
Mọi HĐ đã vào GĐ4 (tức GĐ3 xong): mã HĐ, NCC, dự án, giá trị, trạng thái cứng 4-mốc, số bộ, cột thiếu-scan |
Hdc_Create |
⚠️ Nguồn không nói — GĐ4 không "tạo mới từ trắng". Default: form "Tiếp nhận bản cứng" pick HĐ GĐ3-xong + nhập SoBoGoc/ghi chú; cần anh ratify (option B: leaf này giữ ComingSoon, tiếp nhận tự động khi GĐ3 terminal) |
Hdc_Pending |
Inbox theo vai: BOD/NĐUQ thấy ChoKyGD · HRA thấy DaKyGD (chờ đóng dấu) · PB/BCH+CCM thấy DaDongDau (chờ phát hành/scan/giao) |
Hdc_Approved |
HĐ DaPhatHanh: đủ scan + đã giao CCM/NTP + nơi lưu |
Hdc_Deleted |
Soft-deleted records (khuôn 6-leaf y-chang Duyệt NCC, commit ea962b1) |
| Mỗi transition = nút xác nhận + upload scan + note (upload-only @S159). |
F-16. Lệch thời điểm GÁN MÃ HĐ: QT b.17 vs máy gen ở terminal — input cho lane-2
QT :64: "Cập nhật số Hợp đồng theo quy định" nằm TRONG b.17 In HĐ (mã phải có trên bản in). Code hiện gen mã lúc khác (skill: transition DangDongDau; sổ S156: V2 terminal gen-mã+DaPhatHanh — lane-2 verify site thật). Dry-run default: GIỮ máy hiện trạng (mã sinh ở terminal GĐ3 = sau b.18, vẫn TRƯỚC khi GĐ4 thao tác) + ghi nhận lệch so QT-b.17; user viết tay mã lên bản in nếu in trước. Cần anh ratify nếu muốn dời sớm thời điểm gen.
§4 — Câu 4: FO-002.01 → gate/checklist per-phòng
F-17. Map 4 khối ký ↔ bước
| Khối FO-002.01 | Mục tick | Bước | Căn cứ |
|---|---|---|---|
| PHÒNG BAN/DỰ ÁN (ĐỀ XUẤT) | Soạn thảo · Nội dung HĐ | ký ở b.17 (nội dung làm từ b.14) | QT :64 "ký duyệt + ý kiến lên tờ cover" |
| PHÒNG CUNG ỨNG (PRO) | Điều khoản HĐ · Điều khoản t/toán · Rủi ro pháp lý | b.17→18 handover — QT KHÔNG có trạm PRO riêng trong lưu đồ; LƯU Ý (a) buộc "qua PRO và CCM trước" → khai mơ hồ, default đặt PRO ký NGAY TRƯỚC CCM | FO :21-30 + :46(a) |
| PHÒNG CCM | G/trị HĐ so với NS · Rủi ro pháp lý | b.18 | QT :65 |
| GIÁM ĐỐC/NĐUQ | Ký kết, phát hành | b.19 | QT :66 |
Spec cũ đã dùng chuỗi này làm đối-chứng-GIẤY cho O-1 (bảng :92 — cùng HÌNH b.9→12 GĐ2). Hai giai đoạn dùng CÙNG khuôn 4-trạm là feature, không phải trùng lặp.
F-18. Default dry-run cho 3 luật LƯU Ý + checklist (O-Q1/O-Q2 CHƯA trả lời — default phải đảo được)
- Checklist per-phòng (O-Q2 treo): dry-run chạy bằng comment tự do LevelOpinions như hiện trạng V2 = 0 dev mới; số hoá checkbox (ĐỀ XUẤT 2 mục · PRO 3 · CCM 2 · GĐ 1) dời sang wave-gate sau khi anh trả lời. Đảo: bật checkbox per-Level, map đúng bảng F-17.
- Auto-pass 01-ngày (luật (b)): KHÔNG máy hoá (mâu thuẫn duyệt-chặn V2; O-2 SLA=tham khảo — spec cũ
:412cùng kết luận). Default: hiển thị số-ngày-đang-chờ trên phiếu, không auto-approve. Đảo: cần SLA-engine (đã bị loại khỏi mọi wave GĐ2 — nếu anh muốn thì là wave riêng). - Bypass Chủ đầu tư (luật (a)): ngoài scope dry-run NTP/NCC (QT scope = TP/NCC/TĐ); cờ
BypassProcurementAndCCMđã tồn tại, không kích hoạt. - Cover lưu kèm bộ gốc (luật (c)): thành acceptance GĐ4: HĐ DaPhatHanh PHẢI có scan cover đính kèm (attachment purpose riêng — lane-2 check enum
AttachmentPurposethiếu ký-nháy/cover, sổ S156 đã flag).
§5 — Câu 5: wave-structure NGHIỆP VỤ GĐ3+GĐ4 (nối W1-W5 spec cũ)
F-19. Nguyên tắc kế thừa + đề xuất W6→W9
Nguyên tắc spec cũ §③ :253-254: mỗi wave deploy riêng phải trả lời "người dùng thấy gì"; NOTE @S160: menu đã public toàn bộ (skeleton), dark-launch = lớp TRANG/DATA.
| Wave | Tên (nghiệp vụ) | Người dùng thấy gì khi đẩy riêng | Chặn bởi | Bắt buộc cho dry-run E2E? |
|---|---|---|---|---|
| W6 | GĐ3 sống: HĐ từ KHKK → duyệt V2 → DaDuyet | Tạo HĐ từ phiếu KHKK DaDuyet (giá = ApprovedAmount), trình, 3 trạm PRO→CCM→CEO duyệt web (default mirror chuỗi FO-002.01, admin-config được), approver MỞ ĐƯỢC phiếu chờ mình | Q6/Q11 (cầu W5 — anh ĐÃ MỞ gate chạm HĐ @S160 run.md :17④); 🔴 authz S156 phải khoanh vùng per-action TRONG wave này vì dry-run mở menu mọi người |
✅ |
| W7 | GĐ4 lõi: Hdc 6 leaf trang thật, 3 trạm cứng b.19/20/21 | Theo dõi bản cứng: tiếp nhận → ký GĐ (upload) → đóng dấu → phát hành (scan+số bộ+giao CCM/NTP+nơi lưu) | Hdc_Create semantics cần anh ratify (F-15); còn lại default đủ chạy |
✅ |
| W8 | Gate + checklist FO-002.01 số hoá | Checkbox per-phòng trên phiếu + gate trình/duyệt siết dần | ✅ O-Q1 + O-Q2 (twin W4 GĐ2) | ❌ hoãn — nguồn: O-2 tham khảo + 2 câu owner treo |
| W9 | Hồ sơ hoàn tất + nhắc thiếu scan + thống kê lưu trữ | Filing view, cảnh báo HĐ phát hành thiếu scan/cover | không | ❌ hoãn — không chặn vòng chạy |
Bắt buộc E2E đến "Hợp đồng cứng": W5(cầu, spec cũ) + W6 + W7. b.14-16 (soạn/góp ý/đàm phán) dry-run bằng trạng thái Nháp + comment thread + update draft (default khai rõ: ISO có trạm "Góp ý 6 phòng" nhưng V2 5-state không có phase góp-ý riêng — nếu anh muốn trạm thật thì thêm Bước trong workflow admin-config, 0 code).
F-07-BỔ-SUNG. Mã phiếu KHKK: spec cũ ĐÃ đề KHKK/{YYYY}/{Seq:D3} (:128 tái dùng WorkflowAppCodeSequence prefix namespaced + :307 "owner nên liếc format trước W1") — F-07 giữ nguyên kết luận "RG-001 câm", đề xuất KHỚP spec cũ, vẫn CHỜ anh ratify format.
§6 — Surprises ngoài 5 câu hỏi
- F-20. run.md
:17drift ranh GĐ3 (chi tiết F-09) — Plan cha phải theo owner @S159: GĐ3=13→18, GĐ4=19→21. - F-21. "MB" codegen không có gốc quy định (F-06.1) — dry-run HĐ Mua bán sẽ đẻ mã ngoài RG-001 v02; forms-spec.md cũng KHÔNG có row MB → repo tự thêm ở tầng codegen, cần owner ratify hoặc loại type MuaBan khỏi dry-run.
- F-22. forms-spec TODO Phase 2 còn treo: 3 file
.doc(002.02/.03/.06) chưa convert → template render HĐ trọn gói/mua bán chưa chắc chạy được trong dry-run — lane-2 check form-engine coverage thật; nghiệp vụ fallback: đính file mẫu tĩnh. - F-23. FO-002.01 tick-box 6 loại HĐ ≠ 7 ContractType repo (F-04) — màn render cover cần bảng map, "Thiết bị thuê"/"Khác" không có ContractType tương ứng.
- F-24. SLA QT b.14-17 = 07 ngày khớp fallback code (7d) nhưng b.17 In-HĐ QT=07d ≠ skill DangInKy=1d — O-2 nói tham khảo nên không chặn, ghi để bảng SLA hiển thị đúng NGUỒN thay vì đúng code.