Skip to content

[WebGPU] Generate component inventories from fetched Dawn dependencies - #33448

Draft
Yang Gu (gyagp) wants to merge 1 commit into
microsoft:mainfrom
gyagp:webgpu-build-inventory
Draft

Yang Gu (gyagp) wants to merge 1 commit into
microsoft:mainfrom
gyagp:webgpu-build-inventory

Conversation

@gyagp

Copy link
Copy Markdown
Contributor

Description

Generate a WebGPU component inventory from the Dawn dependencies fetched by a build, then scan and retain it in the Windows, Linux, and macOS plugin packaging pipelines.

  • Read the pinned fetcher's dependency list and DEPS without executing them; verify each selected Git checkout's HEAD against its declared commit.
  • Record Dawn's archive URL/checksum and, for Windows packaging, the independently distributed DXC archive metadata.
  • Run generator tests, write metadata/cgmanifest.json, and scan that directory explicitly because the normal scan excludes the build directory containing fetched dependencies.
  • Keep the reviewed manifest and its runtime/development classifications separate. The generated inventory describes build inputs, not which components are linked into the final package.

Motivation and Context

Fetched third-party sources should have a reproducible inventory tied to the actual build. This work is separated from the Dawn upgrade command in #33396 so the two workflows can be reviewed and merged independently.

This PR does not change the Dawn pin, patch stack, runtime code, or reviewed dependency classifications. It has no dependency on the upgrade-tool PR.

Validation

  • 12 generator tests passed on an exact snapshot of this branch, including real temporary Git checkouts, missing/stale dependencies, nested metadata, deduplication, and independent DXC metadata.
  • Ruff lint/format and Git whitespace checks passed.
  • Generator, tests, and pipeline calls are preserved from the combined draft; documentation now describes this workflow independently.

Draft for review of the inventory/scanning contract. The packaging pipelines and Component Governance task have not been executed locally.

Generate build-input manifests from the pinned Dawn fetch list and actual Git
checkout revisions. Verify missing/stale checkouts, include independent DXC
archive metadata on Windows, and scan/stage the inventory in plugin packaging.

Keep the reviewed runtime/development manifest separate. This does not alter
Dawn pins or automate package-content classification.
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
There may be pipelines that require an authorized user to comment /azp run to run.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant