Skip to content

Restrict WinML discovery to trusted execution providers - #940

Open
baijumeswani wants to merge 1 commit into
mainfrom
baijumeswani/trusted-winml-eps
Open

Restrict WinML discovery to trusted execution providers#940
baijumeswani wants to merge 1 commit into
mainfrom
baijumeswani/trusted-winml-eps

Conversation

@baijumeswani

Copy link
Copy Markdown
Collaborator

Adds a case-insensitive allowlist for WinML execution providers. Untrusted providers are ignored during catalog discovery.

WebGPU ep was being discovered from winml ep catalog as well as from FL's ep catalog causing a conflict. This PR filters our webgpu ep from winml ep catalog.

Copilot AI review requested due to automatic review settings July 31, 2026 21:47
@vercel

vercel Bot commented Jul 31, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
foundry-local Ready Ready Preview Jul 31, 2026 9:47pm

Request Review

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

Adds a case-insensitive allowlist limiting WinML catalog discovery to approved execution providers.

Changes:

  • Filters unapproved WinML providers during enumeration.
  • Adds unit coverage for accepted and rejected provider names.
  • Registers the new tests in the C++ test target.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

File Description
sdk_v2/cpp/src/ep_detection/winml_provider_allowlist.h Defines the provider allowlist.
sdk_v2/cpp/src/ep_detection/winml_ep_bootstrapper.cc Applies filtering during discovery.
sdk_v2/cpp/test/internal_api/winml_provider_allowlist_test.cc Tests allowlist behavior.
sdk_v2/cpp/test/CMakeLists.txt Adds the test source.

Comment on lines +291 to +294
if (!IsTrustedWinMLProvider(provider_name)) {
ctx->logger->Log(LogLevel::Information,
fmt::format("WinML EP ignored because it is not trusted: {}", provider_name));
return TRUE;
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.

2 participants