Prepare Frame Control v0.4.45 candidate

This commit is contained in:
SAPHID committed 2026-10-26 10:33:21 +00:00
1 parent f88e2ed209
commit 59ea09325c
3 files changed
+78 -3

No files matched your search

+2 -2
View File
@@ -1,12 +1,12 @@
{
"name": "frame-control",
"version": "0.4.44",
"version": "0.4.45",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "frame-control",
"version": "0.4.44",
"version": "0.4.45",
"license": "MIT",
"devDependencies": {
"electron": "^44.4.5",
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "frame-control",
"productName": "Frame Control",
"version": "0.4.44",
"version": "0.4.45",
"description": "Desktop app for managing a Valve Steam Frame over SSH",
"private": true,
"main": "main.js",
@@ -0,0 +1,75 @@
# v0.4.45 candidate gate, 26 October 2026
The candidate starts from main commit
`f88e2ed209167a836282a969a71df4c897e658a8`, after PR #316 bound
Framey chunk URLs to installed store receipts and PR #317 fixed shared Decky
activation and confirmation controls. PR #319 also added a bounded retry to
the fake Frame test image after Valve's ARM64 package server repeatedly
truncated downloads. The app and lockfile are bumped to 0.4.45. The official
116-plugin catalog remains **4 works / 49 partial / 52 broken / 11 N/A**.
AlarMe remains partial: its silent timer, preset and stopwatch paths were
exercised with the official ARM64 backend, while sound, reminders, sleep
controls, closed-panel notifications and worn VR were not verified.
## Locked real Frame smoke
At 10:26 UTC, `scripts/frame-smoke.sh` ran on that combined main commit after
atomically acquiring its own `/tmp/frame-test.lock`. Read-only preflight found
SteamVR activity 3 (standby), proximity 6.3125 and battery 95%. On Frame OS
0.5.6 build `20261022.6153909`, ARM64 and Proton test titles installed,
launched and were removed. The optional x86_64 title installed and was
removed, but its launch was skipped because Steam Linux Runtime 4 is absent.
The result was **12 passed / 1 skipped / 0 failed**. Owned process and title
cleanup passed, the command exited 0 and released its lock. The private
detailed report is
`tests/smoke/results/2026-10-26T102653Z-20261022.6153909.json` in the
test checkout.
## Unworn Framey panel exercise
At 10:29 UTC, `scripts/framey-vr-check.py --exercise` ran the same combined
main commit under a separate random shared-lock owner. It began in standby
with proximity 6.3125 and battery 95%. The temporary managed panel, Decky
service and repository sample passed the shipped host's setting save and
fresh-iframe reopen, quick action, slider and text checks. A trusted
synthetic OpenVR pointer reached the panel. The scroll buttons moved a
temporary test region **0 → 120 → 0**; synthetic native wheel input still
produced no wheel event or movement. The stereo compositor image changed and
the `/dev/video99` mirror snapshot contained varied, nonblack pixels. This
single mirror image does not establish moving passthrough content or what a
wearer sees. The direct overlay image read returned error 24 and zero size,
so it is not used as texture evidence.
The private report and room-bearing images are in the test host's temporary
output folder. Reported hashes are stereo before
`84fe777535870c54cb381bbee3223684d1e0e4f2e6626e6d74ee902a4eec9c1b`,
stereo after
`4666d2b0908657489b8cc21520afc3deed4afa26a4c555c782298992b72abdd1`,
and mirror
`0769bbc45bd37266cc9ad80154cbd8a44ae3e1577cfa0d419e6af012afbf0fb4`.
No raw image is committed.
The exercise exited 0 with no cleanup errors, removed its temporary services
and power recovery timer, restored and read back the original
`power.pauseCompositorOnStandby=false` and
`power.turnOffScreensTimeout=5`, found battery 95% and released only its lock.
Its immediate post-run activity was 0 after the temporary wake. A separate
locked read-only check at 10:31 UTC found activity **3 standby**, proximity
6.3125, battery 95%, no cleanup errors, and released its lock.
The sample is not an official plugin. This exercise does not test the new
receipt-bound chunk path on real hardware or show AlarMe inside VR. Backend
registration, synthetic pointer delivery and changing compositor pixels do
not prove physical-controller or wearer-visible usability. No wearer
confirmation was available, so `scripts/framey-worn-check.py` was not run;
the hourly worn-headset schedule remains enabled.
## Publication boundary
This is candidate evidence, not a published-release result. Exact-head PR
and post-merge CI, tagged installers, all ten installer digests with
`SHA256SUMS`, independent package checks, publisher dry run and public
`update.json` readback remain required before publication. Physical Mac and
Windows launch of the eventual tagged bytes, audible alarms, official-plugin
VR panels, optical readability, physical controllers, haptics and the VR
keyboard remain unverified.