-
Notifications
You must be signed in to change notification settings - Fork 41
Comparing changes
Open a pull request
base repository: coder/vscode-coder
base: df3d773
head repository: coder/vscode-coder
compare: ea7f9bd
- 10 commits
- 12 files changed
- 1 contributor
Commits on Mar 19, 2026
-
feat: move Coder Chat to secondary sidebar with agents experiment gate
- Move the coderChat view container from the bottom panel to the secondarySidebar contribution point (requires VS Code >= 1.106). - Add coder.agentsEnabled context key, set by fetching /api/v2/experiments after login. The chat view is only visible when the agents experiment is enabled on the deployment. - Bump engines.vscode from ^1.95.0 to ^1.106.0.
Configuration menu - View commit details
-
Copy full SHA for fa41c1c - Browse repository at this point
Copy the full SHA fa41c1cView commit details -
fix: resolve CI lint and integration test failures
- Cast getAxiosInstance mock return to AxiosInstance to satisfy TypeScript strict type checking. - Bump CI integration test matrix from VS Code 1.95.0 to 1.106.0 to match the new engines.vscode minimum.
Configuration menu - View commit details
-
Copy full SHA for 72ec13d - Browse repository at this point
Copy the full SHA 72ec13dView commit details -
fix: prettier formatting and vscode-test config for 1.106.0
- Apply prettier formatting to deploymentManager.ts and testHelpers.ts. - Update .vscode-test.mjs minimum version from 1.95.0 to 1.106.0 to match the CI matrix and engines.vscode requirement.
Configuration menu - View commit details
-
Copy full SHA for 39bc4dd - Browse repository at this point
Copy the full SHA 39bc4ddView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3448126 - Browse repository at this point
Copy the full SHA 3448126View commit details -
fix: clear pending chat ID when open flow is abandoned
If commands.open() returns without actually opening a window (e.g. the user cancels a workspace, agent, or folder prompt), clear the pending chat ID from memento so it does not leak into a future, unrelated reload. - commands.open() and openWorkspace() now return boolean indicating whether a window was actually opened. - handleOpen() clears the pending chat ID when open() returns false. - Add clearPendingChatId() to MementoManager.
Configuration menu - View commit details
-
Copy full SHA for 743ffa8 - Browse repository at this point
Copy the full SHA 743ffa8View commit details -
fix: retry auth token delivery to chat iframe with backoff
When the chat iframe sends coder:vscode-ready, the session token may not be available yet if deployment setup is still in progress after a reload. Previously, handleMessage silently returned, leaving the iframe stuck on 'Authenticating...' forever with no recovery. Now sendAuthToken retries up to 5 times with exponential backoff (500ms, 1s, 2s, 4s, 8s). If the token is still unavailable after all retries, a coder:auth-error message is sent to the webview, which shows the error and a Retry button so the user can try again after signing in.
Configuration menu - View commit details
-
Copy full SHA for 0e30e41 - Browse repository at this point
Copy the full SHA 0e30e41View commit details -
- Trim verbose JSDoc on mementoManager chat ID methods. - Wrap commands.open() in try/finally so the pending chat ID is cleared even if it throws. - Track auth retry timer ID and clear it on dispose. - Use textContent instead of innerHTML in webview error handler.
Configuration menu - View commit details
-
Copy full SHA for 5c995d2 - Browse repository at this point
Copy the full SHA 5c995d2View commit details -
feat: use local reverse proxy for chat iframe authentication
Replace the postMessage token handshake with a local reverse proxy that injects the Coder-Session-Token header into every HTTP and WebSocket request transparently. The iframe loads from http://127.0.0.1:PORT/SECRET/agents/{id}/embed instead of directly from the Coder server. This solves WebSocket auth failures in VS Code webviews where Electron's cookie partitioning prevents Set-Cookie from being sent on WS upgrades. A random 32-char hex secret in the URL path prevents other local processes from exploiting the proxy. The proxy binds to 127.0.0.1 only and shuts down when the chat panel is disposed.
Configuration menu - View commit details
-
Copy full SHA for c1ef3cb - Browse repository at this point
Copy the full SHA c1ef3cbView commit details -
fix: use asExternalUri to tunnel proxy port for Remote SSH
The proxy runs on the remote machine but the webview renders locally. vscode.env.asExternalUri handles SSH port forwarding so the local webview iframe can reach the remote proxy.
Configuration menu - View commit details
-
Copy full SHA for 1d02092 - Browse repository at this point
Copy the full SHA 1d02092View commit details -
fix: ensure chat view is revealed after deep link reload
When openChat is called before VS Code resolves the webview view, use the focus command to programmatically reveal it. Also set coder.agentsEnabled before revealing so the when-clause allows the view to appear.
Configuration menu - View commit details
-
Copy full SHA for ea7f9bd - Browse repository at this point
Copy the full SHA ea7f9bdView commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff df3d773...ea7f9bd