diff --git a/app/package-lock.json b/app/package-lock.json index 87dbc22..44a4e1a 100644 --- a/app/package-lock.json +++ b/app/package-lock.json @@ -1,12 +1,12 @@ { "name": "frame-control", - "version": "0.4.43", + "version": "0.4.44", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "frame-control", - "version": "0.4.43", + "version": "0.4.44", "license": "MIT", "devDependencies": { "electron": "^44.4.5", diff --git a/app/package.json b/app/package.json index 91f6665..b815f52 100644 --- a/app/package.json +++ b/app/package.json @@ -1,7 +1,7 @@ { "name": "frame-control", "productName": "Frame Control", - "version": "0.4.43", + "version": "0.4.44", "description": "Desktop app for managing a Valve Steam Frame over SSH", "private": true, "main": "main.js", diff --git a/docs/evidence/v0444-candidate-2026-10-26.md b/docs/evidence/v0444-candidate-2026-10-26.md new file mode 100644 index 0000000..e30dad9 --- /dev/null +++ b/docs/evidence/v0444-candidate-2026-10-26.md @@ -0,0 +1,56 @@ +# v0.4.44 candidate gate, 26 October 2026 + +This candidate starts from main commit +`c50f96510fdb42a2aee227436a04c0cfe8817919`, which contains PR #312's +Framey scroll buttons and PR #313's read-only installed-app metadata projection. +It also carries the documentation-only v0.4.43 release evidence from PR #314. +The app and lockfile are bumped to 0.4.44. No compatibility label changes: +the exact-version official Decky catalog remains **4 works / 49 partial / +52 broken / 11 N/A**. Junk-Store's About and Dependencies pages now render in +the local Chromium test with its actual ARM64 backend; the plugin remains partial. + +## Real Frame checks on the combined code + +At 08:37 UTC, `scripts/frame-smoke.sh` ran on that main commit under its own +`/tmp/frame-test.lock` owner. Locked preflight found SteamVR activity 3 +(standby), proximity 6.25 and battery 99%. On Frame OS 0.5.6 build +`20261022.6153909`, ARM64 and Proton executables launched; the optional x86_64 +launch was skipped because Steam Linux Runtime 4 is absent. The result was +**12 passed / 1 skipped / 0 failed**. It removed its test titles, exited 0 and +released its owned lock. The private result is +`tests/smoke/results/2026-10-26T083719Z-20261022.6153909.json` on the test +host. + +At 08:45 UTC, `scripts/framey-vr-check.py --exercise` ran the same code under +a separate unique shared-lock owner, beginning in standby (activity 3, +proximity 6.3125, battery 99%). Synthetic native OpenVR clicks on the new +**Scroll plugin down/up** buttons moved a temporary sample region 0 → 120 → 0. +The sample setting save/reopen, quick action, slider, text and compositor-change +checks passed. Native synthetic wheel attempts still produced no event or +movement. Cleanup removed test services and its power watchdog, restored the +original `false` / `5` power values, read battery 99%, and released its lock +with no errors. The private report is +`/tmp/framey-scroll-postmerge-direct-20261026/result.json` on the test host. +This is an unworn sample panel check. It does not prove physical controller +scrolling, optical readability or an official-plugin panel in VR. + +## Publication boundary + +The version-bumped release branch also ran `scripts/frame-smoke.sh` after its +normal merge of PR #314's documentation. At 08:59 UTC, its locked preflight +found activity 3, proximity 6.3125 and battery 97%. The result was again +**12 passed / 1 skipped / 0 failed** on the same Frame OS build; ARM64 and +Proton launches passed, while the optional x86 launch was skipped for the +missing Steam Linux Runtime 4. Owned test title/process cleanup passed, the +command exited 0, and its lock was released. The private result is +`tests/smoke/results/2026-10-26T085951Z-20261022.6153909.json` on the test +host. This evidence-only paragraph is the sole change after that smoke. + +PR #313's own actual ARM64 backend/library test is documented in +[installed-context evidence](framey-installed-context-2026-10-26.md). Its +dependency installation, login, game operations, RSS and optional websocket +remain unverified. The candidate still needs exact-head CI, tagged builds, +ten installer digests with `SHA256SUMS`, downloaded package checks, publisher +dry run and public updater readback before publication. A worn check requires +activity, proximity and reliable wearer confirmation; none was available, so +the hourly schedule stays enabled.