Control states — “Watch a legislator” & “Opt into a topic”
Every control, every state, with the meaning-cued indicators that tell the user *why* a bill floated. These are the pieces of §5B / §10 of the design spec, shown in isolation for the build lane.
1 · Resolve ZIP / address → legislators
Fast path first; falls back to address or manual because a ZIP can span more than one district.
Result states:
2 · Watch toggle (legislator)
Watches a legislator by authorship or committee membership. Optimistic update on toggle; re-ranks the personal band instantly.
Default · not watched
R. RiuSenate D-08 · R · Health
Not watched
Off. No effect on ranking.
Checked · watching
M. SchiavoAssembly D-14 · D · Resources & Water
Watching
On. Bills float to top. Green bar.
Focus
T. VegaAssembly D-14 · D
Not watched
2px focus ring visible.
Disabled · off-rolodex
(term-end)Not on current roster
Unavailable
Past legislator; locked out.
3 · Topic opt-in chip
Opt into a subject-matter tag (from the LLM lane). Count shows how many bills carry it. Toggling re-ranks.
Off
Not followed. No effect.
On (followed)
Followed. Bills float up.
Focus
Keyboard target.
Unavailable · no tags yet
LLM lane warming; not offered yet.
4 · “Why this here” indicators (the float reason)
The left bar + chip tell the user why a bill floated — a trust requirement, not decoration.
AB 28 — Waste standards
Schiavo · Resources & Water · 9:30am
● Your legislator · Topic: Waste
Why is this here? →
green bar = watched-legislator match
blue bar = opted-in-topic match
color never the only signal — each pair carries text too