Skip to content

agentHost: adopt latest protocol cleanups#312076

Merged
connor4312 merged 1 commit intomainfrom
connor4312/adopt-binary-status
Apr 23, 2026
Merged

agentHost: adopt latest protocol cleanups#312076
connor4312 merged 1 commit intomainfrom
connor4312/adopt-binary-status

Conversation

@connor4312
Copy link
Copy Markdown
Member

Copilot AI review requested due to automatic review settings April 23, 2026 04:31
@connor4312 connor4312 enabled auto-merge April 23, 2026 04:31
@connor4312 connor4312 self-assigned this Apr 23, 2026
@github-actions
Copy link
Copy Markdown
Contributor

Screenshot Changes

Base: 9932ad01 Current: 207103a2

Changed (1)

chat/aiCustomizations/aiCustomizationManagementEditor/McpBrowseMode/Light
Before After
before after

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates VS Code’s Agent Host integration to match the latest upstream protocol cleanups (microsoft/agent-host-protocol#74), notably moving “read/archived” metadata into SessionStatus flags and renaming the client “done” action to “archived”.

Changes:

  • Encode isRead / isArchived as SessionStatus bitmask flags; remove legacy isRead/isDone fields from protocol SessionSummary.
  • Rename protocol action session/isDoneChangedsession/isArchivedChanged and update reducers/side effects/providers accordingly (with legacy fallback where needed).
  • Update integration tests and UI/session adapters to interpret status flags.
Show a summary per file
File Description
src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListController.ts Maps new status bitmask semantics for session list UI and encodes read/archived into status.
src/vs/sessions/contrib/remoteAgentHost/browser/remoteAgentHostSessionsProvider.ts Persists isArchived (and reads legacy isDone) in serialized session metadata.
src/vs/sessions/contrib/agentHost/browser/baseAgentHostSessionsProvider.ts Updates adapters/actions/summary handling for archived semantics and status flags.
src/vs/platform/agentHost/test/node/protocol/sessionLifecycle.integrationTest.ts Adjusts lifecycle assertions to use SessionStatus flags and new archived action.
src/vs/platform/agentHost/node/protocolServerHandler.ts Emits SessionSummary.status with read/archived encoded as flags; removes legacy fields.
src/vs/platform/agentHost/node/agentSideEffects.ts Persists isArchived in session DB when archived action is dispatched.
src/vs/platform/agentHost/node/agentService.ts Reads/writes archived metadata (with legacy isDone fallback) and encodes flags into status.
src/vs/platform/agentHost/node/agentHostStateManager.ts Stops emitting separate summary change fields for isRead/isDone (now represented in status).
src/vs/platform/agentHost/common/state/sessionActions.ts Renames exported archived action types.
src/vs/platform/agentHost/common/state/protocol/version/registry.ts Updates action-version registry for archived action.
src/vs/platform/agentHost/common/state/protocol/state.ts Adds SessionStatus.IsRead/IsArchived flags and removes SessionSummary.isRead/isDone.
src/vs/platform/agentHost/common/state/protocol/reducers.ts Preserves status flags while deriving activity state; updates reducers to toggle flags via status bitmask.
src/vs/platform/agentHost/common/state/protocol/actions.ts Renames the “done” action contract to “archived” and updates payload shape.
src/vs/platform/agentHost/common/state/protocol/action-origin.generated.ts Regenerates action unions/dispatchability for archived action rename.
src/vs/platform/agentHost/common/state/protocol/.ahp-version Bumps synced protocol revision pointer.
src/vs/platform/agentHost/common/agentService.ts Updates IAgentSessionMetadata to expose isArchived instead of isDone.
src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.ts Derives isRead/isArchived from status flags when mapping listSessions results.

Copilot's findings

  • Files reviewed: 17/17 changed files
  • Comments generated: 1

}

/** Derives the summary status from live session work. */
/** Bitmask covering the mutually-exclusive activity bits (bits 0–4). */
Copy link

Copilot AI Apr 23, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The comment on STATUS_ACTIVITY_MASK says it covers “mutually-exclusive activity bits”, but SessionStatus.InputNeeded is defined as a combination of bits (InProgress | InputNeededBit). Consider rewording to clarify this mask represents the reserved activity bit range (bits 0–4) that should be replaced as a group, rather than implying each bit is mutually exclusive.

Suggested change
/** Bitmask covering the mutually-exclusive activity bits (bits 0–4). */
/** Bitmask covering the reserved activity bit range (bits 0–4), which is replaced as a group. */

Copilot uses AI. Check for mistakes.
@connor4312 connor4312 merged commit 8cd56dd into main Apr 23, 2026
30 checks passed
@connor4312 connor4312 deleted the connor4312/adopt-binary-status branch April 23, 2026 05:03
@vs-code-engineering vs-code-engineering Bot added this to the 1.118.0 milestone Apr 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants