Skip to content

Lightshow status improvements - #18

Merged
frozenwizard merged 2 commits into
mainfrom
lightshow-status-improvements
Aug 3, 2026
Merged

Lightshow status improvements#18
frozenwizard merged 2 commits into
mainfrom
lightshow-status-improvements

Conversation

@frozenwizard

Copy link
Copy Markdown
Owner

Improves tracking of any running lightshow.

frozenwizard and others added 2 commits August 2, 2026 22:18
The manager now records what the model is doing, not just whether a
task exists:

- States: idle, running, completed, stopped, errored, plus finished
  for one-shot actions like "All LEDs on". Each show runs under a
  supervisor coroutine that records its outcome — MicroPython's Task
  has no done-callbacks or exception() to inspect after the fact.
- Shows are started by their config name, so the start/stop responses
  and the index page report the real show name instead of "wrapper".
- Manual LED routes (/led/<x>/on|off, /all/on|off) go through the
  manager: they cancel any running show first, so a show can no longer
  fight the user over the LEDs, and the UI shows the action as the
  last activity.
- New /lightshow/status JSON route; index renders a status one-liner.
- Show errors are recorded by the supervisor instead of being
  swallowed as an unread task result by safe_execution, which now only
  guards request handlers. lightshow_route/RouteDecorator.py retired;
  the manager lives in src/server/lightshow_manager.py.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@frozenwizard
frozenwizard merged commit acda817 into main Aug 3, 2026
5 checks passed
@frozenwizard
frozenwizard deleted the lightshow-status-improvements branch August 3, 2026 03:41
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