Skip to content

release: multi-sector watchlists, reports progress, and UX improvements#5

Merged
atomize merged 8 commits into
mainfrom
develop
Mar 29, 2026
Merged

release: multi-sector watchlists, reports progress, and UX improvements#5
atomize merged 8 commits into
mainfrom
develop

Conversation

@atomize

@atomize atomize commented Mar 29, 2026

Copy link
Copy Markdown
Owner

Release Summary

Production release merging develop into main for deployment.

Changes

  • Real-time agent progress in Reports panel -- replaces fake 10s timer with live WebSocket agent status (spinner, ticker, model, queue depth)
  • Test alerts gated behind sandbox -- prevents accidental synthetic alert injection in production
  • Multi-sector watchlist system -- full CRUD for named watchlists with sector templates (AI Supply Chain, Defense, Energy, Biotech, Crypto, etc.)
  • Company names -- description field added to watchlist items DB, displayed in both Watchlist Builder and Market Data tables
  • Smart ticker autocomplete -- 300ms debounced search, keyboard navigation, loading indicators
  • Seed data restructured -- 7 named sector watchlists on first login instead of one flat Default list

PR History

Files Changed (11)

  • packages/dashboard/src/App.tsx
  • packages/dashboard/src/components/AgentSettings.tsx
  • packages/dashboard/src/components/ReportsPanel.tsx
  • packages/dashboard/src/components/WatchlistBuilder.tsx
  • packages/dashboard/src/components/WatchlistTable.tsx
  • packages/dashboard/src/hooks/useMonitorSocket.ts
  • packages/monitor/src/broadcaster.ts
  • packages/monitor/src/db.ts
  • packages/monitor/src/watchlist.config.ts
  • packages/monitor/src/watchlistService.ts
  • packages/shared/src/alert.schema.ts

Made with Cursor

atomize added 8 commits March 29, 2026 14:47
…sPanel

The "Run Now" button used a blind 10s setTimeout with no server feedback.
Now uses agentStatus from WebSocket to show real-time processing state,
current ticker, model info, and queue depth. Auto-clears when report arrives.

Made-with: Cursor
Test alert firing in AgentSettings is now only visible in sandbox mode,
matching the existing gating in AgentExportPanel. Button label clarifies
these are synthetic alerts to prevent confusion in production.

Made-with: Cursor
- Add getOrCreateWatchlist(userId, name) to db.ts for named list upsert
- Add deleteWatchlistByName and renameWatchlist to db.ts
- Fix saveWatchlist to resolve by name instead of always targeting Default
- Add createWatchlist, deleteWatchlist, renameWatchlist service exports
- syncFromTastytrade now correctly creates separate named lists

Made-with: Cursor
- Add create_watchlist, delete_watchlist, rename_watchlist WS message types
- Add description field to WatchlistItemSchema for company names
- Add broadcaster handlers for new watchlist operations
- Add client-side callbacks in useMonitorSocket hook

Made-with: Cursor
Replaces single flat WATCHLIST with SEED_WATCHLISTS grouped by sector:
AI Supply Chain, Defense & Aerospace, Energy, AI Semiconductors, Biotech,
Macro Hedges, and Crypto. Each sector has its own layer templates.
Adds company descriptions to all seed entries.
Seed function now creates separate named watchlists per sector.

Made-with: Cursor
…art search

Complete rewrite of WatchlistBuilder with:
- Left sidebar showing all watchlists with create/rename/delete actions
- Sector template picker when creating new watchlists (AI Supply Chain,
  Defense, Energy, Biotech, Crypto, etc.) with pre-populated layers
- Company name column in the watchlist table
- Debounced ticker search (300ms) with loading spinner
- Keyboard navigation (arrow keys + Enter) in search dropdown
- Dynamic layer dropdowns based on active watchlist's sector template

Made-with: Cursor
…ta table

- Add description column to watchlist_items DB schema with migration
- Pass description through save/load/seed pipeline
- Show company name column in WatchlistTable (Market Data view)
- Filter by company name in market data search
- Description persisted from ticker search results when adding symbols

Made-with: Cursor
…erhaul

feat: multi-sector watchlist system, reports progress, and UX improvements
@atomize
atomize merged commit 148d3ef into main Mar 29, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant