scan execution policy runner tags are not refreshed

Summary

When creating a scan execution policy and wanting to select a specific runner tag - the list only contains the first 100 results and does not re-query the endpoint for an updated list, as the results listed only contain the first 100 results that are returned from GraphQL.

Steps to reproduce

  1. Go to Secure > Policies
  2. Create an action
  3. Under "runner tags" select "has specific tag"
  4. Search for a tag that we know exists but isn't returned by the list
  5. Observe empty output

Example Project

As this requires more than 100 runners there isn't a demo project that shows this. This is a customer reported issue that was reproduced.

What is the current bug behavior?

The list itself only contains 100 results and more importantly does not actually search the tag, only filters the list.

What is the expected correct behavior?

The tag is searched and filtered.

Relevant logs and/or screenshots

Screenshot_2024-07-17_at_10.43.05_AM

Screenshot_2024-07-17_at_10.44.25_AM

Output of checks

This bug happens on GitLab.com - GitLab Enterprise Edition 17.2.0-pre bee781a5

Possible fixes