refactor(ide): clarify browser IDE names and dedup setup#535
Merged
Conversation
Rename the browser-based IDE display names to their upstream product names so they stop reading as synonyms: - openvscode: "VS Code Browser" -> "OpenVSCode Server" - vscode-web: "VS Code Web" -> "VS Code for the Web" CLI flag values, enum names, and icon assets are unchanged. Collapse the three near-identical per-IDE async commands and setup functions into a single browserIDEs registry driving a shared browserServer interface, removing the dupl exclusion added for them.
✅ Deploy Preview for devsydev canceled.
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (11)
💤 Files with no reviewable changes (4)
📝 WalkthroughWalkthroughRefactors browser IDE async command handling into a shared registry and setup flow, removes the old per-IDE async command files, and updates OpenVSCode/VS Code Web labels across the parser and desktop UI. ChangesBrowser IDE async commands and wiring
IDE display names
Sequence Diagram(s)sequenceDiagram
participant SetupContainerCmd
participant browserIDEByName
participant browserServer
participant startBrowserExtensionsInstall
participant browserAsyncCmd
SetupContainerCmd->>browserIDEByName: resolve IDE by name
SetupContainerCmd->>browserServer: create server from browserServerSpec
SetupContainerCmd->>browserServer: Install()
SetupContainerCmd->>browserServer: Start()
SetupContainerCmd->>startBrowserExtensionsInstall: launch async installer
startBrowserExtensionsInstall->>browserAsyncCmd: run --setup-info
browserAsyncCmd->>browserServer: InstallExtensions()
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
✅ Deploy Preview for images-devsy-sh canceled.
|
skevetter
marked this pull request as ready for review
June 26, 2026 19:22
skevetter
enabled auto-merge (squash)
June 26, 2026 19:32
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
Follow-up to #532. That PR added VS Code Web (
code serve-web) alongside the existing VS Code Browser (openvscode), and the two display names read as synonyms — both just say "it runs in a browser" while hiding the real distinction (which build / which marketplace).Renaming
Display names now match the upstream product names, so they map to something a user can recognize and search:
openvscodevscode-webCLI flag values, enum names, and icon assets are intentionally unchanged — flags are an API surface and the icons are looked up by their existing filenames.
Dedup
#532 added a
duplexclusion in.golangci.yamlbecause the three per-IDE async commands and threesetup*functions were ~90% copy-paste. This collapses them into a small registry:browser_async.go—browserServerinterface (already satisfied by all threepkg/idetypes), abrowserIDEdescriptor, thebrowserIDEsregistry, and a generic async command.openvscode_async.go,codeserver_async.go,vscodeweb_async.go.container.goregisters async commands by looping the registry.setup.go: three setup functions → onesetupBrowserIDE; theinstallIDEswitch collapses three cases into one.duplexclusion.Net −303 lines. Adding the next browser IDE is one registry entry instead of a ~400-line copy. The three
pkg/ide/*packages are deliberately left separate — their install logic genuinely differs (marker files, strip levels, data dirs, start subcommands) andduplnever flagged them.Notes for reviewers
go build ./...clean,go test ./pkg/ide/... ./cmd/internal/agentcontainer/...(104 pass),go vetclean,golangci-lint --new-from-rev=origin/mainreports no new issues.npm run checknot run locally (node_modulesabsent) — the Svelte edits are literal label-string swaps; please confirm CI is green.Summary by CodeRabbit
New Features
Bug Fixes
Chores