Skip to content

Send repoInfo telemetry for each repo in multi-repo workspaces#320054

Merged
vijayupadya merged 3 commits into
mainfrom
vijayu/repoInfoTelUpdate
Jun 5, 2026
Merged

Send repoInfo telemetry for each repo in multi-repo workspaces#320054
vijayupadya merged 3 commits into
mainfrom
vijayu/repoInfoTelUpdate

Conversation

@vijayupadya
Copy link
Copy Markdown
Contributor

The repoInfo telemetry event was previously emitted only for the active repository on each chat request. In multi-repo workspaces (and especially long-tail cases like git.autoRepositoryDetection: 'subFolders' with many submodules), this dropped visibility into all the other repos in scope. This PR extends RepoInfoTelemetry to emit one event per repository, while bounding cost and preserving all existing behavior for single-repo workspaces.

Copilot AI review requested due to automatic review settings June 5, 2026 06:30
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

This PR updates the Copilot extension’s RepoInfoTelemetry so that, in multi-repo workspaces, it emits request.repoInfo telemetry once per repository (bounded to a small cap) instead of only for the active repository. This improves visibility for scenarios like git.autoRepositoryDetection: 'subFolders' with many repos/submodules while keeping single-repo behavior intact.

Changes:

  • Emit repoInfo telemetry per repository (with repoIndex, repoCount, and isActiveRepository) and cap processing to 5 repos per request while always including the active repo.
  • Scope filesystem watchers to the repo root so changes in sibling repos don’t invalidate diff results.
  • Add test coverage for multi-repo emission, capping behavior, and per-repo end-event gating.
Show a summary per file
File Description
extensions/copilot/src/extension/prompt/node/repoInfoTelemetry.ts Refactors repoInfo telemetry to iterate over repositories (capped), adds repo indexing/active markers, and scopes file watching per repo.
extensions/copilot/src/extension/prompt/node/test/repoInfoTelemetry.spec.ts Adds multi-repo unit tests and adjusts git service mocking to support repo list semantics.

Copilot's findings

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

Comment thread extensions/copilot/src/extension/prompt/node/repoInfoTelemetry.ts Outdated
@vijayupadya vijayupadya marked this pull request as ready for review June 5, 2026 14:32
@vijayupadya vijayupadya enabled auto-merge (squash) June 5, 2026 14:33
@vijayupadya vijayupadya merged commit c8c5977 into main Jun 5, 2026
39 of 40 checks passed
@vijayupadya vijayupadya deleted the vijayu/repoInfoTelUpdate branch June 5, 2026 15:34
@vs-code-engineering vs-code-engineering Bot added this to the 1.124.0 milestone Jun 5, 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