BetterFrame/kiosk
Mitchell R 77b58c07fd feat(kiosk): track main/sub pipelines independently in warm pool
Pool was keyed by camera_id, so a cell flipping M→S tore down the old
pipeline and started fresh. With (camera_id, badge) keys the main and
sub variants live alongside each other: switching badge promotes the
new one to Warm and leaves the previous one to cool down via the normal
state machine, so flipping back inside the cooldown is instant.

ensure_warm no longer touches sibling badge entries. recompute_global_
state computes warm/hot sets as (cam, badge) pairs by calling
pick_stream per cell with its area fraction, so the planner sees what
ensure_warm will actually create.
2026-05-13 13:00:35 +02:00
..
src feat(kiosk): track main/sub pipelines independently in warm pool 2026-05-13 13:00:35 +02:00
Cargo.lock fix(kiosk): complete hot/warm/cooling/cold state machine 2026-05-13 02:59:22 +02:00
Cargo.toml feat: multi-display + snapshot + health + GPIO + nodered embed 2026-05-13 01:18:22 +02:00
prototype.sh fix(deploy): require proxied local services 2026-05-11 09:51:00 +02:00