aboutsummaryrefslogtreecommitdiffstats
path: root/hooks/pre-commit
diff options
context:
space:
mode:
authorgbc dev <gbc@localhost>2026-09-24 12:45:14 +0200
committergbc dev <gbc@localhost>2026-09-24 12:45:14 +0200
commite235adb5cf9655b23d0097f8ab184e54d2d7dea0 (patch)
treea5818e19600407baddbbeb000cd56827e4354259 /hooks/pre-commit
parentweb: the switch builds itself a small network on arrival (diff)
downloadsl0pboy-e235adb5cf9655b23d0097f8ab184e54d2d7dea0.tar.gz
sl0pboy-e235adb5cf9655b23d0097f8ab184e54d2d7dea0.tar.xz
sl0pboy-e235adb5cf9655b23d0097f8ab184e54d2d7dea0.zip
web: show what the demo is doing while it boots, and lock the controls
The page spent ~20s assembling itself with nothing to show for it but four Game Boys sitting on banners, which reads as broken rather than busy. There's now a boot banner with a spinner naming the current step ("GB2 is 10.0.0.4 - joining #gb on 10.0.0.2... step 3/4"), and each machine's card pulses while it's still being set up. When it finishes, the banner turns green and says so. The controls are disabled for the duration - not just cosmetics: plugging in a Game Boy mid-scenario takes the address the next step is about to be told to connect to. Two bugs found by testing the lock rather than assuming it: the DHCP-lease handler re-enabled "ping across" directly instead of going through refresh(), and refresh() itself had a leftover second assignment to the same button that overwrote the demo-aware one. Both now go through refresh(), which is the only thing that decides whether a control is live. Verified: all four controls stay off across every step and come back together at the end, exactly one card pulses at a time, and the banner reaches "demo ready" with no exceptions.
Diffstat (limited to 'hooks/pre-commit')
0 files changed, 0 insertions, 0 deletions