Repository navigation
feat(browser): connect owned Chromium hosts to Core and Desktop - #290
Merged
Merged
Conversation
Transfer the exact accepted Debug supervisor to a synchronous independent keeper on failed composition or owner drop, and prove the retained Arc survives until release. Bind native PKI cancellation to the enrollment generation and wipe it on revoke and cleanup.
killswitch-GUI
marked this pull request as ready for review
October 16, 2026 07:04
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. |
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.
Connects owned, pinned Chromium hosts to Core and Desktop through the worker/SDK browser boundary. Core owns navigation, tabs, semantic snapshots, input, screenshots and artifact transfers; Desktop displays the same page through authenticated native presentation channels. Actions retain policy admission, one-writer control, current document/snapshot bindings and mandatory output release. Released screenshots become typed model images, including alongside
image.viewobservations on all four provider wire formats.Adds hover, double/right-click, element and screenshot-coordinate clicks and drags, with viewport/DPI and stale-document checks. Native highlights and labels support explicit clear and annotated screenshots, with expiry and invalidation on page/control changes.
browser.evaluateuses Chromium's native side-effect checks, whilebrowser.cdpaccepts a closed DOM/style/layout/performance inspection list. Inspection requires an observed renderer pause, protected-field checks, bounded output and acknowledged debugger restoration before releasing a value.The Windows launcher uses two fixed trusted pre-CEF roles. A verified fresh logon context creates one suspended AppContainer browser with exact private endpoints and an atomic inner Job. Core verifies the retained process/thread, image/birth, user/session, fresh authentication identity, exact package, Low integrity, zero capabilities and both Job memberships before Core alone resumes it. Elevated creators use an attenuated token; the exact suspended browser's token DACL retains its own user's access needed for Chromium's further sandbox attenuation. Newly staged immutable components retain explicit owner access and read/execute package access. Failed startup retains its cleanup owner and leases until the creator exits, Jobs drain and private I/O joins. Transfer retirement now recognizes the kernel's zero-link proof after closing the delete handle, while preserving live-file validation and refusing replacement or multiply linked files.
Preserves the selected model and reasoning level across the first browser handoff and later messages. The renderer regression exercises both sends through the actual App flow. The isolated terminal browser harness also supplies its existing
AppearanceProvidercontext. The branch includes currentmain's Anthropic, image-view and managed VS Code runtime work; focused integration checks preserve both browser screenshots and local image views.Scopes image-input budgets to each tool dispatch so subsequent model turns preserve the registered browser authority. The existing public tab-handoff protocol regression now also runs on Windows and verifies open/select/close across the authenticated presentation channels.
Validation on final commit
a3b429ad(Windows native diagnostic on its792bc631ancestor):cargo xtask check rustpassed on cleana3b429ad, including both handoff regressions, all workspace unit/integration/doc tests, strict workspace and fuzz Clippy. Focused image API (3) and agent (48) tests also passed.cargo xtask pr --base origin/mainpassed ona3b429ad. The linked run also tracks the separate release-readiness gate.This remains an explicitly selected preview/development composition. Signed installed-package acceptance, production PKI/certificate custody and whole-host network containment remain outstanding; production availability and publisher Desktop/Headless acceptance flags stay false. The startup/death cases prove their named barriers; outstanding logon-service creation and running full-CEF tree death remain outside those receipts. macOS temporary-profile preview and standalone broker/custody evidence retain their documented scope. Shipping builds continue to use the platform WebView by default.