--- id: TASK-56 title: Consistent headers across all rApps + mi AI assistant status: Done assignee: - '@claude' created_date: '2026-02-25 23:10' labels: - ux - shared-header - ai - mi dependencies: [] references: - shared/components/rstack-mi.ts - server/index.ts - server/shell.ts - website/public/shell.css priority: high --- ## Description Make all rApp headers identical (fix height mismatches, remove custom overrides) and add the mi AI assistant search bar to every page header. ## Acceptance Criteria - [ ] #1 All 7 module CSS files use 56px header height (not 52px) - [ ] #2 No module CSS overrides the shared header background - [ ] #3 All headers have 3-section layout: left (switchers) / center (mi) / right (identity) - [ ] #4 rstack-mi component registered in shell.ts and present in all 4 HTML pages + both shell renderers - [ ] #5 POST /api/mi/ask streams from Ollama with rApp-aware system prompt - [ ] #6 Fallback responses when Ollama unavailable ## Final Summary Implemented in commit 0813eed. Fixed 52px→56px in 7 module CSS files (pubs, funds, providers, books, swag, choices, cart). Removed header background overrides from books.css and pubs.css. Created rstack-mi web component with streaming chat UI and added to all pages. Server endpoint /api/mi/ask proxies to Ollama with dynamic system prompt built from all 22 registered modules. Keyword-based fallback when AI service is offline. Configurable via MI_MODEL and OLLAMA_URL env vars.