CI: Windows smoke job on the existing windows runner — install the built NSIS bundle and drive the app with tauri-driver #19

Open
opened 2026-09-18 21:41:08 -04:00 by jared · 0 comments
Owner

release.yml already builds on runs-on: windows. Add a job after build-windows that installs the fresh NSIS bundle silently, starts tauri-driver (+ msedgedriver matching the runner's WebView2), and runs a WebdriverIO/Playwright-over-CDP smoke against the running app:

  • boots to the login page, logs into a CI Synapse (see cinny's CI e2e issue) or a stubbed session, opens a room, sends a message (web layer inside the shell);
  • matrix: deep link while running → navigates (#8); while minimised to tray → reveals + navigates;
  • set_global_hotkeys round-trip: invoke the command, synthesise a key with SendInput via PowerShell, assert the lotus-global-hotkey DOM event (#2);
  • tray state commands (set_tray_unread, DND) return without error; set_badge_count/thumbbar commands don't panic (#4, #7);
  • update-ready path (#6) with a mocked updater endpoint.

Toast appearance and Focus Assist cannot be asserted headlessly — keep #13/#18 as manual. Budget: about a day; most of it is the driver/WebView2 plumbing on the runner.

`release.yml` already builds on `runs-on: windows`. Add a job after `build-windows` that installs the fresh NSIS bundle silently, starts `tauri-driver` (+ `msedgedriver` matching the runner's WebView2), and runs a WebdriverIO/Playwright-over-CDP smoke against the running app: - boots to the login page, logs into a CI Synapse (see cinny's CI e2e issue) or a stubbed session, opens a room, sends a message (web layer inside the shell); - `matrix:` deep link while running → navigates (#8); while minimised to tray → reveals + navigates; - `set_global_hotkeys` round-trip: invoke the command, synthesise a key with `SendInput` via PowerShell, assert the `lotus-global-hotkey` DOM event (#2); - tray state commands (`set_tray_unread`, DND) return without error; `set_badge_count`/thumbbar commands don't panic (#4, #7); - update-ready path (#6) with a mocked updater endpoint. Toast *appearance* and Focus Assist cannot be asserted headlessly — keep #13/#18 as manual. Budget: about a day; most of it is the driver/WebView2 plumbing on the runner.
jared added this to the Desktop 2026-Q4 milestone 2026-09-18 21:41:08 -04:00
jared added the priority: mediumarea: nativeqa labels 2026-09-18 21:41:08 -04:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: LotusGuild/cinny-desktop#19