diff --git a/app/package-lock.json b/app/package-lock.json index 387f581..c112616 100644 --- a/app/package-lock.json +++ b/app/package-lock.json @@ -1,12 +1,12 @@ { "name": "frame-control", - "version": "0.4.52", + "version": "0.4.53", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "frame-control", - "version": "0.4.52", + "version": "0.4.53", "license": "MIT", "devDependencies": { "electron": "^44.4.5", diff --git a/app/package.json b/app/package.json index 13c6c8c..29e787f 100644 --- a/app/package.json +++ b/app/package.json @@ -1,7 +1,7 @@ { "name": "frame-control", "productName": "Frame Control", - "version": "0.4.52", + "version": "0.4.53", "description": "Desktop app for managing a Valve Steam Frame over SSH", "private": true, "main": "main.js", diff --git a/docs/evidence/v0453-candidate-2026-10-28.md b/docs/evidence/v0453-candidate-2026-10-28.md new file mode 100644 index 0000000..6b45b14 --- /dev/null +++ b/docs/evidence/v0453-candidate-2026-10-28.md @@ -0,0 +1,58 @@ +# v0.4.53 candidate smoke, 28 October 2026 + +The versioned source candidate `2aa77b30d684ee8dc9a3384648bcd9bfd5c634e5` +bumps only `app/package.json` and its lockfile from 0.4.52 to 0.4.53 on +main commit `978af2f2879d80a22a72ea5a6992884424ed3480`. That main commit +contains [PR #377](https://github.com/saphid/frame-control/pull/377), which +copies desktop-selected files directly rather than staging them through the +8 GiB HTTP upload route. Browser uploads keep the 8 GiB limit. A physical +26.5 GB USB-to-Frame transfer has **not** been verified. + +## Locked real Frame smoke + +At 17:04:22 UTC, `scripts/frame-smoke.sh` ran from that candidate on lxso2. +Before any status read or title change, it acquired `/tmp/frame-test.lock` +atomically with its unique owner token. Its read-only preflight found +SteamVR activity **3 (standby)**, proximity raw **2.3125**, and battery +**100%**. It did not request pairing or VR input. + +On Frame OS 0.5.6 build `20261022.6153909`, ARM64 and Windows/Proton tiny +test titles installed, launched and were removed. The x86_64 title installed +and was removed; its optional launch was **skipped** because Steam Linux +Runtime 4 was absent. The result was **12 passed, one optional skip, zero +failed**. The runner's cleanup passed and it released only its own lock. +The private JSON result is +`/tmp/frame-control-v0453-smoke-results/2026-10-28T170422Z-20261022.6153909.json` +with SHA-256 +`5a5bc8b1da1ef405235d660a2587c84204afd0816c80f8d9dfd9577dac72d547`. + +A separate read-only audit acquired and released a fresh unique-owner lock. +It found activity **3**, proximity raw **2.3125**, battery **100%**, no +reserved smoke title files or metadata, and no processes owned by those +title paths. Its private JSON result is +`/tmp/frame-v0453-cleanup-audit.json` with SHA-256 +`6ab884b6adffb14c4643e30ee2e5fe247b2ebba7a3ad5424515927cd40146e79`. +No power or security setting was changed. Nobody was confirmed wearing the +Frame; wearer-visible VR, physical-controller use and the optional x86_64 +launch remain unverified. The separate hourly worn check stays enabled. + +After this smoke, the local release branch merged the exact green head +`a1bc084400058908132e6937322bc97e71ed5d68` of support-matrix PR #379. +Compared with the smoked commit `2aa77b3`, only this evidence file and +`docs/current-support-matrix.md` changed. A diff over `app`, `ui`, `frame`, +`scripts`, `tests`, `desktop`, `mac` and `ios` was empty; the executable +source tested by smoke remains the same. The branch then merged PR #379's +main commit `05be1e2c1341ad9f36c6d5bbda27e7eaaf84ef59`; the executable +diff remained empty. This does not replace final-commit CI or installer +verification. + +## Gates still required + +This smoke is evidence for the versioned source candidate, not a release. +The final candidate must pass its own exact-head CI, e2e, native Decky +runtime and four installer +previews. Its final merged main commit must then pass exact-commit CI, e2e +and native runtime. The tag must build all four installer jobs and checksums +without failed, cancelled, skipped or overridden gates. Independent package +checks, release verification and a successful publisher dry run are required +before publication. Any unfinished or failed gate holds v0.4.53 as a draft.