SRS: UC_4.13 — Level Overview (LIVE, module Levels)
| Field | Value |
|---|---|
| BA in Charge | Trang Nguyen |
| Date Created | 2026-08-12 |
| Version | v2.1 |
| Document References | docs/BA/UC_4.1-4.17/dashboard_live/UC_4.13/QnA_init_docs.md (QN-4.13-01..08) · References/Customer supplies/dashboard_v7_full.txt L576-579 (Career Page — Interactive Level Map) · References/Customer supplies/zapier_v7_full.txt Table A/B/C/F/G, Flow 4/6/9 · References/QnA from clients/07_STAGE6_CAREER_PATH/QnA_STAGE6_CAREER_PATH.md (STAGE6-001/002/003) · Figma node-id=1-13624 · References/Wireframe/Stage 2/Dashboard/Levels Overview Page V3 (View details).png |
UC_4.13 — Level Overview
1. Overview
| Field | Content |
|---|---|
| ID | UC_4.13 |
| Use Case | Level Overview |
| Description | The full "Level Map" page (moduleLevels) — an interactive 24-level career-path tree diagram with 5 tier tabs, a track toggle for compensation display, and Current/Upcoming Level panels. Reached from UC_4.12.6 — Level Progression Widget (Compact)'s "View all" action. |
| Zapier Flow | Flow 4 (Promotion) · Flow 6 (Level 6 W-2 Transition) · Flow 9 (Severance Protocol) |
| Zapier Table | Table A (Forex Configuration Matrix) · Table B (Futures Configuration Matrix) · Table C (Global Variables) · Table F (Defense Configuration Matrix) · Table G (Discord Role Map) |
| 3rd Party | — |
References/Wireframe/Stage 2/Dashboard/Levels Overview Page V3 (View details).png — the full 24-level "Levels Overview" page, view-details state (tier tabs + tree diagram + Current/Upcoming Level detail panel expanded).
2. Trigger
- The user clicks "View all" on UC_4.12.6 (Level Progression Widget).
- The user selects the "Levels" tab from the sidebar navigation (Ref: UC_4.1.1).
3. Pre-conditions
- User is on the Dashboard, account type LIVE.
4. Post-conditions
- The page displays the trader's full 24-level career path as a list of all levels, with the tab containing the trader's current level selected by default (Ref: BR_4.13.1). No Current/Upcoming Level detail panel is shown until the trader clicks an unlocked or current level.
- [After clicking an unlocked or current level] → the Current Level panel and Upcoming Level panel render for that level, reflecting the most recent Current Level Detail data.
5. Basic Flow
- On page load, frontend calls Current Level Detail / 24 Levels Detail endpoints for the trader's LIVE account.
- Frontend renders only the list of all 24 levels as the tree diagram, grouped into 5 tier tabs, with the tab containing the trader's current level selected by default (Ref: BR_4.13.1). No Current Level or Upcoming Level detail panel is shown at this point — each node shows level number/title and its lock / done / current state only (done/lock state inferred client-side by comparing the level's number to the trader's
current_level). - [If the trader clicks a level node that is already unlocked (completed) or is the trader's current level] → frontend expands and renders the Current Level panel (level number, title, progress %, compensation table for the selected track — Ref: BR_4.13.2) and the Upcoming Level panel (same structure, for the next level) for the clicked level.
- [If the trader clicks a level node that is still locked and beyond the current level] → no detail panel is shown; the node remains in its locked, non-interactive state.
- [If the user switches the compensation track toggle, while a detail panel is expanded] → the Current/Upcoming Level panels re-render with the selected track's compensation fields (US (Standard) / US (Flex) / International Contractor).
- [If the user switches tier tabs] → the tree diagram re-renders to show the levels in the selected tier, reverting to the list-only state described in Step 2 until the trader clicks an unlocked/current level again in that tab.
7. Exceptional Flow
- API connection drops: the page retains its last-loaded values while the client applies exponential backoff and automatically reconnects, per CR-14 — WebSocket Reconnection Resiliency (Shared) if this page carries any real-time component (not yet confirmed — page is largely reference-data driven).
8. Business Rules
BR_4.13.1: Page Scope — Full 24-Level Career Path Map
This resolves a scope conflict identified against UC_4.12.6 before either UC was drafted:
- UC_4.13 (this UC, module Levels) = the full page — 24-level tree diagram across 5 tier tabs: Associate Trader (Lvl 1–5), Trader (Lvl 6–9), Senior Trader (Lvl 10–17), Principal Trader (Lvl 18–21), Managing Principal (Lvl 22–24) — plus a compensation track toggle and Current/Upcoming Level panels. This UC owns Figma
node-id=1-13624and the WBS full-page description originally misattributed to UC_4.12.6. - UC_4.12.6 (Global Shell) = the compact widget only (current level/title + up to 3 upcoming levels + "View all" link into this page) — does not repeat this page's content.
BR_4.13.2: Progress % Formula — Aligned with PnL Gauge (Net PnL ÷ Profit Target)
- Data source:
progress_percentis returned directly as a field in theGET /me/current-levelresponse — it is backend-computed, not derived client-side by the frontend (Source: client confirmation, 2026-08-27). - Formula:
progress_percent = max(0, Net PnL ÷ Profit Target × 100), where Net PnL is Unrealized + Realized PnL (same source value driving the UC_4.12.2 PnL Gauge needle) and Profit Target is the current level's Table A/BProfit_Targetvalue. - Floor at 0%: negative Net PnL or Net PnL = $0 both display 0% — the formula does not go negative on the UI.
- No explicit ceiling was stated by the client; this SRS does not assume a 100% cap pending a scenario where Net PnL exceeds Profit Target (e.g. between promotion trigger and level rollover) — flag for BA if this edge case needs a separate confirmation.
BR_4.13.3: Current Level Panel Background Theme — by Level Range
The Current Level panel's background theme changes according to the level's range, giving each tier a distinct visual identity:
| Level range | Theme |
|---|---|
| Level 1 – Level 6 | Theme 1: Dark / Charcoal |
| Level 7 – Level 14 | Theme 2: Blue / Steel |
| Level 15 – Level 18 | Theme 3: Bronze |
| Level 19 – Level 22 | Theme 4: Silver |
| Level 23 – Level 24 | Theme 5: Gold |
(Source: BA direct instruction, 2026-08-19.) The theme is keyed purely to the clicked level's number (Ref: BR_4.13.1 for the underlying 5-tier structure) and applies independently of the compensation track toggle or tier tab selection. [PENDING — design confirmation] this SRS does not yet have a wireframe/Figma frame showing each theme's exact colour values; BA should confirm hex values against the design system before build.
BR_4.13.4: W2 Compensation Data — Sourced from Table A/B, Displayed by Trader Type
Each level's W2/compensation data shown in the Current Level and Upcoming Level panels is sourced from Zapier Table A (Forex Configuration Matrix) / Table B (Futures Configuration Matrix), and its display varies by trader type:
- Level 1 – Level 5: trader type is Contractor — no W2 employment classification applies yet at this stage.
- Level 6 and above: the trader has become a full-time employee, and trader type is one of International trader, US trader (Flex), or US trader (Standard). Which of the three applies is determined starting at Level 6, per the Country Check / Offer Configurator logic in Flow 6 — Level 6 Transition (W-2 vs. International): a USA-based trader goes through address verification and a Checkr background check, then selects Track A "Full Benefits" (30–35 hrs/week,
Base_Income) or Track B "Flex Cash" (≤29 hrs/week,Base_Income_Flex) via Rippling W2 onboarding; a non-USA trader remains on the International Contractor track.
(Source: References/Customer supplies/zapier_v7_full.txt, Flow 6 — Level 6 Transition (W-2 vs. International); BA direct instruction, 2026-08-19.) This BR replaces the compensation-field-set description previously carried under the removed BR_4.13.4 ("Current vs. Upcoming Level Panel — Field Set Differs by Compensation Stage"); the Monthly Retainer field-mapping note for the International Contractor track (Source: BA verbatim, 2026-08-12, QnA_init_docs.md QN-4.13-05 — reuses an existing compensation field, e.g. base_salary_annualized, with the data source/displayed meaning changed per track; no dedicated monthly_retainer JSON field is created) still applies and is retained here.
9. Screen Description
| No. | Field Name | Field Type | Displaying rule / Behaviour rule |
|---|---|---|---|
| 1 | Tier tabs | Tab | Displaying rule:- 5 tabs: Associate Trader (1–5), Trader (6–9), Senior Trader (10–17), Principal Trader (18–21), Managing Principal (22–24). Tab containing trader's current level selected by default (Ref: BR_4.13.1). |
| 2 | 24-level tree diagram (list-only) | Widget | Displaying rule:- On page load, shows every level's number/title and lock/done/current state only — no detail panel yet (Ref: BR_4.13.1). Done/lock state inferred client-side by comparing the level's number to the trader's current_level. |
| 3 | Compensation track toggle | Toggle | Behaviour rule:- Available once a Current Level panel is expanded (see row 4); switches Current/Upcoming panel compensation fields between US (Standard) / US (Flex) / International Contractor (Ref: BR_4.13.4). |
| 4 | Current Level panel | Panel | Displaying rule:- Expands only when the trader clicks a level node that is unlocked or is the current level (Ref: Basic Flow step 3). Shows Level / Title / Progress % = Net PnL ÷ Profit Target × 100, floored at 0% (Ref: BR_4.13.2) / background theme by level range (Ref: BR_4.13.3) / W2 compensation data by trader type, sourced from Table A/B (Ref: BR_4.13.4). |
| 5 | Upcoming Level panel | Panel | Displaying rule:- Expands alongside the Current Level panel under the same click condition (Ref: Basic Flow step 3). Same structure as Current Level panel, showing the next level's W2 compensation data by trader type (Ref: BR_4.13.4). |
Changelog
| Date | Version | Updated item | Before | After | Notes |
|---|---|---|---|---|---|
| 2026-08-19 | v2 | §1 Overview — wireframe reference | [BLOCKED — pending design], only Figma node-id=1-13624 on record. | CitesReferences/Wireframe/Stage 2/Dashboard/Levels Overview Page V3 (View details).png as the primary wireframe; Figma retained as secondary source; View all level details - Evaluation.png noted as the SIM-only evaluation variant, not used here. | Source: BA direct instruction, 2026-08-19. |
| 2026-08-19 | v2 | §2 Trigger | 2 lines: "View all" click OR direct navigation; plus a second line for tab/track/node interactions. | Exactly 2 triggers: (1) click "View all" on UC_4.12.6, (2) select "Levels" tab from sidebar navigation. Tab/track/node interactions moved into Basic Flow as in-page actions. | Source: BA direct instruction, 2026-08-19. |
| 2026-08-19 | v2 | §4 Post-conditions | Described Current/Upcoming Level panels as rendering on page load. | Describes list-only state on page load; panels render only after clicking an unlocked/current level. | Consequential update to match the revised Basic Flow. |
| 2026-08-19 | v2 | §5 Basic Flow | 7 steps: tree renders with Current/Upcoming panels immediately on load. | Rewritten: page load shows list-only (all levels, no detail panel); clicking an unlocked or current-level node expands Current + Upcoming Level panels; clicking a locked future level does nothing; track toggle and tier-tab switching behavior retained as in-page actions. | Source: BA direct instruction, 2026-08-19. |
| 2026-08-19 | v2 | §6 Alternative Flow | Contained a below-Level-6 track-toggle note,[PENDING]. | Section removed entirely — no alternative flow for this UC. | Source: BA direct instruction, 2026-08-19 ("Bỏ mô tả ở alternative. Không có flow này."). |
| 2026-08-19 | v2 | BR_4.13.3 (old) | "Status Tags — Severance / W2 / Drawdown Defense," including an⚠️ [AMBIGUOUS] flag on W2 tag gating. | Removed entirely (tags are static/always-displayed, no associated action). | Source: BA direct instruction, 2026-08-19 ("các tag này là tĩnh luôn hiển thị, không có action nào"). |
| 2026-08-19 | v2 | BR_4.13.4 (old) | "Current vs. Upcoming Level Panel — Field Set Differs by Compensation Stage" (field-set table + Monthly Retainer mapping note). | Removed. The Monthly Retainer field-mapping note was preserved and folded into the new BR_4.13.4 (W2 Compensation Data by Trader Type) below. | Source: BA direct instruction, 2026-08-19. |
| 2026-08-19 | v2 | BR_4.13.5 (old) | "Done" Level Status — Inferred Client-Side fromcurrent_level. | Removed as a standalone BR; the same client-side inference logic is now folded inline into §9 Screen Description row 2 and §5 Basic Flow step 2. | Source: BA direct instruction, 2026-08-19. |
| 2026-08-19 | v2 | BR_4.13.6 (old) | Tier Tab Naming — "Senior Trader" flat, not split I/II. | Removed entirely; §9 Screen Description row 1 no longer references it. | Source: BA direct instruction, 2026-08-19. |
| 2026-08-19 | v2 | BR_4.13.7 (old) | Table A Level 9–16 OCR recovery — full recovered data table +⚠️ [MANIFEST DISCREPANCY] flag re: unregistered Zapier_Integration_V7.txt. | Removed entirely, including the recovered data table and the manifest-discrepancy flag. | Source: BA direct instruction, 2026-08-19.⚠️ Follow-up note for BA/QC: this removal does not resolve the underlying manifest housekeeping item (Zapier_Integration_V7.txt still unregistered in _SOURCE_MANIFEST.yaml) — flagging in case that data is cited again elsewhere. |
| 2026-08-19 | v2 | New BR_4.13.3 | — (did not exist) | Added: "Current Level Panel Background Theme — by Level Range" (5 themes: Dark/Charcoal L1-6, Blue/Steel L7-14, Bronze L15-18, Silver L19-22, Gold L23-24). | Source: BA direct instruction, 2026-08-19. Flagged[PENDING — design confirmation] for exact hex values. |
| 2026-08-19 | v2 | New BR_4.13.4 | — (did not exist) | Added: "W2 Compensation Data — Sourced from Table A/B, Displayed by Trader Type" (Contractor L1-5; International/US Flex/US Standard from L6+, determined via Flow 6 logic). | Source:zapier_v7_full.txt Flow 6; BA direct instruction, 2026-08-19. |
| 2026-08-19 | v2 | §9 Screen Description | Rows 1-5 referenced BR_4.13.3 through BR_4.13.7 (old numbering) and described panels as always-rendered. | Rows updated to reference the retained/new BRs only, and to reflect the list-then-detail-on-click behavior (rows 2, 4, 5). | Consequential update following the BR removals/additions above. |
| 2026-08-27 | v2.1 | BR_4.13.2 — added data source line | Formula-only; did not state where progress_percent comes from (implied frontend-derived from Net PnL / Profit Target). | Added Data source: line — progress_percent is returned directly as a field in the GET /me/current-level response, backend-computed, not derived client-side by the frontend. | Source: client confirmation, 2026-08-27. |