Repository navigation
fix(desktop): leave a stopped native file tool's outcome to Stop - #8732
Merged
Merged
Conversation
A local read or import cancelled by the user's Stop (or by signing out) reported its own failure, which raced Stop's settlement: whichever committed first decided whether the call ended failed or cancelled. Native file tools now report nothing once cancelled, like browser actions and granted-folder reads, so Stop's record stands.
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
waleedlatif1
added a commit
that referenced
this pull request
Oct 7, 2026
…ds honest, and check dormancy layer by layer - Warm-up runs the tests' own flows (read, import, a chat switch during a live turn, Stop, login) and waits until every request the app made has been answered - send() resends only when the UI did not take the message; a taken message whose turn never reaches Sim fails as a lost send - Stop and sign-out tests assert exact outcomes without holding the tool's report (the stopped tool reports nothing since #8732) - Dormancy checks registration, device records, binding, routes and the doorbell as separate soft assertions - CI: per-run E2E_APP tags, retries 0, and a path filter for pull requests
Contributor
|
6 tasks done
waleedlatif1
added a commit
that referenced
this pull request
Oct 7, 2026
…ds honest, and check dormancy layer by layer - Warm-up runs the tests' own flows (read, import, a chat switch during a live turn, Stop, login) and waits until every request the app made has been answered - send() resends only when the UI did not take the message; a taken message whose turn never reaches Sim fails as a lost send - Stop and sign-out tests assert exact outcomes without holding the tool's report (the stopped tool reports nothing since #8732) - Dormancy checks registration, device records, binding, routes and the doorbell as separate soft assertions - CI: per-run E2E_APP tags, retries 0, and a path filter for pull requests
waleedlatif1
added a commit
that referenced
this pull request
Oct 7, 2026
… a live local Sim (#8697) * improvement(desktop): Electron E2E for desktop tool lifetimes against a live local Sim Runs the real Electron app against a local Sim (Postgres, Redis, realtime) with a recording proxy and a scripted stand-in worker, covering chat switches, Stop, sign-out, approval-gated and stopped claims, and the flag-off foreground round trip. The spec skips unless a live Sim is configured; the http-e2e job provides one. * improvement(desktop): use shared helpers, confirm Redis MONITOR, stage desktop build on the workspace disk * improvement(desktop): bundle the desktop app without macOS prebuilds in the Linux E2E step * improvement(desktop): report desktop E2E failures inline and trace runner memory * improvement(desktop): run the live desktop E2E in its own job on a larger runner * improvement(desktop): warm the live desktop E2E routes and wait on outcomes instead of time - Compile every route, page and client chunk the tests use in a named warm-up step before any timed hold - Send retries only while no turn reached Sim; every held request and poll is bounded - Stop and sign-out tests wait for the import's own report and assert one exact terminal state - Clicks fail fast with the dev overlay's error instead of a blocked click * improvement(desktop): retype and resend a message the hydrating composer dropped * improvement(desktop): run the live desktop E2E against the merged background executor - The dormancy check accepts the app's own registrations, refused while signed out and answered as not enabled once signed in, and still forbids inbox, doorbell, claim, lease and completion - The app and realtime server run in their own sessions and stop through stop-session.sh * improvement(desktop): release the held read at the moment its view lets go, and report the call's error on a wrong terminal state * improvement(desktop): read the chat body's desktop capabilities with toRecord * improvement(desktop): hold the read's own report across Stop, dismiss dev console notices, and keep failure diagnostics * improvement(desktop): stop the live E2E apps by their E2E_APP tags * improvement(desktop): deliver the claim held across Stop to Sim even if Electron gave up on it, and require its 410 * improvement(desktop): warm every route the live E2E reaches, keep sends honest, and check dormancy layer by layer - Warm-up runs the tests' own flows (read, import, a chat switch during a live turn, Stop, login) and waits until every request the app made has been answered - send() resends only when the UI did not take the message; a taken message whose turn never reaches Sim fails as a lost send - Stop and sign-out tests assert exact outcomes without holding the tool's report (the stopped tool reports nothing since #8732) - Dormancy checks registration, device records, binding, routes and the doorbell as separate soft assertions - CI: per-run E2E_APP tags, retries 0, and a path filter for pull requests * improvement(desktop): wait with the shared sleep helper while the dev app settles * improvement(ci): detect live desktop suite changes with git, covering chat pages and auth routes * improvement(ci): run the live desktop suite unless every change is clearly unrelated, and fail open - The change check skips only docs, the other apps and published content; any change elsewhere, and any failure to fetch or diff the base, runs the suite - settled() discounts only requests a hold is keeping from Sim right now - The warm-up's Stop turn waits for its stream to close instead of on a promise that never settles
This branch was previously deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
errorcompletion. That raced Stop's settlement, so a stopped import endedfailedorcancelleddepending on which committed first.cancelled, with the stopped-before-start or stopped-while-running message.Type of Change
Testing
Checklist