Drop the curated chip list and default selection entirely - #20
Merged
Merged
Conversation
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
force-pushed
the
remove-curated-chips
branch
from
September 12, 2026 00:50
1c46bcb to
2ae9542
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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
UNIVERSEis now just a display-name lookup table (used bynameFor()for the "Name" columns), not a selectable shortlist — it's never rendered as chips anymore.DEFAULT_SELis now[]. There's nothing to auto-run on load, soinit()no longer callsrunAnalysis()unconditionally — the report only appears once you've typed in 2+ tickers and pressed Run.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.runAnalysis()itself no-ops below 2 as a second, independent guard.Verification
Headless Chromium: page loads with zero tickers, the get-started card, a disabled Run button, and zero
/api/analyzecalls (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