Files
solution-erp/.claude/workflows/runs/2026-07-31-S164-4gd-khkk-fanout/sub-reviewer-f1-checkbox.md
2026-08-01 08:51:46 +07:00

1.6 KiB
Raw Blame History

REVIEW-F1: (đang soi — dòng verdict ghi lại ở §7 khi xong)

Reviewer F-1 — ô-tích opt-out applyLevelFinalize panel duyệt KHKK

Ghi-đĩa TRONG LÚC SOI (chống #53). Đo từ ĐĨA, HEAD 24ea71e, diff CHƯA commit. Phạm vi: git diff -- src fe-user fe-admin = 5 file M, +137 / 14.

§0 Mirror 2 app — chứng bằng blob-SHA của git (KHÔNG tin lời khai)

git diff in ra index-line của cả 2 app:

Cặp file blob TRƯỚC blob SAU
fe-{admin,user}/src/pages/khkk/KhkkWorkflowPanel.tsx e2fa3bc (cả hai) 6913182 (cả hai)
fe-{admin,user}/src/types/khkk.ts a99658c (cả hai) 1ffd79b (cả hai)

⇒ 2 cặp byte-identical cả trước lẫn sau (git blob = sha1 nội dung) — mirror §3.9 ĐẠT, và không có nhánh "sửa 1 app quên app kia".

§1 Ranh giới BE — cờ có tới FE bằng ĐÚNG một đường

  • ContractSigningPlanWorkflowLevelDto (ContractSigningPlanFeatures.cs:116) +1 positional bool AllowApproverFinalize; construction site = 1 (:640, grep toàn src/Backend cho đúng 3 hit: :116 def · :132 kiểu List · :640 new) ⇒ không có site thứ 2 lỡ truyền false cứng.
  • l.AllowApproverFinalize đọc thẳng từ ApprovalWorkflowLevel của đúng workflow đã pin (cùng bảng, cùng row mà ResolveActingLevel sẽ chấm lúc duyệt) ⇒ không có nguồn thứ hai.
  • 0 đổi logic BE: git diff trên src chỉ 2 hunk, cả 2 nằm trong DTO + projection.

(các mục dưới điền dần)