### Implemented nova spaces multi-select
##### Summary
- Renamed "All Spaces" to "Nova Spaces" - now filters to only nova content (sm_project_*)
- Added multi-select spaces support via "Select Spaces" modal
- Projects API now returns `{ nova, developer }` instead of `{ projects }`
##### Changes
- `selectedProject` → `selectedProjects[]` (array-based selection)
- New `SelectSpacesModal` component for picking multiple spaces
- Selected spaces appear at top in modal
- Search works by containerTag
- Graphs filter by selected spaces
1. New chat messages saving to old thread (race condition)
2. Feedback modal null handling issue (boolean | null not coerced to boolean)
3. Wrong icon on Integrations tab (was Cable, now Sun)
4. Wrong icon on Graph tab (was LayoutGridIcon, now GraphIcon)
5. Missing cursor pointer on header tabs
6. Default view was "graph" instead of "list"
Summary
- Migrate from consumer_pro to api_pro billing product across the app
- Enable Nova app for all users (remove feature flag)
- Add credits-based usage tracking with tokens abstraction
Improved memory detail UI with better document icons and layout and Added dark mode support to the Chrome extension button
### What changed?
- Enhanced the WebsiteCard component with an `onOpenDetails` prop
- Improved the MemoryDetail component with:
- Better layout for document headers and source links
- Enhanced content scrolling with proper height constraints
- Improved spacing and padding in various sections
- Added favicon support to document icons, showing website favicons for webpage documents
- Fixed document type detection for webpages and URLs
- Added dark mode support to the Chrome extension button component with appropriate color classes
[Screen Recording 2025-10-03 at 11.34.01 PM.mov <span class="graphite__hidden">(uploaded via Graphite)</span> <img class="graphite__hidden" src="https://app.graphite.dev/user-attachments/thumbnails/2f6ceef2-43a2-4e11-bafa-0f3ce614696b.mov" />](https://app.graphite.dev/user-attachments/video/2f6ceef2-43a2-4e11-bafa-0f3ce614696b.mov)