This workflow verifies that core user journeys work and look correct across navigation, data retrieval, charting, trading, and configuration.
Status, Switch to LIVE, Settings)./start.shhttp://localhost:3000| Area | Check | Expected |
|---|---|---|
| Navigation | Top links load: Dashboard, Historical Data, Backtesting, Trading, Configuration | No blank page; route content renders |
| Dashboard | System Status + Account Summary cards visible | No loader stuck; fields populated |
| Historical Data | Enter valid symbol and click Get historical data |
Chart or table data appears; export buttons enable after data load |
| Historical Data | Click Compare Quotes |
Comparison panel opens with provider values; no hard error |
| Historical Data | In research mode with provider down | Clear non-mock error state shown; no silent failure |
| Backtesting | Run single strategy with default params | Summary, Charts, Trades, Debug tabs all render valid content |
| Backtesting | Price chart section | Price chart renders when equity result exists |
| Trading | Account summary loads | Trading status and balances render |
| Trading | Place paper order (AAPL, qty 1) |
Order success toast/message and order appears in recent orders |
| Configuration | Data feeds/API/System tabs | All sections load with no stale loaders |
| Header Status panel | Open/close panel and refresh | Values refresh and status fields remain coherent |
Historical Data:
- Symbol: AAPL
- Timeframe: 1 Day
- Data feed: Alpha Vantage (Active)
- Click Get historical data
- Click Compare QuotesBacktesting:
- Use Moving Average Crossover
- Symbol AAPL, default dates
- Click Run Backtest
- Validate Summary, Charts, Trades, DebugTrading:
- Confirm account summary visible
- Place paper order (AAPL, qty 1, market/day)Configuration:
- Validate Data Feeds, API Settings, and System Status tabsStatus panel and click refresh.bash scripts/ci/run_smoke.sh
npm --prefix frontend/trademaster_ui run test:ui-audit
This validates: - Backend import + smoke API contract - Frontend integration smoke contract - Full navigation/button/status/settings interaction audit via Selenium
For each failure, capture:
- URL and feature area
- Exact repro steps
- Actual result vs expected result
- Severity (P0, P1, P2)
- Screenshot filename
- Related backend/frontend log snippet
QA pass is complete when: - All top-level routes are verified - Smoke suite passes - All regressions are logged as GitHub cards/issues - Each issue has clear repro steps and acceptance criteria