StackTrading Docs

QnA Init Docs — UC_4.13: Level Overview (LIVE, module Levels)

Ngày tạo: 2026-08-12 Phiên bản: v1 BA phụ trách: Trang Nguyen Ngày BA review: 2026-08-12 Trạng thái: ✅ Khách đã trả lời 8/8 câu (2 câu ⚠️ còn open point sau khi trả lời — QN-4.13-02 chưa rõ BE/FE tính, QN-4.13-04 answer không khớp câu hỏi gốc, cần hỏi lại) — 🔴 scope conflict đã resolve (UC_4.13 = trang đầy đủ), Monthly Retainer dùng chung field, naming "Senior Trader" không tách I/II, Progress % = Net PnL ÷ Profit Target, Table A Level 9-16 data đã recover (chờ đăng ký manifest)


⚠️ Lưu ý đặc biệt: WBS record trống + module riêng (không có sibling)

WBS hiện tại của UC_4.13 chỉ có function name ("Level Overview"), toàn bộ description/mapping_be/mapping_fe/mapping_design/reference đều trống (stt: 104). Đây là UC DUY NHẤT thuộc module Levels (khác 6 UC còn lại trong batch này, đều thuộc module Global Shell) — không có UC sibling nào cùng module để đối chiếu trực tiếp trong WBS. Nội dung QnA dưới đây được synthesize hoàn toàn từ:

  • docs/BA/UC_72_CareerPath/CareerPath_CurrentLevel_QnA_Mapping.md (numbering cũ "UC_72") — phân tích BA nội bộ gần-hoàn-chỉnh về đúng trang này (Career Path 24-level, Current/Upcoming Level panel), bao gồm 13 câu hỏi QN-CP-001…013 CHƯA từng được gửi khách/BA trả lời chính thức (toàn bộ đều "⏳ Chờ BA/khách" trong doc gốc).
  • docs/BA/UC_4.1-4.17/dashboard_live/UC_4.12.6/QnA_init_docs.md — QN-4.12.6-01 (scope conflict: Figma node-id=1-13624 + description "Interactive Level Map 24-level" hiện đang gán cho UC_4.12.6 nhưng khớp hơn với UC_4.13 này).

Carried-forward context

  • ⚠️ Renumber Note: legacy "UC_72" (Levels Overview Page) → tương ứng UC_4.13 hiện tại theo WBS mới (module Levels, category STAGE 2.2: DASHBOARD LIVE).
  • QN-4.12.6-01 (đã raise ở UC_4.12.6, dùng chung tại đây): đề xuất UC_4.13 = trang đầy đủ "Level Map" 24-level (tree diagram, tier tabs, toggle 3 track, Current/Upcoming Level panel), nhận lại Figma node-id=1-13624 và description hiện đang (có thể nhầm) gán cho UC_4.12.6.

Nguồn

  • References/Customer supplies/dashboard_v7_full.txt L576-579 (Career Page — Interactive Level Map 24-level, toggle 3 track).
  • References/Customer supplies/v7_full.txt §"Current Level Detail"/"24 Levels Detail"/"HR Integration"/"Certificate" endpoints (dòng 634-699 theo trích dẫn trong legacy doc).
  • References/Customer supplies/zapier_v7_full.txt — Table A (Forex, L2952-2997), Table B (Futures), Table C (Global Variables, L189-221), Table F (Defense Config, L786-793), Table G (Discord Role Map, L795-810), Flow 4 (Promotion), Flow 6 (L6 Transition), Flow 9 (Severance Protocol).
  • References/QnA from clients/07_STAGE6_CAREER_PATH/QnA_STAGE6_CAREER_PATH.md — STAGE6-001/002/003 (đã confirm, dùng làm baseline không hỏi lại).

