Skip to content

Deliver project context telemetry at its approved collection rate - #940

Merged
Zach Teutsch (zateutsch) merged 3 commits into
mainfrom
nmetulev-project-context-telemetry
Sep 28, 2026
Merged

Zach Teutsch (zateutsch) merged 3 commits into
mainfrom
nmetulev-project-context-telemetry

Conversation

@nmetulev

@nmetulev Nikola Metulev (nmetulev) commented Sep 28, 2026 •

Copy link
Copy Markdown
Member

Description

ProjectContext_Event was logged as Measure, which becomes local-only with diagnostics disabled (the default). Classify only this approved event as Critical so its existing bounded project categories can reach telemetry at full rate. The two Log overloads change level only; payload, opt-out, and other diagnostic defaults are unchanged. The pre-existing test's level expectation is aligned with the approved classification.

Usage Example

winapp restore . on a recognized project emits a ProjectContext_Event with the CriticalData delivery keyword when telemetry is enabled. With WINAPP_CLI_TELEMETRY_OPTOUT=1, no project context is inspected or emitted.

Related Issue

N/A

Type of Change

  • 🐛 Bug fix
  • 🧪 Test expectation update

Checklist

  • Updated the existing assertion that expected the old Measure level
  • Ran focused tests locally on Windows (52 passed)
  • Validated the same production level change in Windows Sandbox (54 focused tests passed before removing new tests)

Screenshots / Demo

N/A — no visual changes.

Additional Notes

No new tests or documentation changes remain in the PR. Current-head CI is pending; the earlier green CI result applied to a previous head. Sandbox lacked dotnet, so its tests used a self-contained ARM64 runner. ETW classification has been verified, but actual ingestion requires a signed release.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot AI balanced review requested due to automatic review settings September 28, 2026 18:02
@nmetulev Nikola Metulev (nmetulev) added the agent-preparing Agent is addressing feedback or completing required validation and CI label Sep 28, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot review overview

🟢 Approval recommended

The focused build and all 53 telemetry tests pass, with no unresolved correctness, privacy, or documentation issues.

Review effort: Balanced
Findings: None

What changed in this PR

Updates project-context telemetry to use the approved full-rate delivery classification while preserving opt-out behavior and payloads.

Changes:

  • Classifies both project-context event overloads as Critical.
  • Adds ETW keyword, diagnostics-default, and opt-out regression tests.
  • Documents the event’s collection rate.
File Description
ProjectContextEvent.cs Applies CriticalData delivery classification.
TelemetryTests.cs Verifies ETW keywords and opt-out behavior.
ProjectContextCommandTelemetryTests.cs Updates expected log level.
docs/​telemetry.md Discloses full-rate collection.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@github-actions

github-actions Bot commented Sep 28, 2026 •

Copy link
Copy Markdown
Contributor

Build Metrics Report

Validation passed. All required build and validation jobs succeeded.

Binary Sizes

Artifact Baseline Current Delta
CLI (ARM64) 57.29 MB 57.29 MB ✅ 0.0 KB (0.00%)
CLI (x64) 57.33 MB 57.33 MB ✅ 0.0 KB (0.00%)
MSIX (ARM64) 23.79 MB 23.79 MB 📉 -0.1 KB (-0.00%)
MSIX (x64) 25.26 MB 25.26 MB 📈 +0.0 KB (+0.00%)
NPM Package 49.63 MB 49.63 MB 📉 -0.4 KB (-0.00%)
NuGet Package 49.74 MB 49.74 MB 📉 -0.1 KB (-0.00%)

.NET Test Results (TRX reports)

Other suites are reflected in the overall validation status above.

✅ 7879 passed, 37 skipped out of 7916 tests in 1182.1s (+101.1s vs. baseline)

Test Coverage

✅ 86.3% line coverage, 80.9% branch coverage · ✅ no change vs. baseline

CLI Startup Time

68ms median (x64, winapp --version) · ✅ no change vs. baseline

Try This Build

Installs the MSIX for your architecture, replacing any previously installed build. Needs the GitHub CLI — the command offers to install it and sign you in if it is missing.

& ([scriptblock]::Create((irm https://raw.githubusercontent.com/microsoft/winappCli/main/scripts/winapp-pr.ps1))) 940
Switching between builds often?

Put the tool on your PATH once:

& ([scriptblock]::Create((irm https://raw.githubusercontent.com/microsoft/winappCli/main/scripts/winapp-pr.ps1))) -AddToPath

Then this build is just:

winapp-pr 940

Run winapp-pr with no arguments to pick from a list of open PRs.


Updated 2026-09-28 19:19:04 UTC · commit d3b29f8 · workflow run

@nmetulev Nikola Metulev (nmetulev) added ready-for-review Agent work and technical checks complete; awaiting review or re-review, not approval or merge and removed agent-preparing Agent is addressing feedback or completing required validation and CI labels Sep 28, 2026
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@nmetulev Nikola Metulev (nmetulev) added agent-blocked Agent cannot address feedback or fix CI without help, or needs author input and removed ready-for-review Agent work and technical checks complete; awaiting review or re-review, not approval or merge labels Sep 28, 2026
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@nmetulev Nikola Metulev (nmetulev) added agent-preparing Agent is addressing feedback or completing required validation and CI ready-for-review Agent work and technical checks complete; awaiting review or re-review, not approval or merge and removed agent-blocked Agent cannot address feedback or fix CI without help, or needs author input agent-preparing Agent is addressing feedback or completing required validation and CI labels Sep 28, 2026
@zateutsch
Zach Teutsch (zateutsch) merged commit 3fd5900 into main Sep 28, 2026
45 checks passed
@zateutsch
Zach Teutsch (zateutsch) deleted the nmetulev-project-context-telemetry branch September 28, 2026 19:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready-for-review Agent work and technical checks complete; awaiting review or re-review, not approval or merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants