# Post-MVP Roadmap & Enhancements Checklist This checklist tracks future features, performance optimizations, and architectural enhancements planned for post-MVP releases. --- ## 🚀 Performance & Architecture - [ ] **Eliminate HTTP Polling (Replace with WebSockets / SSE / Real-Time Push)** - **Explanation**: Currently, `App.jsx` uses a 5-second `setInterval` HTTP polling loop to fetch active run logs and server status. Replacing HTTP polling with Server-Sent Events (SSE) or WebSockets will eliminate redundant HTTP request overhead, reduce database query load, and push real-time backend updates to connected browser clients instantly. --- ## 🎨 User Experience & Real-Time Feedback - [ ] **Real-Time AI Evaluation Counter & UI Loading Status** - **Explanation**: When a crawl run finishes scraping (e.g. 26 ads), the AI fields should reflect real-time LLM processing rather than jumping to 26 immediately. - **Backend**: Celery worker (`evaluate_ad_batch_with_ai`) will increment `ads_evaluated_count` dynamically as each batch completes LLM calls. - **Frontend**: Show an active loading status (e.g., `Evaluating AI... (5/26)`) in the Runs History table until all queued evaluations finish (`26/26 ✓`). ---