IDCâu hỏiGiả định (BA/QC đề xuất)BA chốt (ưu tiên cao nhất)Trạng thái
QN-4.13-01[= QN-4.12.6-01, 🔴 CRITICAL, dùng chung] UC_4.13 có phải là "trang đầy đủ" Level Map 24-level (nhận Figma node-id=1-13624 + description hiện đang gán cho UC_4.12.6), hay UC_4.13 là 1 khái niệm khác (ví dụ chỉ là widget tổng quan ngắn, tên "Overview" gây hiểu nhầm)? Xem chi tiết bằng chứng tại UC_4.12.6/QnA_init_docs.md QN-4.12.6-01.Đề xuất: UC_4.13 = trang đầy đủ, theo toàn bộ phân tích ở CareerPath_CurrentLevel_QnA_Mapping.md. Đây là câu hỏi tiên quyết — nếu BA trả lời KHÁC đề xuất (ví dụ UC_4.13 không phải trang đầy đủ), toàn bộ 7 câu còn lại dưới đây (kế thừa từ legacy doc) sẽ cần re-scope.BA confirm đúng đề xuất (giống QN-4.12.6-01) — UC_4.13 = trang đầy đủ "Level Map" 24-level, nhận Figma node-id=1-13624 + description đầy đủ. UC_4.12.6 = widget rút gọn.✅ Confirmed (đúng đề xuất — resolve scope conflict)
QN-4.13-02[= QN-CP-005, kế thừa legacy] Progress % (derive Net Profit / Profit Target) — BE trả sẵn field progress_percent, hay FE tự tính? Không thấy field trực tiếp trong Current Level Detail response đã đọc.Đề xuất: BE nên trả sẵn progress_percent để đảm bảo tính nhất quán công thức với PnL Gauge (UC_4.12.2) — tránh 2 nơi tính khác công thức, cùng áp dụng CR-13 cho rounding.Khách: "Aligned with the PnL Gauge. If the Profit Target is $1000, and the trader is up $800, then it would be 80%. If they are negative PnL or $0, it would be 0%." — công thức xác nhận: progress_percent = max(0, Net PnL ÷ Profit Target × 100). Lưu ý: câu trả lời confirm công thức, chưa nói rõ BE hay FE tính — SRS (BR_4.13.2) tạm assume FE tự tính do đây là arithmetic đơn giản trên 2 giá trị FE đã có sẵn, đánh dấu [ASSUMPTION].✅ Confirmed (công thức) — ⚠️ vẫn còn 1 điểm phụ (BE/FE) là assumption, chưa hỏi lại khách
QN-4.13-03[= QN-CP-012, kế thừa legacy, Priority CAO] Table A (Forex Configuration Matrix) — dữ liệu Level 9-16 (Capital/Profit Target/Stop Loss/Bonus) vẫn thiếu ở bản extract hiện có zapier_v7_full.txt, đã re-confirm lại trong session hiện tại (đọc trực tiếp L2952-2997) — vẫn còn gap. Cần re-extract từ PDF gốc Zapier Integration V7.pdf §Appendix A cho đúng Level 9-16 trước khi Architect viết SRS UC_4.13 (vì đây là dữ liệu hiển thị trực tiếp trên Current/Upcoming Level panel).Nghi vấn lỗi OCR/table-merge khi extract PDF → text, không phải business decision — cần BA/khách cung cấp lại bảng gốc.Khách: "Đây có thể là lỗi OCR. Khách đã cung cấp đầy đủ." — xác nhận đúng nghi vấn OCR/table-merge, không phải business decision. BA tìm thấy 1 file extract khác trên đĩa (References/Customer supplies/Zapier_Integration_V7.txt) có đầy đủ dữ liệu Level 9-16 khớp với câu trả lời này — nhưng file này chưa được đăng ký trong _SOURCE_MANIFEST.yaml (chỉ có zapier_v7_full.txt). ⚠️ Cần BA/QC bổ sung file này vào manifest (hoặc xác nhận nó thay thế zapier_v7_full.txt) để hợp lệ hoá làm nguồn trích dẫn chính thức — xem chi tiết BR_4.13.7.✅ Confirmed (nguyên nhân OCR, data đã tìm thấy) — ⚠️ Chờ BA bổ sung manifest cho file nguồn mới
QN-4.13-04[= QN-CP-003, kế thừa legacy] Tag "W2" — chỉ hiển thị Level ≥ 6 VÀ track = W2 (không hiển thị cho track International dù cùng level)?Đề xuất: đúng theo giả định trên — cần BA xác nhận vì đây là điểm dễ nhầm lẫn (tên "W2" nhưng áp dụng logic phụ thuộc track, không chỉ phụ thuộc level).Khách: "Tag này chỉ là tag tĩnh không thay đổi ở các level và luôn hiển thị." — ⚠️ Câu trả lời KHÔNG khớp trực tiếp với câu hỏi đã hỏi (hỏi về gating logic level/track, khách trả lời về hành vi hiển thị/styling). Đọc literal ("luôn hiển thị") sẽ mâu thuẫn với logic W-2 transition ở BR_4.13.4 (Level 1 hoặc track International không nên có badge "W2"). BA cần hỏi lại khách để xác nhận: (a) tag chỉ tĩnh về styling (không đổi hình dạng theo level) SAU KHI điều kiện gating được thoả, hay (b) tag hiển thị vô điều kiện mọi level/track. SRS (BR_4.13.3) tạm giữ nguyên câu trả lời verbatim + flag ambiguity, KHÔNG tự chọn 1 trong 2 cách hiểu.⚠️ Confirmed nhưng AMBIGUOUS — cần BA hỏi lại khách để làm rõ ý (gating logic gốc vẫn chưa được trả lời)
QN-4.13-05[= QN-CP-010, kế thừa legacy] Field JSON "Monthly Retainer" (International Contractor) — dùng chung field base_salary_annualized (đổi nguồn dữ liệu, giữ tên field) hay cần field JSON riêng monthly_retainer? Conflict C-1 trong legacy doc: HR Integration schema chỉ có field cho W2, không có field riêng cho Retainer.Đề xuất field riêng monthly_retainer để tránh nhầm lẫn ý nghĩa giữa Salary (W2) và Retainer (Contractor) — cần BE xác nhận trước khi Architect map field trong SRS.KHÁC đề xuất ban đầu — BA: "Dùng chung field" (không tạo field JSON riêng monthly_retainer; Monthly Retainer tái sử dụng field hiện có, ví dụ base_salary_annualized, chỉ đổi nguồn dữ liệu/ý nghĩa hiển thị theo track).✅ Confirmed (khác đề xuất ban đầu — dùng chung field, không tạo field riêng)
QN-4.13-06[= QN-CP-011, kế thừa legacy] Naming "Senior Trader" vs "Senior Trader I/II" — chốt convention nào cho UI (Title field + Tab label)? Table G tách 2 sub-role, UI wireframe gộp 1 tab.Đề xuất theo Table G ("Senior Trader I"/"Senior Trader II") vì là bảng role/permission chính thức — cần khách xác nhận vì UI hiện đang gộp.KHÁC đề xuất ban đầu — BA: "Naming là Senior Trader" (tên phẳng, KHÔNG tách I/II) — không theo Table G như đề xuất ban đầu.✅ Confirmed (khác đề xuất ban đầu — "Senior Trader" phẳng, không tách I/II)
QN-4.13-07[= QN-CP-002, kế thừa legacy] Trạng thái "Done" (level đã vượt qua) trên cây 24-level — suy ra client-side từ current_level, hay có field/endpoint lịch sử riêng? Trường hợp user bị Defense/downgrade thì hiển thị thế nào?Đề xuất: suy ra client-side từ current_level (không cần lịch sử riêng), trừ khi có flow downgrade cần xử lý riêng — cần BA xác nhận có flow downgrade nào ảnh hưởng "Done" status không.BA confirm đúng đề xuất — suy ra client-side từ current_level, không cần lịch sử riêng trừ khi có flow downgrade phát sinh yêu cầu riêng.✅ Confirmed (đúng đề xuất)
QN-4.13-08[MỚI — không có trong legacy doc] Wireframe gốc của legacy doc (ảnh chat 2026-07-28) — đã được export & lưu vào References/Wireframe/ chưa? Legacy doc §9 mục 1 ghi nhận đây là việc cần làm nhưng chưa xác nhận đã hoàn thành. Nếu chưa, đây vẫn là source không chính thức (chỉ có trong lịch sử chat), cần xử lý trước khi Architect dùng làm căn cứ viết SRS.Cần BA xác nhận trạng thái export wireframe. Nếu chưa export, Architect sẽ dùng Figma node-id=1-13624 (nếu đúng, theo QN-4.13-01) làm nguồn design chính thức thay thế ảnh chat.BA confirm: "Chưa export." — wireframe vẫn chưa được export/lưu chính thức. Vẫn là blocker note — Architect sẽ dùng Figma node-id=1-13624 (đã confirm đúng qua QN-4.13-01) làm nguồn design chính thức thay ảnh chat.✅ Confirmed — chưa export (giữ nguyên như đề xuất fallback: dùng Figma thay ảnh chat)

