From 2aa77b30d684ee8dc9a3384648bcd9bfd5c634e5 Mon Sep 17 00:00:00 2001 From: SAPHID Date: Wed, 28 Oct 2026 16:59:05 +0000 Subject: [PATCH 1/4] Prepare Frame Control v0.4.53 candidate --- app/package-lock.json | 4 ++-- app/package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) 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", From d12071a1e7fc82326c32b38bd361ddbb326bcb5e Mon Sep 17 00:00:00 2001 From: SAPHID Date: Wed, 28 Oct 2026 17:07:36 +0000 Subject: [PATCH 2/4] docs: record v0.4.53 candidate smoke --- docs/evidence/v0453-candidate-2026-10-28.md | 48 +++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 docs/evidence/v0453-candidate-2026-10-28.md 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..fbe6972 --- /dev/null +++ b/docs/evidence/v0453-candidate-2026-10-28.md @@ -0,0 +1,48 @@ +# 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. + +## Gates still required + +This smoke is evidence for the versioned source candidate, not a release. +The final candidate must include the green support-matrix [PR #379](https://github.com/saphid/frame-control/pull/379) +and 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. From e0bdaebe4fa94991a51176c035a33275df952519 Mon Sep 17 00:00:00 2001 From: SAPHID Date: Wed, 28 Oct 2026 17:09:57 +0000 Subject: [PATCH 3/4] docs: compare candidate source with locked smoke --- docs/evidence/v0453-candidate-2026-10-28.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/docs/evidence/v0453-candidate-2026-10-28.md b/docs/evidence/v0453-candidate-2026-10-28.md index fbe6972..859a052 100644 --- a/docs/evidence/v0453-candidate-2026-10-28.md +++ b/docs/evidence/v0453-candidate-2026-10-28.md @@ -36,11 +36,19 @@ 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. 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 include the green support-matrix [PR #379](https://github.com/saphid/frame-control/pull/379) -and pass its own exact-head CI, e2e, native Decky runtime and four installer +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 From a1a376b4ee9464ac9d97426cce21e662e3a9bf1e Mon Sep 17 00:00:00 2001 From: SAPHID Date: Wed, 28 Oct 2026 17:23:18 +0000 Subject: [PATCH 4/4] docs: confirm v0.4.53 source after support matrix merge --- docs/evidence/v0453-candidate-2026-10-28.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/evidence/v0453-candidate-2026-10-28.md b/docs/evidence/v0453-candidate-2026-10-28.md index 859a052..6b45b14 100644 --- a/docs/evidence/v0453-candidate-2026-10-28.md +++ b/docs/evidence/v0453-candidate-2026-10-28.md @@ -41,8 +41,10 @@ After this smoke, the local release branch merged the exact green head 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. This does not replace final-commit -CI or installer verification. +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