Fix status check deduplication dropping checks from different workflow events#8663
Merged
Fix status check deduplication dropping checks from different workflow events#8663
Conversation
Agent-Logs-Url: https://github.com/microsoft/vscode-pull-request-github/sessions/588c7904-b943-44bc-842d-b78baf609a0a Co-authored-by: alexr00 <38270282+alexr00@users.noreply.github.com>
When the same workflow runs for both push and pull_request events, checks with the same name but different events were incorrectly merged during deduplication. Now the deduplication key includes the event and workflowName fields so distinct checks are preserved. Agent-Logs-Url: https://github.com/microsoft/vscode-pull-request-github/sessions/588c7904-b943-44bc-842d-b78baf609a0a Co-authored-by: alexr00 <38270282+alexr00@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Fix extension not showing all PR checks
Fix status check deduplication dropping checks from different workflow events
Apr 14, 2026
alexr00
approved these changes
Apr 15, 2026
Contributor
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Fixes status check deduplication so that check runs with the same name coming from different workflow trigger events (e.g. push vs pull_request) or different workflows are preserved instead of being collapsed.
Changes:
- Update
deduplicateStatusChecksto key bycontext + event + workflowNamerather thancontextalone. - Add unit tests to validate deduplication behavior across events/workflows and pending-vs-completed selection.
- Update proposed VS Code chat session typings to deprecate
initialSessionOptionsand introduceinputState.
Show a summary per file
| File | Description |
|---|---|
| src/github/githubRepository.ts | Expands the deduplication key to include event and workflowName so distinct checks aren’t merged. |
| src/test/github/githubRepository.test.ts | Adds tests exercising the updated deduplication rules (events/workflows/pending preference). |
| src/@types/vscode.proposed.chatSessionsProvider.d.ts | Adjusts proposed API typings: deprecates initialSessionOptions and adds inputState. |
Copilot's findings
- Files reviewed: 2/3 changed files
- Comments generated: 4
Yoyokrazy
approved these changes
Apr 15, 2026
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.
When the same workflow triggers on both
pushandpull_request, the resulting check runs share the samenamebut are distinct checks.deduplicateStatusCheckskeyed only oncontext(the check run name), collapsing e.g. 4 checks into 2.Changes
src/github/githubRepository.ts: IncludeeventandworkflowNamein the deduplication key so checks from different trigger events or different workflows are preserved:Re-runs of the same check (same name + event + workflow) are still correctly deduplicated.
src/test/github/githubRepository.test.ts: Added tests covering different events kept separate, same-event deduplication, different workflows kept separate, and pending-over-completed preference.