From ce3e023c19853bbf091595dd00ded8c1b2b5cf4f Mon Sep 17 00:00:00 2001 From: Torsten Mahr Date: Tue, 22 Sep 2026 22:53:57 +0200 Subject: [PATCH] docs: site and smoke-test log for 1.3.3; fix a flaky plugin smoke test MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The plugin's own smoke.js raced the placeholder title ('—', before the first API poll resolves) against the real first paint, occasionally passing the assertion the wrong value (seen in PR #34's CI). Waits for the actual expected title now, not just any setTitle. Co-Authored-By: Claude Sonnet 5 Claude-Session: https://claude.ai/code/session_01EGjbE4ZXFZyXFd2GQ7xRAp --- CHANGELOG.md | 5 +++++ RELEASE_CHECKLIST.md | 1 + Tools/openpromptr-streamdeck/test/smoke.js | 10 +++++++++- docs/index.html | 14 +++++++------- docs/self-assessment.md | 2 +- 5 files changed, 23 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 04f8109..26f23b4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Fixed + +- A flaky Stream Deck plugin smoke test (`test/smoke.js`) that could race the + placeholder title against the real first paint. + ## [1.3.3] - 2026-09-22 ### Added diff --git a/RELEASE_CHECKLIST.md b/RELEASE_CHECKLIST.md index 1ed4d2e..b21866a 100644 --- a/RELEASE_CHECKLIST.md +++ b/RELEASE_CHECKLIST.md @@ -141,6 +141,7 @@ until one changes how the app is built, signed or packaged. | v1.3.0 | 2026-09-20 | pass — 9 of 9 checks; app reports `OpenPromptr 1.3.0 (64)` | AI agent | | v1.3.1 | 2026-09-20 | pass — 9 of 9 checks; app reports `OpenPromptr 1.3.1 (68)` | AI agent | | v1.3.2 | 2026-09-21 | pass — 9 of 9 checks; app reports `OpenPromptr 1.3.2 (74)` | AI agent | +| v1.3.3 | 2026-09-22 | pass — 9 of 9 checks; app reports `OpenPromptr 1.3.3 (81)` | AI agent | ## Release security gate log diff --git a/Tools/openpromptr-streamdeck/test/smoke.js b/Tools/openpromptr-streamdeck/test/smoke.js index 3186ac0..4912840 100644 --- a/Tools/openpromptr-streamdeck/test/smoke.js +++ b/Tools/openpromptr-streamdeck/test/smoke.js @@ -110,7 +110,15 @@ check("a key that appears is painted from the app's state, with a custom label", const rotation = "com.trsdn.openpromptr.rotation"; tell({ event: "willAppear", context: "out", action: output, payload: { settings: { title: "Prompter" } } }); tell({ event: "willAppear", context: "rot", action: rotation, payload: { settings: {} } }); - await until(() => last("setTitle", "out") && last("setTitle", "rot"), "first paint"); + // Not just "a setTitle arrived": the very first paint, before the API has + // been polled, is the "—" placeholder — wait for the one that reflects + // the state this test set up, or the assertions below race it. + await until( + () => + last("setTitle", "out")?.payload.title === "Prompter" && + last("setTitle", "rot")?.payload.title === "0°", + "first paint" + ); assert.equal(last("setTitle", "out").payload.title, "Prompter"); assert.equal(last("setState", "out").payload.state, 0); assert.equal(last("setTitle", "rot").payload.title, "0°"); diff --git a/docs/index.html b/docs/index.html index 9cf2c4e..8113eb0 100644 --- a/docs/index.html +++ b/docs/index.html @@ -303,13 +303,13 @@

OpenPromptr

Maintained - v1.3.2 + v1.3.3 macOS 13+ MIT licence
- - Download OpenPromptr 1.3.2 + + Download OpenPromptr 1.3.3 Build from source @@ -388,9 +388,9 @@

Get it

Download and open the disk image.

- OpenPromptr-v1.3.2-macOS-arm64.dmg + OpenPromptr-v1.3.3-macOS-arm64.dmg — verify against its - published checksum + published checksum if you'd like — then drag OpenPromptr into Applications.

@@ -479,8 +479,8 @@

Project

  • Changelog
  • - Describes version 1.3.2. Page last - reviewed . + Describes version 1.3.3. Page last + reviewed .

    diff --git a/docs/self-assessment.md b/docs/self-assessment.md index b6934d9..08c1553 100644 --- a/docs/self-assessment.md +++ b/docs/self-assessment.md @@ -60,7 +60,7 @@ Archived (the repository is active). - **R05** — 1.15.0 asks for a smoke kit, a documented command that checks the published artifact without an operator, run and recorded. `Scripts/smoke-published.sh` is that kit and is documented in `RELEASE_CHECKLIST.md`; it was run against - v1.3.0, v1.3.1 and v1.3.2 (2026-09-20 and 2026-09-21) (9 of 9 checks: checksums, updater copy identical, + v1.3.0 through v1.3.3 (2026-09-20 to 2026-09-22) (9 of 9 checks: checksums, updater copy identical, notarization stapled, Gatekeeper accepts DMG and app, signature verifies, bundle identifier and version, app launches and reports `OpenPromptr 1.3.0 (64)`), and the result is in the log there. The core function is not