Ghi chú Phase 2.2 — WBS Cross-UC Consistency Check

  • CR Conflict Check: CR-13 (Rounding) áp dụng cho progress % (QN-4.13-02). Không có CR nào khác trực tiếp liên quan Career Path/Level Overview (đã check _CR_INDEX.md trong legacy doc).
  • Same-category consistency: QN-4.13-01 là cross-UC conflict TRỰC TIẾP với UC_4.12.6 — xem ghi chú tương ứng ở UC_4.12.6/QnA_init_docs.md. 2 UC này PHẢI được BA trả lời đồng thời trước khi Architect viết SRS cho cả 2.
  • Cross-category dependency: Certificate modal (click level "Done") → cross-ref UC_4.16.1 (Level-Up Cinematic & Sharing); HR field mapping → cross-ref UC_4.16.2 (Career & HR Widget); Drawdown Defence tag → cross-ref UC_4.15.4 (Scenario C: Defense Protocol); Severance tag → cross-ref UC_4.15.5 (Scenario D: Senior Exit).
  • Orphan-UC check: UC_4.13 xác nhận tồn tại trong WBS (status_design: "Done", không có mapping_design/description) — module Levels là module duy nhất chỉ có 1 UC trong toàn category STAGE 2.2: DASHBOARD LIVE, không có sibling để đối chiếu module-level.
  • 6/8 câu hỏi trong doc này (QN-4.13-02 → 07) là kế thừa TRỰC TIẾP từ 13 câu QN-CP-001…013 của legacy doc (CareerPath_CurrentLevel_QnA_Mapping.md), CHƯA từng được gửi khách/BA trả lời chính thức trước đây — đây là lần đầu các câu hỏi này được đưa vào 1 QnA_init_docs.md chính thức theo quy trình hiện tại (5 câu còn lại của legacy doc — QN-CP-001/004/006/007/008/009/013 — không đưa vào đây vì thuộc phạm vi Global Header (đã cover ở UC khác) hoặc priority thấp/phụ thuộc câu khác, sẽ bổ sung nếu BA cần đầy đủ 13 câu).

