Skip to content

Make the Home view a clear status summary - #894

Merged
enaboapps merged 4 commits into
mainfrom
884-home-status
Sep 25, 2026
Merged

enaboapps merged 4 commits into
mainfrom
884-home-status

Conversation

@enaboapps

@enaboapps enaboapps commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

Closes #884. Stacked on #893, tracked in #891.

What changed

  • The Home band is now a status hero. Its title names the state: Ready, Finish setting up, Paused, Paused for mobile, Switch control needs attention, or Switch control while loading. The live status message is unchanged.
  • The hero's leading edge and icon take a tone: green when ready, amber when setup or an error needs attention, neutral otherwise. The switches action is primary only while something is left to do and secondary once ready.
  • Input access, saved switches, scanning and the optional mobile connection are one readiness checklist. The mobile row shows Connect mobile, or Disconnect when connected.
  • Status tiles show done with green and a tick badge, needs attention with amber and an exclamation badge, and no badge when a row only names its subject. Tiles are aria-hidden because the row text already states the status.
  • The Mobile connection band uses the same tones, with starting Bluetooth shown as neutral rather than a problem.

Validation

On this head:

  • npm run lint passed
  • npm test passed: 238 Vitest tests and 5 Node tests
  • npm run build passed
  • cargo fmt --check, cargo clippy --all-targets -D warnings and cargo test passed (566 tests, 1 ignored). No Rust changes in this stack.
  • Rendered Home and Mobile in headless Chrome at 920px and 620px, light and dark.

Review follow-up

An independent review of this layer's head raised these points, now addressed:

  • The Home title, tone and message now come from one ordered function, src/homeStatus.ts, so they can't contradict each other. Unavailable input access, Remote in control and a mobile connection without a local Select no longer say "Finish setting up". Launch no longer flashes amber while switches load. 13 new cases in src/homeStatus.test.ts cover each state.
  • The mobile row reads "Mobile connection (optional)". The Mobile page band is amber only for Bluetooth problems a person can fix: powered off, unauthorised, or another instance running.
  • A re-review asked for a case covering Remote in control when everything else is ready. It is now in src/homeStatus.test.ts.

🤖 Generated with Claude Code

Rebase validation (2026-09-25)

Rebased onto current main (7fb8fce, including #881) in stack order. git range-diff shows every commit in this PR is patch-equivalent to its previous head, and the intended parent remains its PR base. On the final stack tip (40c75cc), Node 24.19.0 lint, tests and build passed; Rust 1.97.1 format check, Clippy and tests passed. An independent review of the updated PR heads found no actionable findings. CI is rerunning on each new head.

@enaboapps enaboapps added this to the v1.0.0-rc.16 milestone Sep 25, 2026
@enaboapps
enaboapps force-pushed the 883-rows-headers-sidebar branch from 29dd84b to b9c822c Compare September 25, 2026 10:56
@enaboapps
enaboapps marked this pull request as ready for review September 25, 2026 11:49
OwenMcGirr and others added 3 commits September 25, 2026 12:49
The Home band becomes a status hero whose title names the state (Ready,
Finish setting up, Paused, Paused for mobile, or needs attention), with
a matching leading-edge tone and one action that is primary only while
something is left to do. Input access, switches, scanning and the
optional mobile connection share one readiness checklist. Status tiles
show done or needs-attention with both colour and a corner badge, and
are hidden from assistive tech since the row text already says it.

Closes #884

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The title was computed separately from the message and could contradict
it: unavailable input access said "Finish setting up", Remote in control
or a mobile connection without a local Select said "Finish setting up",
and every launch flashed amber while switches loaded. homeStatus now
returns all three from one ordered list of cases, amber only for things
a person can fix here, with a test for each case. The mobile row reads
"Mobile connection (optional)", and the Mobile page band stays neutral
for Bluetooth that is starting, unsupported or failed.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@enaboapps
enaboapps force-pushed the 883-rows-headers-sidebar branch from b9c822c to ff5c0f1 Compare September 25, 2026 11:50
@enaboapps
enaboapps marked this pull request as draft September 25, 2026 11:50
Base automatically changed from 883-rows-headers-sidebar to main September 25, 2026 13:32
@enaboapps
enaboapps marked this pull request as ready for review September 25, 2026 13:32
@enaboapps
enaboapps merged commit 02319e4 into main Sep 25, 2026
6 checks passed
@enaboapps
enaboapps deleted the 884-home-status branch September 25, 2026 13:55
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.

Make the Home view a clear status summary

2 participants