Investigation: Track event for code commits from within a workspace
<!-- IssueSummary start -->
<details><summary>Everyone can contribute. [Help move this issue forward](https://handbook.gitlab.com/handbook/marketing/developer-relations/contributor-success/community-contributors-workflows/#contributor-links) while earning points, leveling up and collecting rewards.</summary>
- [Close this issue](https://contributors.gitlab.com/manage-issue?action=close&projectId=278964&issueIid=544661)
</details>
<!-- IssueSummary end -->
MR: Pending
<!-- NOTE: For context on MR heading, see:
https://handbook.gitlab.com/handbook/engineering/development/dev/create/remote-development/index.html#relationship-of-issues-to-mrs
-->
## Description
Based on the discussion [here](https://gitlab.com/gitlab-org/gitlab/-/issues/537568#note_2511126453), we would like to track user activity for code commits from within a workspace. And use this as one of inputs into our [active user metric](https://gitlab.com/gitlab-org/gitlab/-/issues/537568) (Combined with other activities, like clicking open workspace button).
In this issue, we should first discovery technical plan for the implementation.
Chad has some initial thoughts at high level.
> As for code commits, that's tricker. However, it may be possible. We might be able to hack this by modifying the workspace's git client config to pass some additional data to the git server which identifies it as a workspace. I [asked AI](https://claude.ai/share/c21fd8e3-a3f9-42b2-a4c3-fe5bdde6c097), and it indicated this should be possible for both http and ssh, e.g. via `http.extraHeader` for http and ENV var for ssh. We could then detect this on the monolith somehow (hooking into rack/gitaly/??? to detect it and fire off a metrics event). Of course, users can always disable this config in their workspace git config if they want.
<!-- OPTIONAL: Is this a feature/enhancement?
- Please describe the impact this feature/enhancement will have on the user experience and/or the product as a whole.
- Provide a user story to illustrate the use case for this feature/enhancement. Include examples to help communicate the intended functionality.
-->
<!-- OPTIONAL: Is this a bug? Please uncomment and include the following:
- **Current behavior:**
- **Expected behavior:**
- **Steps to reproduce:**
- **Additional information:** please include VSCode version, browser dev tool logs, etc that might be helpful to debug the issue!
-->
## Acceptance criteria
TODO: Fill out (required)
- [ ] [Describe what must be achieved to complete this issue.]
- [ ] [If applicable, please provide design specifications for this feature/enhancement.]
- [ ] [If applicable, please list any technical requirements (performance, security, database, etc.)]
## Implementation plan
TODO: Fill out or delete (optional)
[Provide a high-level plan for implementation of this issue, including relevant technical and/or design details.]
<!-- NOTE: Feel free to expand with more sections and headers as needed -->
<!-- DO NOT TOUCH BELOW -->
issue