# Todo 32: Session UI ## Status done ## Goal Expose persisted sessions in the debug console so users can create/load sessions, replay chat messages and audit logs, and inspect call/turn/session usage. ## Scope - Add sidebar session controls for creating, refreshing, selecting, and loading sessions. - Send the selected `session_id` in the first WebSocket request while preserving lightweight follow-up turn messages. - Handle `session_started.session_id` from the backend. - Add a separate audit replay panel. - Add session usage displays for aggregate, turn, and model-call usage. - Keep live round stats separate from session aggregate usage. ## Verification - Static UI tests cover session controls, replay panels, session API calls, `session_id` WebSocket payloads, and usage render hooks. - WebSocket tests still prove multi-turn reuse behavior. - `node --check src/agent_lab/presentation/static/app.js` passes. - `uv run pytest tests/test_websocket_api.py -q` passes: 34 tests. - `uv run pytest` passes: 66 tests.