Repository navigation
agentHost: declare initiatorType on restricted engine snapshots - #346594
Merged
Karthik Nadig (karthiknadig) merged 1 commit intoNov 7, 2026
Merged
Conversation
Base automatically changed from
agents/metadata-assessment-and-fix-suggestion
to
main
November 6, 2026 17:46
Engine snapshots from newer runtimes say whether a user or an agent initiated each model call. Declare the field and pin its pass-through, so the call that starts a user's turn can be told apart from the agent's follow-up calls. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Karthik Nadig (karthiknadig)
force-pushed
the
agents/engine-call-initiator-type
branch
from
November 6, 2026 17:54
1a1b5f4 to
309c20e
Compare
Contributor
There was a problem hiding this comment.
🟢 Approval recommended
No active review issues remain for the initiatorType metadata change.
No open issues 🎉
What changed in this PR
Extends the per-call metadata declaration from #346455 with initiatorType for restricted engine snapshots, distinguishing user-initiated calls from agent follow-ups without changing runtime routing.
Changes:
- Declares
initiatorTypeas restricted telemetry metadata and documents its meaning. - Extends upload-envelope assertions for
user,agent, and absence in older runtimes.
No actionable findings remain.
| File | Description |
|---|---|
src/vs/platform/agentHost/test/node/agentHostGitHubTelemetryRouter.test.ts |
Checks both initiator values and backward-compatible absence. |
src/vs/platform/agentHost/node/agentHostGitHubTelemetryRouter.ts |
Adds the telemetry classification declaration for initiatorType. |
src/vs/platform/agentHost/AGENTS.md |
Documents the field’s values and per-call meaning. |
Review effort: Balanced
Contributor
Karthik Nadig (karthiknadig)
marked this pull request as ready for review
November 6, 2026 18:03
Karthik Nadig (karthiknadig)
enabled auto-merge (squash)
November 7, 2026 19:08
Ladislau Szomoru (lszomoru)
approved these changes
Nov 7, 2026
Karthik Nadig (karthiknadig)
deleted the
agents/engine-call-initiator-type
branch
November 7, 2026 19:11
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.

What and why
Follow-up to #346455 (merged), which declared the per-call metadata the Copilot runtime will attach to restricted
engine.messagesandengine.messages.lengthsnapshots. Those fields still cannot tell the call that starts a user's turn from the agent's follow-up calls in the same conversation.A follow-up runtime update adds
initiatorTypeto these snapshots:useroragent, with the same values and meaning asinitiatorTypeon the runtime's model response event.initiatorTypein theAgentHostRestrictedEngineCallfragment. The router already passes runtime properties through unchanged, so the field flows as soon as the runtime sends it. Older runtimes omit it, and the router leaves it absent.src/vs/platform/agentHost/AGENTS.md.Related to microsoft/vscode-internalbacklog#10632.
Scope
No new event, destination, consent check or content-exclusion change, and no runtime code change in the Agent Host. Until the runtime dependency is updated, nothing new is sent.
How to test
Result: 31 passing. The per-call metadata test now also checks
initiatorTypein the upload envelopes:useron a root call,agenton a subagent call, and absent for a call from an older runtime.Result: passed.