GitLab Issue Queue (gitlab-org/gitlab)

Agent instructions

For each issue, in order:

  1. Re-check the issue is still open AND unassigned. Skip it if someone was assigned.
  2. Comment /assign_reviewer-free: post "I'd like to work on this" and wait for a maintainer or team response if the issue is not labelled as open to contributions.
  3. Read AGENTS.md and the relevant files in .ai/ before editing anything.
  4. Make the smallest change that fixes the root cause. No refactors or unrelated cleanups.
  5. Add or update specs. Run the related specs locally.
  6. One issue = one branch = one MR. Link the issue in the MR description.
  7. Stop and ask me if the issue needs product, design, or database-review decisions.

Tier 1: Small removals and cleanups (best first picks)

Issue Task
#638727 Remove RSpec/SpecFilePathFormat disable from MCP search_labels_spec.rb (currently assigned, check first)
#635198 Remove stale quarantine from vue3_rollout_spec.rb
#634569 Clear the Fog connection cache in stub_object_storage_uploader
#633765 Clean up RubyGems spec files marked pending_destruction
#637388 Remove Notifications::TargetedMessages::DestroyWorker (labelled workflow::refinement, confirm it's ready)
#634447 Delete Bitbucket Cloud issue import workers (milestone 19.8)
#634446 Remove queued Bitbucket Cloud issue import jobs (milestone 19.7)

Tier 2: Backend bugs and performance

Issue Task
#638990 Observability service name derived incorrectly for self-hosted URLs
#638818 Preload iteration cadence in project iteration autocomplete (N+1)
#638764 Keep auto-remediation titles within 72 chars
#638385 MCP route-backed tool calls write two api_json lines with wrong HTTP method
#637972 Log approval policy rule creation failures above debug level
#637874 Offline transfer: preload snippet repositories in SnippetsRepositoryPipeline
#637860 Cascading settings writer marks non-boolean settings as changed
#637728 Validate comment length in vulnerability state transition mutations
#637095 Organizations activity feed ignores the organization param
#635535 N+1 authorizing subgroups in GraphQL group labels
#633930 Optimize group count query to select only IDs
#634028 Container virtual registry caches a failed upstream token

Tier 3: Frontend and UI

Issue Task
#638882 removeListenerSystemColorSchemeChange doesn't remove listeners
#638901 Follow-up: Vulnerability Context Flow last run (UI polish)
#638326 Direct transfer import details show wrong or raw labels
#637714 Add localized titles for remaining GitLab Credits flow types
#637320 FOSS jest-build-cache fails on EE import in iteration.query.graphql
#636671 Page title still says "Automate" on AI pages
#634272 Duo Chat hides switch to classic Chat when usage billing unavailable

Tier 4: Docs-only

Issue Task
#635599 Document opting out of expiring tokens for GitHub import OAuth app
#633728 Value stream analytics docs: state it's groups-only
#509818 Assess curl commands on API pages
#479161 Update alt text for images

Tier 5: Test and tooling gaps

Issue Task
#632430 Add missing test coverage for lib/gitlab/git/commit.rb
#634195 Fix fast_spec_helper spec failing in isolation: gitaly_client_slis
#636388 Fix flaky "Add seats" before hook in usage quotas seats spec
#632924 Licensed/unlicensed spec coverage for group protected branches
#637215 Tier 2 undercoverage check misses system-full child pipeline coverage

Needs a human decision first (do not auto-run)