Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
00b70d0
Improve Helix result upload batching
mmitche Aug 11, 2026
83526d0
Fix Helix result hierarchy split boundary
mmitche Aug 11, 2026
585d5ad
Rewrite Helix Job Monitor result pipeline
mmitche Aug 12, 2026
9792335
Add final drain backlog metrics
mmitche Aug 12, 2026
cc23c46
Preserve Job Monitor failure scenarios
mmitche Aug 12, 2026
cd02bea
Fix Job Monitor result discovery and status cadence
mmitche Aug 12, 2026
714d09f
Add Job Monitor performance metrics
mmitche Aug 12, 2026
92c4d05
Preserve failures across same-queue Helix jobs
mmitche Aug 13, 2026
f94829a
Use stable Helix submitter stream identity
mmitche Aug 13, 2026
f3b524b
Document same-queue Helix stream identity
mmitche Aug 13, 2026
bedde53
Correct Job Monitor retry attempt semantics
mmitche Aug 13, 2026
e8a760c
Document Job Monitor retry permutations
mmitche Aug 14, 2026
5dfc13e
Suppress superseded retry outcomes
mmitche Aug 14, 2026
60cacf1
Retry idempotent test run completion
mmitche Aug 19, 2026
3d063e9
Merge upstream/main into dev/helix-result-upload-batching
mmitche Aug 19, 2026
88ac08b
Upload terminal Helix work items incrementally
mmitche Aug 19, 2026
69c3bc5
Avoid post-response rate limit waits
mmitche Aug 19, 2026
4efaa5d
Merge remote-tracking branch 'upstream/main' into dev/helix-result-up…
mmitche Aug 20, 2026
ea3a636
Scope Helix job discovery by build
mmitche Aug 20, 2026
e21a97e
Address job monitor review feedback
mmitche Aug 20, 2026
80e4dbe
Simplify rate limit deadline updates
mmitche Aug 21, 2026
a1e681e
Merge branch 'main' into dev/helix-result-upload-batching
premun Aug 21, 2026
5bb6b6a
Fix build-scoped Helix query merge
mmitche Aug 21, 2026
1ec49e6
Restore lock-free rate limit deadline updates
mmitche Aug 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@ msbuild.wrn

# MSTest test Results
[Tt]est[Rr]esult*/
!src/Microsoft.DotNet.Helix/JobMonitor/TestResults/
!src/Microsoft.DotNet.Helix/JobMonitor/TestResults/**
Comment on lines +41 to +42

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggested change
!src/Microsoft.DotNet.Helix/JobMonitor/TestResults/
!src/Microsoft.DotNet.Helix/JobMonitor/TestResults/**

[Bb]uild[Ll]og.*

#NUNIT
Expand Down
1 change: 0 additions & 1 deletion Arcade.slnx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
<Platform Name="x86" />
</Configurations>
<Folder Name="/Microsoft.DotNet.Helix/">
<Project Path="src/Microsoft.DotNet.Helix/AzureDevOpsTestPublisher/Microsoft.DotNet.Helix.AzureDevOpsTestPublisher.csproj" />
<Project Path="src/Microsoft.DotNet.Helix/Client/CSharp/Microsoft.DotNet.Helix.Client.csproj" />
<Project Path="src/Microsoft.DotNet.Helix/JobMonitor/Microsoft.DotNet.Helix.JobMonitor.csproj" />
<Project Path="src/Microsoft.DotNet.Helix/JobSender/Microsoft.DotNet.Helix.JobSender.csproj" />
Expand Down
8 changes: 8 additions & 0 deletions eng/common/core-templates/job/helix-job-monitor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,12 @@ parameters:
type: number
default: 30

# Maximum number of work items whose results may be downloaded, parsed, and
# uploaded concurrently.
- name: testResultUploadParallelism
type: number
default: 48

# When 'true' (the default), Helix work items that exit 0 but have failed AzDO test results
# are treated as failed: they count toward the monitor's exit code and are resubmitted by a
# later invocation's retry pass. Set to 'false' to fall back to exit-code-only outcomes.
Expand Down Expand Up @@ -215,6 +221,8 @@ jobs:
--max-wait-minutes "$((${{ parameters.timeoutInMinutes }} - 5))" # Set the tool's timeout slightly lower than the Azure DevOps job timeout to allow it to exit gracefully.
--stage-name '$(System.StageName)'
--stage-attempt '$(System.StageAttempt)'
--job-attempt '$(System.JobAttempt)'
--test-result-upload-parallelism '${{ parameters.testResultUploadParallelism }}'
)

organization='${{ parameters.organization }}'
Expand Down
Loading
Loading