Ghi chú Phase 2.5 — Impact Analysis

Không có state-changing action trực tiếp (read-only display page). Điểm cần lưu ý: click vào level "Done" có thể mở Certificate modal (side-effect: gọi endpoint Certificate GET) — nhưng chưa xác nhận UI có entry point này (xem legacy QN-CP-009, không đưa vào bảng chính vì priority MEDIUM và không ảnh hưởng scope chính).


Changelog

DateVersionUpdated itemBeforeAfterNotes
2026-08-12v1Initial creation8 QnA items (QN-4.13-01 dùng chung với QN-4.12.6-01; 6 câu kế thừa từ legacy CareerPath_CurrentLevel_QnA_Mapping.md QN-CP-002/003/005/010/011/012; 1 câu mới về wireframe export)Init Flow Step 1+2. WBS trống hoàn toàn — nội dung synthesize từ legacy Career Path doc (đã có phân tích rất kỹ nhưng chưa gửi BA chính thức).
2026-08-12v1.1BA review — trả lời 6/8 câuToàn bộ ⏳ Chờ BAQN-4.13-01 ✅ Confirmed (resolve scope conflict, UC_4.13 = trang đầy đủ); QN-4.13-05 ✅ Confirmed (khác đề xuất — dùng chung field, không tạo field riêng); QN-4.13-06 ✅ Confirmed (khác đề xuất — "Senior Trader" phẳng, không tách I/II); QN-4.13-07 ✅ Confirmed (đúng đề xuất); QN-4.13-08 ✅ Confirmed (chưa export — vẫn dùng Figma làm nguồn chính); QN-4.13-02/04 ⏳ Chờ KH (khách) — pending client, không phải BA; QN-4.13-03 không đổi — vẫn chờ re-extract nguồn gốcBA (Trang Nguyen) trả lời trực tiếp 2026-08-12
2026-08-15v1.2Khách trả lời 3 câu còn lại (QN-4.13-02/03/04)QN-4.13-02/04 ⏳ Chờ KH; QN-4.13-03 ⏳ Chờ BA re-extractQN-4.13-02 ✅ Confirmed công thức Progress % = Net PnL ÷ Profit Target × 100 (floor 0%), áp dụng vào BR_4.13.2 — ⚠️ điểm BE/FE tính vẫn là [ASSUMPTION]; QN-4.13-03 ✅ Confirmed nguyên nhân lỗi OCR + BA tìm thấy file extract đầy đủ Zapier_Integration_V7.txt (chưa trong manifest) khớp Level 9-16, áp dụng vào BR_4.13.7 kèm bảng data đầy đủ — ⚠️ chờ BA bổ sung manifest; QN-4.13-04 ⚠️ Confirmed nhưng câu trả lời không khớp câu hỏi gating gốc (level/track), chỉ nói về styling tĩnh — áp dụng vào BR_4.13.3 kèm flag ambiguity, KHÔNG tự chọn cách hiểu, cần hỏi lại kháchKhách trả lời trực tiếp qua BA, 2026-08-15. Đã update UC_4.13_v1.md BR_4.13.2/4.13.3/4.13.7 + Screen Description rows 2/4.

On this page