microsoft / microsoft/GitHub-Copilot-for-Azure
Split telemetry scripts by client
- Dominant language
- Python
- Stars
- 250
- Forks
- 204
- Avg merge
- 1d 12h
- Merged PRs (30d)
- 67
Description
Copilot, VS Code, Claude, Cursor, and other clients we try to support all have somewhat different behavior when it comes to hooks, including different schemas for the input JSON objects. Right now the differences in behavior are handled within the various script functions, leading to a lot of conditional logic and functions that are longer and harder to understand than they need to be.
We should break up the telemetry.ps1/telemetry.sh. The existing telemetry.ps1/.sh will continue to serve as the entry point for the hooks and handle client detection. At that point it will hand off to client-specific logic in client-specific files. Within these files we can assume we already know the client which will significantly simplify the logic.
This should make it easier to maintain the telemetry scripts over the long term with changes for one client less likely to break telemetry reporting for others.
Contributor guide
Assessment
This issue has not been assessed yet.