Repository navigation
fix(desktop): LiveShare owner sign-in popup and reader pages on dsh 0.2.2 - #1605
Merged
Merged
Conversation
… window dsh 0.2.2's LiveShare bundle verifies its owner in a popup on the Relay: the owner page reserves a blank window named liveshare-owner-login, points it at `/__liveshare/owner-authorize`, and waits for the single-use code the Relay page posts to window.opener. The Desktop window refused every window.open, so the Share dialog could only report the sign-in window as blocked, and a share could never be published from the Desktop. The main window now opens that one popup, sandboxed and without the Desktop preload. It stays on http(s) pages, never reaches the Host, attaches no webview, and sends the windows it opens to the system browser. The app protocol presents the page's requests to the Host with the Host's own origin, so the authorize address asks the Relay to post the code there, where no window listens; the popup reloads it addressed to dsh-app://app instead. The Host still checks state, origin and PKCE when the page redeems the code. The policy lives below src/upstream-family/. Both variants follow dsh 0.2.2-rc.1, which ships LiveShare, so Next carries it as Beta does. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…tions and reasoning translation A LiveShare reader's page is the owner's own Web page with the owner's client plugins, and the official boot refuses the page when any of them does not activate. Two dsh 0.2.2 plugins need what a reader may not use: - plugin recommendations injects `pluginNavigation`, which the plugin manager provides only to a page that may list bundles, so it waits forever; - reasoning translation throws when its startup read of `cotTranslation/limits` is denied. An owner profile with either one enabled therefore showed readers only "Failed to load plugins". Insert-only patches let the cards mount without navigation on a reader's page, where opening a plugin does nothing, and leave the reasoning untranslated when the reader may not read the limits. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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
Two LiveShare problems of the Desktop on dsh 0.2.2, now on rc.1 in both Next and Beta.
fix(desktop): open the LiveShare owner sign-in popup from the Desktop window). The LiveShare owner page verifies its owner in a popup on the Relay: it reserves a blank window namedliveshare-owner-loginand waits for the single-use code the Relay page posts towindow.opener. The Desktop window refused everywindow.open, so a share could never be published from the Desktop. The main window now opens that one popup, sandboxed and without the Desktop preload; it stays on http(s) pages, never reaches the Host, and sends the windows it opens to the system browser. Because the app protocol presents the page's requests to the Host with the Host's own origin, the popup reloads the authorize address addressed todsh-app://app. The Host still checks state, origin and PKCE when the page redeems the code. The policy lives belowsrc/upstream-family/.fix(desktop): let LiveShare readers load pages with plugin recommendations and reasoning translation). A reader's page is the owner's own Web page with the owner's client plugins, and the official boot refuses the page when any of them does not activate. Plugin recommendations waited forever forpluginNavigation, and reasoning translation threw when its startup read ofcotTranslation/limitswas denied. Insert-only patches (patches/dsh-client-ui-plugin-recommendations@0.2.2-rc.1.patch,patches/dsh-experimental-client-ui-cot-translation@0.2.2-rc.1.patch) let the cards mount without navigation on a reader's page and leave the reasoning untranslated when the reader may not read the limits.Validation
corepack yarn checkon this branch after rebasing onto rc.1: Next 1100 (7 skipped), Beta's mirror-related specs 599, layout and compat 135, market 320, shared Stable specs 393, AA connector 9. Both patches apply unchanged to the rc.1 packages.corepack yarn checkon the combination with the file actions and the native file drag over master cffa19d passed, Next 1235 (9 skipped), Beta's mirror-related specs 667, layout and compat 135, market 320, shared Stable specs 393, AA connector 9.🤖 Generated with Claude Code