Picks
The value board and one pick's reasoning, plus the hidden-picks list that stops a rejected bet coming back.
src/app/(main)/(tabs)/picks · (tools)/value-bets ·
(tools)/value-bet-breakdown
The value board: model price against the market's, ranked.
One pick, opened
pick.tsx is a single selection, and value-bet-breakdown is why the model
priced it that way. On the website that reasoning is a panel beside the board;
on a phone there is no beside, so it is a screen.
Hiding a pick
src/lib/core/hidden-value-bets.ts — a pick you have dismissed does not come
back. That matters more here than on the web board: the list is scrolled with a
thumb, and a bet you have already decided against reappearing at the top is the
kind of friction that closes an app.
It is client state, persisted on the device, and it is checked in
hidden-value-bets.test.ts — because "dismissed" is exactly the sort of thing
that silently stops persisting.
Saved views
value-bet-views.ts holds the named setups. Same idea as the
screener's, and the same store.