Labels: partial — added priority:high; size:s flagged as potentially tight (backend middleware + env override + frontend branch point + two unit tests is likely 1.5–2 days); recommend confirming with implementer before sprint kick-off
Key implementation note confirmed:DEFAULT_SETTINGS in backend_v2/api/routes/settings.py has no feature_flags key today — clean extension. Flag reads via GET /api/settings under feature_flags.ENABLE_OPTIONS_BACKTEST; no new endpoint. Env override: os.environ.get("ENABLE_OPTIONS_BACKTEST", "false").lower() == "true".
Body correction needed (human action required): the body describes a broad stub-widget audit across all Dashboard widgets. Verified against frontend/trademaster_ui/src/pages/Dashboard.js: actual scope is two is_mock references only — line 140 (inline message) and lines 282–284 (conditional badge). Reporter should update body before the card is dispatched. Grooming comment on the issue explains the specific lines.
#261 — SetupWizard polish
Atomicity: pass
Clear goal: pass
Acceptance criteria: pass (8 criteria)
Parent epic: pass (#256, #78)
Labels: added priority:medium; size:m confirmed
Pre-task decision needed: wizard step-state persistence strategy (component state vs. localStorage) should be decided and documented before PR opens, not mid-PR
#260 body: reporter should narrow the acceptance criteria to match actual scope (two is_mock references in Dashboard.js) before the card is dispatched to a developer. As-written the body could mislead a developer into a broader audit. See issue comment for specifics.
#257 size: confirm size:s vs size:m with the implementer. Current body scope (backend middleware + env override + frontend panel + unit tests) is likely 1.5–2 days.