Files
solution-erp/.claude/workflows/runs/2026-07-30-S162-cay-4-folder-gd/run.md
pqhuy1987 bfc7b79f72
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 5m50s
[CLAUDE] FE-User+FE-Admin: cay 4 folder GD duoi tung goi thau (Duyet NCC / Ke hoach HD / Duyet HD / HD cung) x2 app + 5 fix review F-1/3/4/6/7
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-30 10:04:32 +07:00

26 lines
3.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# run: 2026-07-30-S162-cay-4-folder-gd
goal: Lệnh anh 30-07 sáng (mid-turn, kèm screenshot khoanh đỏ dải 4 GĐ → cây): "Tạo folder: Duyệt NCC / Kế hoạch Hợp đồng. / Duyệt Hợp đồng / Hợp đồng cứng." AskUser chốt 2 quyết: (1) folder đặt DƯỚI TỪNG GÓI THẦU · (2) áp CẢ các trang GĐ khác.
## Spec contract (lead-defined literal)
- Nhãn folder VERBATIM anh gõ: "Duyệt NCC" · "Kế hoạch Hợp đồng" · "Duyệt Hợp đồng" · "Hợp đồng cứng" (folder GĐ2 ≠ nhãn strip "Kế hoạch ký kết HĐ" — CỐ Ý, lời-mới-nhất-thắng; KHÔNG đổi strip/menu).
- Vị trí: trong cây `yearGroups → projects → workItems` của [PurchaseEvaluationsListPage.tsx](../../../fe-user/src/pages/pe/PurchaseEvaluationsListPage.tsx) (dựng nhóm tại `:210-255`, key gói = `(projectId, workItemId ?? '__no_workitem__')` `:228`) — chèn cấp folder GĐ giữa WorkItemGroup và items.
- Nội dung folder: GĐ1 = PE phiếu (render leaf CŨ, chỉ re-parent) · GĐ2 = KHKK match `khkk.purchaseEvaluationId ∈ PE-ids của gói` (KhkkListItemDto `khkk.ts:106+`, leaf = maKeHoach + phase chip, click → `/khkk/:id`) · GĐ3 = HĐ qua `pe.contractId` (purchaseEvaluation.ts list DTO, click → `/contracts/:id`) · GĐ4 = HĐ đó với `hasSealedCopy === true` (contracts.ts:100, click → `/hard-copies`).
- Đếm count per folder; folder rỗng = muted + chip "SẮP" (tái dùng token màu dải strip ARC-2); folder GĐ của TRANG hiện tại mặc định expanded, 3 folder kia collapsed.
- Search/filter đang active ⇒ chỉ hiện folder có nội dung khớp (không 4 folder rỗng × mọi gói); không filter ⇒ đủ 4.
- Permission 2 tầng (bài S118 #82): usePermission key Khkk/Ct trước khi fetch — không quyền ⇒ folder khoá + SẮP, KHÔNG call API; fetch lỗi ⇒ "—", không vỡ cây.
- Trang áp dụng đợt-1: PE list (GĐ1) + [KhkkListPage.tsx](../../../fe-user/src/pages/khkk/KhkkListPage.tsx) (GĐ2, bảng giữ bên phải, cây panel trái) + [HardCopiesPage.tsx](../../../fe-user/src/pages/contracts/HardCopiesPage.tsx) (GĐ4) — fe-user; fe-admin mirror CHỈ khi trang twin cùng khuôn (HardCopies ×2 SHA-pair W7). Trang GĐ3 (cụm HĐ 7-loại 6-leaf) = đợt-2 sau khi anh xem prod.
- CẤM: sửa BE · menu/seeder (#84) · strip/labels hiện hữu · default export · logic duyệt phiếu.
## taskList snapshot
- T1 designer: component chung PipelineStageFolders + gắn 3 trang fe-user (+admin twin) + build gate
- T2 reviewer: adversarial diff vs contract trên
- T3 cicd-monitor: post-push verify (background)
## Stages
- [x] T1 designer → sub-frontend-designer-0.md (VERDICT: SHIP-READY; 2 lần dừng-sớm resume từ diary — file trên đĩa nguyên vẹn, diagnostics giữa-Edit là snapshot dở #68; tự soi ảnh 3 vòng bắt 4 lỗi UX)
- [x] T2 reviewer → sub-reviewer-1.md (VERDICT: PASS-WITH-FLAGS — 0 blocker, 8 flag F-1..F-8)
- [x] T2-bis lead áp 5 fix rẻ F-1/F-3/F-4/F-6/F-7 (hook + 2 component + HardCopiesPage, mirror cp 4 file) + F-8 sửa 2 câu memory designer (VERIFY→APPEND); F-2 (liên-danh — chờ W5) + F-5 (layout 19rem — nghiệm thu prod) = giới hạn khai thẳng. TSC 0 · build ×2 EXIT 0 · SHA-pair 6/6 sau fix
- [x] T3 ship → ship-synthesis.md (cicd verify sau push → sub-cicd-monitor-2.md)