Allow Premium DFW tenants to resolve policy scope linked groups

What does this MR do and why?

The securityPolicyProjectLinkedGroups GraphQL resolver gated access on PolicyAvailability.available?(object, :security_orchestration_policies), an Ultimate-only license check. Since Premium namespaces are entitled to Dependency Firewall (as of 2026-01-27), they fail this check and the resolver returns Group.none before the real finder executes, leaving the "except projects" scope picker permanently empty for Premium-tier customers scoping a Dependency Firewall policy.

Two sibling finders (SecurityPolicyProjectsFinder, SecurityPolicyEligibleProjectsFinder) already use PolicyAvailability.any_available?(object) to support both tiers; this resolver was missed during the Premium/DFW entitlement rollout. This MR switches it to the same check.

Screenshot of bug in premium namespace

image

How to set up and validate locally

  1. On a Premium (non-Ultimate) namespace with a Dependency Firewall policy assigned via a Security Policy Project, open the policy editor for that policy.
  2. Under Policy scope, change "Apply this policy to" exceptions dropdown to "except projects".
  3. Click "Select projects" and confirm the group/project picker now returns results instead of "No results found".

image

Resolves https://gitlab.com/gitlab-org/gitlab/-/work_items/629557

Edited by Hannah Baker

Merge request reports

Loading
Loading