Repository navigation
fix(desktop): stabilize browser sessions and improve agent inbox - #299
Merged
Merged
Conversation
killswitch-GUI
marked this pull request as ready for review
October 19, 2026 05:03
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
killswitch-GUI
enabled auto-merge
October 19, 2026 07:45
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.
Browser tools could lose their visible page during a pending operation, disconnect on a slow metadata read, or replace the completed page with a blank pane. This repairs those lifecycle failures and makes agent control, completion, and recovery visible in the workspace.
Cached agent observation and frame reads now remain available during finite Core waits, with the existing document/control/viewport checks and mutation restrictions intact. Metadata reads have a bounded five-second deadline; effect deadlines remain short and uncertain effects are not replayed. Recovery preserves the selected tab until a replacement is admitted. Browser and terminal content follows window visibility through app switching and restore.
Active control has a persistent badge, page frame, and eight-second cursor indicator. Completion retains an immutable, input-free last view only when accepted pixels and acknowledged cleanup are available, within a shared 32 MiB budget. Continue browsing opens a fresh human session. Explicit
browser.closeis respected; expired authority and network contexts are not restored. Browser activity reveals the correct workspace pane, and screenshot results use the existing inline image preview and full image viewer.Global/workspace browser settings and the bundled browser skill expose capability and network controls. Supporting assets and redirects follow the workspace network grant. Agent inboxes have readable labels, delivery status, search/filter controls, preserved recipient selection, and expandable details; starting a new thread from an inbox immediately restores the composer. OpenRouter requires an API key and supports adding it through native secure credential storage.
Windows Developer Preview packaging now explicitly includes a sealed, signed-component browser payload. Admission requires an ordinary interactive user, fixed relative installation layout, verified inventory, private channels, Chromium sandboxing, and supervised process custody. This is an explicit functional preview: it does not claim production network containment, headless support, private CAs, or client identities. Stable/default browser guards remain unchanged. The installer grants read/execute only to the component subtree, and source-free release backend tests cover relocation and tamper rejection.
The Desktop upgrade also fixes the Tao nested keyboard-message deadlock observed during live testing. Dependency remediation replaces the vulnerable credential/single-instance dependency paths without advisory suppressions, preserves credential compatibility, and uses the platform-owned backends.
The vendored Linux credential backend also exposed an ARM64 musl static-link failure. Target-specific C flags now keep its atomics inline for baseline ARMv8 without changing other platforms or adding a newer CPU requirement. The provider inventory acceptance test now matches its neutral credential label; the separate keyless setup-wizard behavior remains covered.
Validation:
cargo xtask check rust, Desktop, and dependency completion gates pass. Renderer validation includes 542 tests, type/security/format checks, and 80 selected headless UI tests across browser, inbox, models, images, providers, terminal, and settings.browser.waitremains pending. Both rebuilt native acceptance scenarios pass, including input, screenshots, resize, cursor, recovery, retained completion, explicit close, and acknowledged cleanup with no new session state left behind.The separate Windows computer-control feature remains in stacked #300.