Devices: restarting during startup starts afresh; a headset capture keeps its headset through clean-up (review round 33)

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
saphidandClaude Opus 5.5 committed 2026-09-29 08:42:19 +10:00
1 parent 72e4ccf080
commit 53c51e1888
2 files changed
+7

No files matched your search

+1
View File
@@ -194,6 +194,7 @@ function restartServer() {
server = null;
url = null;
if (old) await endServer(old);
if (starting) await starting.catch(() => {}); // a start it cut short: then start afresh
await load();
})().finally(() => { restarting = null; });
}
+6
View File
@@ -295,6 +295,12 @@ def status(_body):
def headset_view():
"""Both eyes as SteamVR composites them (see frame_vrshot.py); PNG bytes."""
# Counts as work: the copy and clean-up must reach the headset that took the capture.
with working():
return _headset_view()
def _headset_view():
# `timeout`: VR_Init can block if SteamVR is restarting.
out = ssh("timeout 15 python3 -", stdin=(HERE / "frame_vrshot.py").read_text(), timeout=30)
# SteamVR prints its own notices (e.g. about vrwebhelper) on stdout too, so