You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As a user, I want a single settings page where I can manage my theme preference, edit my profile so that all personal configuration lives in one predictable place and the chat feels transparent instead of frozen.
A central /settings route as the single hub (today: only /profile exists, theme toggle is scattered in the sidebar).
Chat loading/generation UX — concrete progress/typing indicator + cancel option while the LLM streams an answer (NFR MP Channels #4 — current gap; no loading/streaming/progress hits in features/chatbot).
A /settings route exists and is reachable from the main navigation; it groups theme, profile, and chat sections.
Theme: the existing ThemeToggle has a fixed home in settings (light/dark/system preference) — no behaviour change, just placement.
Profile: the existing profile-edit form (Frontend — profile edit form #208) is reachable from settings; the separate /profile route may stay or redirect.
Chat generation UX: while the LLM is generating/streaming an answer, the chat shows a clear progress/typing indicator (icon + text label, not colour alone — per AGENTS.md §7) and a cancel option; empty/error states handled (NFR MP Channels #4).
All sections are responsive (desktop primary, mobile stacks — AGENTS.md §8) and work in light/dark themes (§7).
Backend — (only if needed) expose a lightweight chat-status/streaming endpoint if the current chat API doesn't already support progress signals; otherwise no backend change.
QA — tests for settings navigation, chat-loading indicator states (generating / streaming / error / cancelled), responsive + light/dark.
User Story
As a user, I want a single settings page where I can manage my theme preference, edit my profile so that all personal configuration lives in one predictable place and the chat feels transparent instead of frozen.
Context & Motivation
team:frontend(hub + chat-loading UX),team:backend(only if a chat-status endpoint gap exists)ThemeProvider+ThemeToggle+ localStorage persist (NFR MP Define dev team split (Backend, Retrieval/AI, Frontend) #3 ✓).ProfilePage/ProfileLayout+ Frontend — profile edit form #208 (closed); story [Story]: Edit user profile #113 (open, Sprint 4)./settingsroute as the single hub (today: only/profileexists, theme toggle is scattered in the sidebar).loading/streaming/progresshits infeatures/chatbot).Acceptance Criteria
/settingsroute exists and is reachable from the main navigation; it groups theme, profile, and chat sections.ThemeTogglehas a fixed home in settings (light/dark/system preference) — no behaviour change, just placement./profileroute may stay or redirect.Sub-Tasks (by team)
/settingsroute + section layout; wire existingThemeToggle+ profile-edit form; chat-loading/typing indicator + cancel button.Dependencies
ThemeProvider/ThemeToggle.