fix(federation): kiosk map goes fully static — kills the blank-load stall
Demo images / Build & push demo images (push) Successful in 3m31s

The GSAP entrance intro needs healthy rAF delivery to reach opacity 1;
on a paint-starved kiosk it stalls and the federation/peers screen reads
as BLANK until a lucky refresh. Kiosks now take the existing staticMode
branch (no intro, no ticker — everything lands in place instantly); the
2D default and 2D/3D toggle stay. Half-rate tick kept for any future
non-static kiosk path.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
archipelago
2026-08-14 03:57:05 -04:00
co-authored by Claude Fable 5
parent 2399eeac66
commit d05fa6988d
@@ -1182,7 +1182,15 @@ function measure() {
}
function initialBuild() {
staticMode = prefersReducedMotion()
// Kiosk TVs get the fully static map: no entrance animation, no ticker.
// The GSAP intro needs healthy rAF delivery to ever reach opacity 1 — on
// a paint-starved kiosk it stalls and the screen reads as BLANK until a
// lucky refresh (framework-pt, 2026-08-14). Half-rate ticking (below)
// helped but any continuous SVG animation is still the single biggest
// load on the kiosk's compositor, and at TV distance the still map loses
// nothing. Everything lands in place immediately, graph updates apply
// instantly, and the 2D/3D toggle still works.
staticMode = prefersReducedMotion() || kioskLowPower
built = true
applyGraph()