Add exitCodeValue field to the existing toolUse.runInTerminal telemetry
event, reporting the actual numeric exit code (-1 if unknown). Previously
only a tri-state nonZeroExitCode (0/1/-1) was available.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The fixReferences function in jsonSchema_v2.ts would crash with
"Cannot read properties of null (reading '$ref')" when a task
definition from an extension contained null property values.
typeof null === 'object' in JavaScript, so the guard on line 31
would pass for null values, causing a recursive call into null.
The array element path (line 21) already had a null check but
the object property path was missing it.
Agent-Logs-Url: https://github.com/microsoft/vscode/sessions/97290369-e210-4404-b2b7-7c8ca4a2f84b
Co-authored-by: bryanchen-d <41454397+bryanchen-d@users.noreply.github.com>
* Revert bad merge from #306130
Co-authored-by: Copilot <copilot@github.com>
* Always resolve language models on provider registration
Previously, registerLanguageModelProvider only eagerly resolved models
when _hasStoredModelForVendor returned true. Otherwise it waited for
onDidChange. This created a hidden temporal coupling: if a provider
populated models before registration (like AgentHostLanguageModelProvider),
the onDidChange event fired with no listener attached, and the models
never appeared.
Fix: always call _resolveAllLanguageModels on registration. This is safe
(the provider guard handles unregistration races, and the per-vendor
sequencer prevents duplicate work).
Also use ActiveSessionProviderIdContext.key instead of a hardcoded string
in the remote agent host context key expression.
(Written by Copilot)
* fix
Co-authored-by: Copilot <copilot@github.com>
* fix
Co-authored-by: Copilot <copilot@github.com>
---------
Co-authored-by: Copilot <copilot@github.com>
- Handle message events in AgentEventMapper to emit markdown response
parts for text that arrives without preceding delta events (e.g. after
tool calls complete)
- Fix tool call confirmation flickering by guarding PendingConfirmation
re-entry when the invocation is already waiting for confirmation
- Fix tool call duplication in server-initiated turns and reconnection
by not removing finalized tool calls from the tracking map
- Add isComplete guard in finish() to avoid overwriting finalized tool
call state
- Extract processState in _trackServerTurnProgress for immediate state
reconciliation closing gaps between turn detection and listener
registration
- Fix session disappearing from list after first message by adding
pending session tracking and onDidReplaceSession in the remote
sessions provider
- Wrap all tests using timeouts with runWithFakedTimers
* sessions: show status of remote connections, reconnect AH connects
- Add automatic reconnect with exponential backoff (1s-30s) when a
remote agent host WebSocket connection drops, preserving the session
cache during reconnect attempts
- Add RemoteAgentHostConnectionStatus enum (Connected/Connecting/
Disconnected) to IRemoteAgentHostConnectionInfo and expose it on
ISessionsProvider via an observable
- Add reconnect(address) method to IRemoteAgentHostService for
explicit reconnect with reset backoff
- Always show configured remote hosts in the workspace picker with
connection status indicators and a gear button for management
- Gear menu offers Reconnect, Remove Remote, Copy Address, Open
Settings, and Show Output actions via quickpick
- Remote host browse actions are grouped into the "Select..." submenu
alongside other providers when multiple providers exist

* address PR review comments
- Fix outputChannelId mutability: use getter + setOutputChannelId()
- Fix disposable leak on reconnect: dispose old entry in _connectTo()
- Remove duplicate AGENT_HOST_LABEL_FORMATTER registrations from
contribution files; centralize in AgentHostFileSystemService
- Fix duplicate IRemoteFilesystemConnection: re-export from provider
- Localize all user-facing status/hover/quickpick strings properly
- Fix setTimeout leak: track timer in _renderDisposables
- Register authority disposal in agentHostChatContribution
- Re-setup ConnectionState when clientId changes on reconnect
* fix tests for new connection status behavior
- Update remoteAgentHostService tests: connections now include
Connecting/Disconnected entries, use waitForConnected() helper,
add status field to deepStrictEqual assertions
- Add IAgentHostFileSystemService stub to agentHostChatContribution
test setup