Skip to content

Fix browser-wasm CoreCLR artifact collisions#131086

Merged
radekdoulik merged 1 commit into
dotnet:mainfrom
radekdoulik:radekdoulik-fix-browser-artifact-collision
Jul 20, 2026
Merged

Fix browser-wasm CoreCLR artifact collisions#131086
radekdoulik merged 1 commit into
dotnet:mainfrom
radekdoulik:radekdoulik-fix-browser-artifact-collision

Conversation

@radekdoulik

Copy link
Copy Markdown
Member

Summary

  • give Linux and Windows browser-wasm CoreCLR build and test Pipeline Artifacts host-specific names
  • update the browser CoreCLR runtime-test consumer to download the renamed Linux artifact
  • leave non-browser artifact names and consumers unchanged

This preserves Pipeline Artifact publication while avoiding the duplicate name used by both browser hosts after #128498.

Validation

  • parsed eng/pipelines/runtime.yml with Ruby YAML
  • verified four host-specific producers and the matching browser consumer
  • ran git diff --check
  • completed independent Claude and Gemini code reviews with no actionable findings

Note

This pull request description was generated by GitHub Copilot.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 18e0e312-423a-45b0-891d-d51efe4ab919
Copilot AI review requested due to automatic review settings July 20, 2026 15:09
@github-actions github-actions Bot added the area-Infrastructure-coreclr Only use for closed issues label Jul 20, 2026
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 5 pipeline(s).
11 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

@radekdoulik radekdoulik added this to the 11.0.0 milestone Jul 20, 2026
@radekdoulik radekdoulik added the arch-wasm WebAssembly architecture label Jul 20, 2026
@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to 'arch-wasm': @lewing, @pavelsavara
See info in area-owners.md if you want to be subscribed.

@radekdoulik
radekdoulik enabled auto-merge (squash) July 20, 2026 15:13

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.

Pull request overview

This change updates artifact naming in the runtime pipeline to prevent Azure DevOps Pipeline Artifact name collisions between the Linux- and Windows-hosted browser-wasm CoreCLR builds, while keeping non-browser artifact names unchanged.

Changes:

  • Add host-specific suffixing ($(_hostedOs)) to the browser-wasm CoreCLR “ReleaseLibraries” build/test Pipeline Artifact names so Linux and Windows no longer publish the same artifact name.
  • Update the browser-wasm CoreCLR runtime-test job to download the renamed (Linux-hosted) unified build artifact via the updated unifiedArtifactsName.

@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Workflow state for the Holistic Review Orchestrator.

{
  "version": 5,
  "last_dispatched_commit": "203ee746238df33fe8911c1a8ac7b531e1cc5b23",
  "last_dispatched_base_ref": "main",
  "last_dispatched_base_sha": "ea3f7f141e0596cab37785d305910e64d031ab29",
  "last_reviewed_commit": "203ee746238df33fe8911c1a8ac7b531e1cc5b23",
  "last_reviewed_base_ref": "main",
  "last_reviewed_base_sha": "ea3f7f141e0596cab37785d305910e64d031ab29",
  "last_recorded_worker_run_id": "29755379826",
  "review_attempt_commit": "",
  "review_attempt_base_ref": "",
  "review_attempt_count": 0,
  "max_review_attempts": 5,
  "review_history_format": "holistic-review-disclosure-v1",
  "review_history": [
    {
      "commit": "203ee746238df33fe8911c1a8ac7b531e1cc5b23",
      "review_id": 4736508756
    }
  ]
}

@github-actions github-actions Bot 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.

Holistic Review

Motivation: After #128498 both the browser_wasm (Linux-hosted) and browser_wasm_win (Windows-hosted) CoreCLR build jobs share the same osGroup/osSubgroup/archType (browser/wasm), so they publish Pipeline Artifacts under identical names (CoreCLR_ReleaseLibraries_BuildArtifacts_browser_wasm_$(_BuildConfig) and the matching TestArtifacts). Two producers publishing the same artifact name collide. This PR disambiguates them.

Approach: Insert $(_hostedOs) into the artifact names of the two browser CoreCLR producers (both build and test artifacts) and update the single browser CoreCLR runtime-test consumer (browser_wasm run-test-job) to download the renamed name. Non-browser producers/consumers, whose (osGroup, osSubgroup, archType, config) tuples are already unique, are intentionally left unchanged.

Summary: The change is correct and minimal. _hostedOs is a real pipeline variable (defined in xplat-setup.yml from jobParameters.hostedOs), set to linux for browser_wasm and windows for browser_wasm_win via platform-matrix.yml, so the two producers now emit distinct names. The updated consumer at the browser_wasm test job runs with hostedOs: linux, so $(_hostedOs) resolves to linux and matches the Linux producer it depends on — consistent with the stated intent to consume only the Linux artifact. The naming convention mirrors the existing _hostedOs-based disambiguation already used by other WASM artifacts (e.g. wasm-post-build-steps.yml, browser-wasm-build-tests.yml). No non-browser artifact name is touched, so no other consumers are impacted. This is a pure CI/pipeline YAML change with no product-code or test-behavior risk; correctness is validated by the pipeline expanding without name collisions. LGTM — no actionable findings.

Note

This review was generated by this repository's Holistic Review agentic workflow to complement the built-in Copilot review.

Generated by Holistic Review · 70.3 AIC · ⌖ 10.5 AIC · ⊞ 10K

@radekdoulik
radekdoulik merged commit eccad2d into dotnet:main Jul 20, 2026
201 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

arch-wasm WebAssembly architecture area-Infrastructure-coreclr Only use for closed issues

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants