+5
−2
+16
−15
Loading
dependency-guard.js + __init__.py:
- endpoint-roots now carries gates map (path → parent-chain gate path)
- isRootContainer: dependent roots (e.g. /camera/power) are accessible when
their infrastructure gate is active, regardless of outlet state
- applyGuard: always remove subsystem-offline when going online, even from
root containers (fixes class not removed after offline→online transition)
synoptic.svg: replace stage group with cross-shaped mirror element
synoptic.js (animateStage):
- SVG default = 0mm; mirror moves left as position increases (0mm = right end)
- travel = refWidth − mirrorWidth so mirror stays within stage-reference bar
- clamp range corrected to 0–120mm
Co-Authored-By:
Claude Sonnet 4.6 <noreply@anthropic.com>