Skip to content

Drop the curated chip list and default selection entirely - #20

Merged
GusFurtado merged 1 commit into
mainfrom
remove-curated-chips
Sep 12, 2026
Merged

GusFurtado merged 1 commit into
mainfrom
remove-curated-chips

Conversation

@GusFurtado

Copy link
Copy Markdown
Collaborator

Context

Follow-up to #19 (free-text ticker entry), per direction after trying the live preview: no fixed pre-selected tickers at all — just the search box. Stacked on #19 (targets that branch, not main, since it needs the ticker-string refactor from it).

What changed

UNIVERSE is now just a display-name lookup table (used by nameFor() for the "Name" columns), not a selectable shortlist — it's never rendered as chips anymore.

  • DEFAULT_SEL is now []. There's nothing to auto-run on load, so init() no longer calls runAnalysis() unconditionally — the report only appears once you've typed in 2+ tickers and pressed Run.
  • Added a "Get started" placeholder card (mascot + a one-line nudge) shown before the first run, replacing what used to be an empty string there (dead code before this PR, since a run always happened immediately on load).
  • renderChips() now renders exactly one chip per currently-selected ticker — every chip click means "remove" (still guarded by the minimum-2 floor). An empty universe shows a short muted hint instead of a blank row.
  • Run button is disabled below 2 tickers (previously only disabled while a request was in flight), and runAnalysis() itself no-ops below 2 as a second, independent guard.
  • Header's universe tag shows "No tickers yet" instead of an empty pill.

Verification

Headless Chromium: page loads with zero tickers, the get-started card, a disabled Run button, and zero /api/analyze calls (confirming auto-run is really gone); Run stays disabled at 1 ticker and enables at 2; removing back down to 2 is blocked at the floor; adding a 3rd then removing one works normally; a real analyze call fires only once 2+ tickers are selected and Run is pressed.

🤖 Generated with Claude Code

Follow-up to the free-text ticker entry PR, per direction: no more
fixed pre-selected tickers at all. UNIVERSE is now just a display-name
lookup table (used by nameFor() for the "Name" columns), not a
selectable shortlist — it's never rendered as chips anymore.

- DEFAULT_SEL is now []. There's nothing to auto-run on load, so
  init() no longer calls runAnalysis() unconditionally — the report
  only appears once the user has typed in >= 2 tickers and pressed Run.
- Added a "Get started" placeholder card (mascot + a one-line nudge)
  shown in the KPI slot before the first run, replacing what used to
  be an empty string there (dead code before this, since a run always
  happened immediately on load).
- renderChips() now renders exactly one chip per currently-selected
  ticker — no more curated/unselected chips mixed in — so every chip
  click means "remove" (still guarded by the minimum-2 floor). The
  empty universe renders a short muted hint instead of a blank row.
- Run button is disabled below 2 tickers (previously only disabled
  while a request was in flight), and runAnalysis() itself no-ops
  below 2 as a second guard, independent of the button state.
- Header's universe tag shows "No tickers yet" instead of an empty
  pill when nothing's selected.

Verified with headless Chromium: page loads with zero tickers, the
get-started card, a disabled Run button, and zero /api/analyze calls
(confirming auto-run is really gone); Run stays disabled at 1 ticker
and enables at 2; removing back down to 2 is blocked at the floor;
adding a 3rd then removing one works normally; a real analyze call
fires only once 2+ tickers are selected and Run is pressed.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@GusFurtado
GusFurtado changed the base branch from free-text-tickers to main September 12, 2026 00:50
@GusFurtado
GusFurtado merged commit dc3cf1f into main Sep 12, 2026
5 checks passed
@GusFurtado
GusFurtado deleted the remove-curated-chips branch September 12, 2026 01:02
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