## Summary - Closes [#96](#96). - Parses versioned WS `status` frames in `MessageContext` (`activityStage` / `label` / `detail` / `history`). - New `ActivityIndicator`: completed stages with checks, ~400ms min display, elapsed/still-working notes, a11y live region, reduced-motion, dots fallback when no frames. - Wired through `ConversationDetailCard` + `AsyncDashboard2`; analytics `ACTIVITY_STAGE_COMPLETED`. ## Depends on Backend status emission from [chat_backend PR](https://git.aimloperations.com/ai_ml_operations/chat_backend/pulls) (`feat/62-p4-evals-63-agentic`). Without it, UI keeps three-dot fallback. ## Test plan - [x] Jest: `wsFrames`, `ActivityIndicator`, `ConversationDetailCard`, `MessageContext` - [ ] Manual light/dark + 320px width - [ ] Manual with backend status frames: Evaluating → Searching → Refining - [ ] Manual: stream interrupt clears indicator - [ ] Capacitor Android smokeReviewed-on: #104
This commit was merged in pull request #104.
This commit is contained in:
@@ -31,6 +31,7 @@ Page views: always via `Tracker` / `tracker.js` on prod + beta.
|
||||
| Message Rated | `MESSAGE_RATED` | MessageActions | `{ rating: 'up' \| 'down' \| 'cleared' }` |
|
||||
| Message Rating Reason | `MESSAGE_RATING_REASON` | MessageActions | `{ reason, hasComment }` |
|
||||
| Message Exported | `MESSAGE_EXPORTED` | MessageActions, AsyncDashboard2 | `{ format, scope }` |
|
||||
| Activity Stage Completed | `ACTIVITY_STAGE_COMPLETED` | MessageContext | `{ stage, durationMs }` (no label/detail text) |
|
||||
|
||||
## Identify
|
||||
|
||||
|
||||
Reference in New Issue
Block a user