QnA Init Docs — UC_4.8.2: Level Progression (SIM Overview)
Ngày tạo: 2026-08-08 Ngày BA review: 2026-08-10 Phiên bản: v1 BA phụ trách: Trang Nguyen Trạng thái: ✅ BA đã trả lời A-01/A-03 với mô tả UI cụ thể (khác cả 3 phương án a/b/c đề xuất ban đầu) — A-02 trở thành N/A, 1 câu hỏi mới phát sinh (A-05) cần BA xác nhận thêm, không block Step 3
Carried-forward context (đã confirm ở dashboard_common/UC_4.1.1-4.1.5/QnA_init_docs.md, KHÔNG hỏi lại)
- WBS UC_4.8.2 (module
Overview, categorySTAGE 2.1. DASHBOARD SIM) KHÔNG có description/reference/mapping nào — hoàn toàn trống, chỉ có tên function "Level Progression".
Nguồn đã tìm được (đều gián tiếp — không có nguồn nào mô tả trực tiếp widget này)
RFQ_ Stack Trading Prop Tech V7.pdf§Reference Data Endpoints (v7_full.txt): "Current Level Detail" GET trảLevel, Title, Notional, Target, Stop, Bonus, Salary, PTO, expiration_date, days_remaining, defense_used, ...— dùng để "populate the dashboard header, 'Next Level' progress bars, and the PnL Gauge defense state" (dòng 642-651). "24 Levels Detail" GET trả toàn bộ Level 1-24, dùng để render "Bento Grid" career map (dòng 663-666) — đây là trang Career Path đầy đủ, KHÔNG phải widget Overview.RFQ_ Website and Dashboard Implementation V7.pdf§Part C (dashboard_v7_full.txt, dòng 576-579): "Career Page - Interactive 'Level Map' tracking current progress across a 24-level tree diagram. This module requires UI toggles to dynamically update the viewable compensation variables based on the user's specific track" — đây cũng là trang Career Path đầy đủ (không phải Overview widget).docs/BA/UC_58-72/Dashboard_Overview_Plan.md§3.12 (phân tích nội bộ cũ, numbering lỗi thời) đã từng phân biệt: "Overview chỉ có widget rút gọn (current level, progress %, Est. Bonus). Trang đầy đủ 'Level Map' 24-level là 1 UC riêng." — nhưng phân tích này viết TRƯỚC khi có WBS UC_4.x hiện tại, cần re-verify.docs/BA/UC_72_CareerPath/CareerPath_CurrentLevel_QnA_Mapping.mdđã phân tích rất kỹ trang Career Path đầy đủ (numbering cũ "UC_72"), nhưng theo WBS hiện tại KHÔNG tìm thấy UC "Levels/Career Path 24-level" nào cho SIM — moduleLevelschỉ tồn tại ở categorySTAGE 2.2: DASHBOARD LIVE(UC_4.12 "Level Overview"). Không có tương đương ởSTAGE 2.1. DASHBOARD SIM.
| ID | Câu hỏi | Giả định (BA/QC đề xuất) | BA chốt (ưu tiên cao nhất) | Trạng thái |
|---|---|---|---|---|
| A-01 | [SCOPE GAP — 🔴 CRITICAL, ⚠️ No safe default rõ ràng — có thể block việc viết SRS] SIM (evaluation) về bản chất KHÔNG có cấu trúc "24 level" (đó là khái niệm LIVE — Table A/B, chỉ áp dụng sau khi user pass evaluation và được cấp vốn thật). SIM chỉ có 1 tier duy nhất đang active (Level 0 — làm evaluation, kết quả nhị phân pass/fail). Vậy widget "Level Progression" trên Overview SIM thực chất hiển thị nội dung gì? 3 khả năng khác nhau hoàn toàn về UI/logic: (a) progress bar hướng tới Profit Target của evaluation hiện tại (% hoàn thành mục tiêu lợi nhuận để pass) — không liên quan gì tới 24-level. (b) preview rút gọn của toàn bộ 24-level career path (tạo động lực nhìn thấy trước, dù các level đều đang "locked" vì chưa unlock). (c) trùng lặp/nhầm lẫn với PnL Gauge (UC_4.8.1) — nếu đúng vậy thì UC_4.8.2 có thể không cần tồn tại độc lập. | Đề xuất (a) — progress bar % hoàn thành Profit Target hiện tại (derive từ current_net_profit / Profit_Target × 100, cùng field Target trong "Current Level Detail"), KHÔNG phải cây 24-level đầy đủ. Đây là giả định rủi ro cao (3 hướng cho ra UI/logic hoàn toàn khác nhau) — không có default an toàn để tự quyết, cần BA/khách xác nhận trước khi Architect viết SRS cho riêng UC này. | Không phải (a)/(b)/(c) — BA mô tả 1 UI cụ thể riêng (2026-08-10): "Đối với các tài khoản demo account, section level progression hiển thị 2 phần thông tin: Thông tin track current đã mua đăng ký chơi sim và Level tiếp theo user sẽ được unlock khi pass evaluation. Level tiếp theo được unlock hiển thị tùy theo gói user đã mua. Ví dụ associate track thì level unlock tiếp theo là Level 1. Khi nhấn chọn view all level thì điều hướng sang màn hình Levels với tất cả các level đều bị lock, chưa thể thao tác gì." Tóm tắt cấu trúc widget: (1) hiển thị track hiện tại đã mua (Associate/Accelerated Associate/Advanced Associate); (2) hiển thị level tiếp theo sẽ unlock nếu pass, phụ thuộc track đã mua; (3) nút/link "View all levels" → điều hướng sang màn hình Levels, toàn bộ level hiển thị trạng thái locked, không thao tác được. | ✅ Đã chốt (KHÁC hoàn toàn 3 đề xuất ban đầu) |
| A-02 | [N/A — moot sau A-01] Câu hỏi gốc "FE tự tính progress_percent hay BE trả sẵn" chỉ áp dụng nếu A-01 = (a). Vì đáp án thật của A-01 không phải progress bar theo Profit Target, câu hỏi này không còn áp dụng. | — | N/A — tiền đề (A-01 = a) không còn đúng. | ✅ N/A, không cần trả lời |
| A-03 | [Cập nhật theo A-01] "Est. Bonus" — WBS mô tả cũ (theo Dashboard_Overview_Plan.md) có nhắc widget rút gọn hiển thị "Est. Bonus". Nhưng SIM (evaluation) chưa có Bonus/payout nào (Bonus chỉ trả khi đã lên Level thật ở LIVE, theo Table A/B Bonus_Paid_To_Trader). Widget SIM có cần hiển thị "Est. Bonus preview" (số tiền sẽ nhận nếu pass) không, hay bỏ hẳn phần Bonus cho SIM? | [ASSUMPTION] Hiển thị "Est. Bonus preview" — giá trị Bonus_Paid_To_Trader tại Level 1 (Table A/B) làm preview động lực, ghi rõ label "nếu pass evaluation" — cần BA xác nhận vì đây là suy diễn, không có nguồn trực tiếp. | KHÁC đề xuất ban đầu — BA: "Không hiển thị thông tin này." Xác nhận: KHÔNG hiển thị "Est. Bonus preview" trên widget UC_4.8.2. Widget chỉ gồm 2 phần thông tin theo A-01 (track hiện tại + next-level-unlock), không có phần Bonus. | ✅ Đã chốt (KHÁC đề xuất ban đầu) |
| A-04 | [MISSING_DEPENDENCY] LIVE có UC_4.11.6 "Level Progression" nhưng nằm ở module Global Shell (KHÔNG phải module Overview như SIM UC_4.8.2) — khác category giữa 2 môi trường cho CÙNG TÊN function. Đây có phải là lỗi phân loại WBS (1 trong 2 category sai), hay có chủ đích khác biệt thật giữa SIM/LIVE (giống pattern PnL Gauge/Desk Manager: SIM=Overview, nhưng có UC riêng khác cho LIVE)? Ngoài phạm vi Init Flow lần này (chỉ áp dụng cho SIM), nhưng cần BA ghi nhận để không bị nhầm khi viết cụm LIVE sau này. | Không tự suy diễn — ghi nhận làm lưu ý cho BA khi bắt đầu Init Flow cho LIVE Global Shell (UC_4.11.x), không cần trả lời ngay trong phạm vi UC_4.8.2 này. | — | ⏳ Ghi nhận, không block |
| A-05 | [MỚI phát sinh từ A-01 — 🟡 non-blocking] 2 điểm cần làm rõ thêm từ mô tả UI mới của A-01: (1) Mapping "track đã mua → level tiếp theo unlock" — BA chỉ nêu ví dụ Associate Track → Level 1. Accelerated Associate Track và Advanced Associate Track thì unlock level mấy? (2) Màn hình "Levels" mà nút "View all levels" điều hướng tới — đây có phải UC mới (chưa có trong WBS cho SIM, xem A-04: WBS hiện chỉ có Levels module ở LIVE — UC_4.12) hay dùng chung 1 UC/screen với LIVE (chỉ khác ở chỗ toàn bộ level bị khoá cho user SIM)? | [ASSUMPTION] (1) Suy theo naming glossary đã có (Evaluation Package: Associate Track = EVAL_L1, Accelerated Associate Track = EVAL_L2, Advanced Associate Track = EVAL_L5) → next-level-unlock tương ứng = Level 1 / Level 2 / Level 5. (2) Màn hình "Levels" (toàn bộ locked) là 1 UC/screen mới cần mở trong WBS cho SIM — KHÔNG dùng chung UC_4.12 (UC_4.12 là "Level Overview" cho LIVE, thuộc category khác, chưa xác nhận có chia sẻ component hay không) — cross-ref, không block Step 3 của UC_4.8.2 (chỉ ảnh hưởng UC đích của nút "View all levels", chưa cần viết UC đó ngay). | — | 🟡 ⏳ Chờ BA — non-blocking cho UC_4.8.2 |
Ghi chú Phase 2.2 — WBS Cross-UC Consistency Check
- CR Conflict Check: Đã đọc
References/CR/_CR_INDEX.md— không có CR nào tham chiếu Level Progression/Overview SIM. - Same-category consistency (
STAGE 2.1. DASHBOARD SIM): Không có sibling UC nào khác mô tả "Level"/"Career" trong category này — xác nhận UC_4.8.2 là điểm duy nhất. - Cross-category dependency: UC_4.12 (LIVE, module
Levels, "Level Overview") và UC_4.11.6 (LIVE, moduleGlobal Shell, "Level Progression") — cả 2 đều KHÁC category với UC_4.8.2, xem A-04. Không tìm thấy UC "Career Path 24-level" nào cho SIM trong WBS hiện tại. - Orphan-UC check: UC_4.8.2 xác nhận tồn tại trong WBS qua
node script/parse_wbs.js --compact. - Không tìm thấy UC nào trong WBS mô tả "widget rút gọn Level Progression" một cách tường minh — đây chính xác là nội dung của A-01, không phải lỗi tra cứu.
Ghi chú Phase 2.5 — Impact Analysis
Không có state-changing action trực tiếp trên widget này (read-only display, chờ xác định nguồn dữ liệu theo A-01/A-02).
Hướng dẫn cho BA
✅ BA đã trả lời A-01 (2026-08-10) với mô tả UI cụ thể, khác hoàn toàn cả 3 phương án (a)/(b)/(c) đề xuất ban đầu — xem chi tiết ở bảng trên. Hệ quả:
- A-02 trở thành N/A (tiền đề "A-01 = a" không còn đúng).
- A-03 (Est. Bonus) được chốt lại theo hướng MỚI: không hiển thị, khác đề xuất ban đầu.
- A-05 (mới) phát sinh 2 điểm cần làm rõ thêm (mapping track→level, và UC đích của "View all levels") — cả 2 đều non-blocking cho việc viết SRS UC_4.8.2 (chỉ mô tả đúng số Level ví dụ Associate Track→Level 1 đã có; phần track khác dùng giả định glossary, gắn
[ASSUMPTION]; nút "View all levels" chỉ cần mô tả hành vi điều hướng, không cần biết trước UC đích đã tồn tại hay chưa).
Sẵn sàng tiến hành Step 3 — Architect viết SRS cho UC_4.8.2 với A-05 gắn nhãn [ASSUMPTION] rõ ràng, không block.
Changelog
| Date | Version | Updated item | Before | After | Notes |
|---|---|---|---|---|---|
| 2026-08-08 | v1 | Initial creation | — | 4 QnA items (A-01 critical scope gap) | Init Flow Step 1+2 |
| 2026-08-10 | v1.1 | BA review — trả lời A-01/A-03, phát sinh A-05 | A-01 ⏳ Chờ BA (blocking); A-02/A-03 phụ thuộc A-01 | A-01 ✅ Đã chốt (mô tả UI cụ thể, khác 3 đề xuất ban đầu); A-02 ✅ N/A; A-03 ✅ Đã chốt (khác đề xuất); A-05 mới 🟡 non-blocking | BA (Trang Nguyen) trả lời trực tiếp qua chat 2026-08-10 |