Jay McCure activity https://gitlab.com/jay_mccure 2026-03-18T04:18:15Z tag:gitlab.com,2026-03-18:5215619963 Jay McCure pushed to project branch jmc-use-cli-context-duo-test-selector at GitLab.org / GitLab 2026-03-18T04:18:15Z jay_mccure Jay McCure

Jay McCure (61ea7f36) at 18 Mar 04:18

Fix Errno::E2BIG in duo test selection for large diffs

tag:gitlab.com,2026-03-18:5215557284 Jay McCure opened merge request !227827: Fix Errno::E2BIG in duo test selection for large diffs at GitLab.org / GitLab 2026-03-18T03:40:35Z jay_mccure Jay McCure

What does this MR do and why?

This change fixes a problem where the test selection tool would crash when analyzing very large code changes.

Previously, the tool was passing the entire code diff as part of a command-line argument, but operating systems have limits on how long command arguments can be (around 128KB on Linux). When code changes were too large, this would cause the system to reject the command with an "argument too long" error.

The fix moves the large diff content from the command-line argument into an environment variable instead, since environment variables don't have the same size restrictions. The tool now passes the diff as "additional context" through this environment variable while keeping the main command argument small.

The change also adds proper error handling - if the old "argument too long" error still occurs somehow, the tool will now catch it gracefully and return a safe fallback response instead of crashing. This ensures the test selection process can continue even when dealing with very large code changes.

Tests were added to verify both the new approach works correctly and that the error handling prevents crashes.

References

Screenshots or screen recordings

Before After

How to set up and validate locally

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

tag:gitlab.com,2026-03-18:5215552722 Jay McCure commented on epic #41 at GitLab.org / Developer Experience / Development Analytics 2026-03-18T03:37:19Z jay_mccure Jay McCure

This is a good initiative, as the vast majority of failure issues is noise 😄

Turning them off for lower level specs first would be a good iterative approach.

These are the usages for the lower level specs I can think of:

  • discussion SSOT of why the test is failing (replaced by top flaky test issues?)
  • increments flakiness label (no longer used)
  • not always, but sometimes is used to link a quarantine in the code base (replaced by top flaky test issues or manually created issues?)
  • convenience, when a test breaks there is an issue to put in the backlog for a given team (replaced by top flaky test issues?)
  • history of job failures (this can be replaced by grafana dashboards)
  • history of slow occurrences (not sure if this is useful/being used)
  • debugging, e.g. if there is a master-broken message, you can search the failure issues to get a history (can be replaced by grafana dashboards, but may need comms)

@willmeek might think of additional use cases

tag:gitlab.com,2026-03-18:5215513876 Jay McCure pushed new project branch jmc-use-cli-context-duo-test-selector at GitLab.org / GitLab 2026-03-18T03:12:33Z jay_mccure Jay McCure

Jay McCure (786f0fa6) at 18 Mar 03:12

Fix Errno::E2BIG in duo test selection for large diffs

tag:gitlab.com,2026-03-18:5215339495 Jay McCure commented on merge request !227780 at GitLab.org / GitLab 2026-03-18T01:26:08Z jay_mccure Jay McCure

see !227787

tag:gitlab.com,2026-03-18:5215337690 Jay McCure closed merge request !227780: Draft: test cng mirror at GitLab.org / GitLab 2026-03-18T01:25:28Z jay_mccure Jay McCure

What does this MR do and why?

GitLab CI's =~ operator does partial/substring matching by default. So a regex like /gitlab-go/ matches any job name that contains gitlab-go — including gitlab-gomplate.

When gitlab-go's image already exists in the registry, it gets added to the skip list, building a regex like:

/final-images-listing|gitlab-go|gitaly|.../

This inadvertently also matches gitlab-gomplate and gitaly-init-cgroups, causing those jobs to be skipped with when: never. When those skipped jobs are then needed as dependencies (e.g. gitlab-base depends on gitlab-gomplate), the pipeline fails.

The fix adds ^ (start) and $ (end) anchors with a capturing group:

/^(final-images-listing|gitlab-go|gitaly|...)$/

Now the regex only matches a job name that is exactly one of the listed strings — gitlab-go can no longer accidentally match gitlab-gomplate. Changelog: fixed EE: true

References

Screenshots or screen recordings

Before After

How to set up and validate locally

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #18

tag:gitlab.com,2026-03-18:5215324068 Jay McCure opened issue #4339: SKIP_JOB_REGEX partial job name matching breaks CNG mirror pipelines on stable branches at GitLab.org / Developer Experience /... 2026-03-18T01:16:38Z jay_mccure Jay McCure tag:gitlab.com,2026-03-18:5215321299 Jay McCure commented on merge request !227787 at GitLab.org / GitLab 2026-03-18T01:14:37Z jay_mccure Jay McCure

Hi @vishal.s.patel 👋 would you mind taking the first review of this? Thanks

tag:gitlab.com,2026-03-18:5215314612 Jay McCure commented on merge request !2947 at GitLab.org / cli 2026-03-18T01:10:02Z jay_mccure Jay McCure

LGTM, but I will let @timofurrer chime in as he has more context around the breaking change in #8204

tag:gitlab.com,2026-03-18:5215301324 Jay McCure commented on merge request !227787 at GitLab.org / GitLab 2026-03-18T01:01:27Z jay_mccure Jay McCure

jobs don't contain these characters

tag:gitlab.com,2026-03-18:5215273841 Jay McCure commented on merge request !2349 at GitLab.org / editor-extensions / GitLab Duo Plugin for JetBrains 2026-03-18T00:45:30Z jay_mccure Jay McCure

Hi @lauraionel 👋 would you mind reviewing this? Thanks 🙇

tag:gitlab.com,2026-03-18:5215256003 Jay McCure commented on merge request !2339 at GitLab.org / editor-extensions / GitLab Duo Plugin for JetBrains 2026-03-18T00:32:31Z jay_mccure Jay McCure

The tests passed in my MR so the failures are likely related to this MR

tag:gitlab.com,2026-03-18:5215240801 Jay McCure commented on merge request !2339 at GitLab.org / editor-extensions / GitLab Duo Plugin for JetBrains 2026-03-18T00:23:24Z jay_mccure Jay McCure

Hi @lauraionel 👋 the warnings and error here are because the influxdb instance is deprecated. This metrics job needs to be removed. I;ve created an MR for this: !2349

This does not cause the failure though. The failure is because of failed tests. If you look at the video the token is verified in the settings, but then there is an endless spinner in the bottom right corner. It would be worth checking if it occurs in main also.

https://gitlab.com/gitlab-org/editor-extensions/gitlab-jetbrains-plugin/-/jobs/13525013795/artifacts/file/video/GitLab%20Duo%20is%20enabled_recording_2026_17_03_11_01_42.avi

tag:gitlab.com,2026-03-18:5215221774 Jay McCure opened merge request !2349: chore(ci): remove e2e test metric recording at GitLab.org / editor-extensions / GitLab Duo Plugin for JetBrains 2026-03-18T00:12:47Z jay_mccure Jay McCure

What does this MR do and why?

This change removes the end-to-end (E2E) test metrics collection system from the GitLab JetBrains plugin project.

The system previously collected test results after running automated tests and sent performance data to an InfluxDB database for monitoring and analysis. This included tracking which tests passed or failed, how long they took to run, and other metadata about the test execution.

The removal includes:

  • Deleting the metrics collection script that parsed test results and uploaded them to the database
  • Removing the build configuration that installed and ran the metrics collection tool
  • Eliminating all the JavaScript dependencies needed for the metrics system
  • Taking out the step in the continuous integration pipeline that triggered metrics collection

This will remove this warning: !2339 (comment 3166938059)

The influx instance has been removed and this hasn't been working for 4+ months, prior to that, these metrics were not being used.

gitlab-org/quality/analytics#30 (comment 2841647568) gitlab-org/quality/quality-engineering/team-tasks#4325

MR acceptance checklist

  • The changes have been tested manually and are working as specified.
  • The correct type labels have been applied to this MR.
  • This MR has been made as small as possible, to improve review efficiency and code quality.
  • If this is a user-facing change, an entry has been added to the Unreleased section of CHANGELOG.md.
  • If this is a user-facing change, update the smoke test strategy if applicable.
tag:gitlab.com,2026-03-18:5215217850 Jay McCure pushed new project branch jmc-remove-e2e-metrics at GitLab.org / editor-extensions / GitLab Duo Plugin for JetBrains 2026-03-18T00:10:36Z jay_mccure Jay McCure

Jay McCure (83e347cb) at 18 Mar 00:10

chore(ci): remove e2e test metric recording

tag:gitlab.com,2026-03-17:5215186562 Jay McCure commented on merge request !227787 at GitLab.org / GitLab 2026-03-17T23:59:53Z jay_mccure Jay McCure

Kicking off a pipelinetier-3 to trigger CNG e2e tests

tag:gitlab.com,2026-03-17:5215182542 Jay McCure commented on merge request !2972 at GitLab.org / cli 2026-03-17T23:56:57Z jay_mccure Jay McCure

@shekharpatnaik 👋 would you mind doing a maintainer review for this? thanks 🙇

tag:gitlab.com,2026-03-17:5215159658 Jay McCure pushed to project branch jmc-fix-cng-mirror-jobs at GitLab.org / GitLab 2026-03-17T23:42:26Z jay_mccure Jay McCure

Jay McCure (e6c66dc2) at 17 Mar 23:42

CI: Update CNG mirror skip job regex

tag:gitlab.com,2026-03-17:5215137828 Jay McCure opened merge request !227787: CI: Update CNG mirror skip job regex at GitLab.org / GitLab 2026-03-17T23:27:45Z jay_mccure Jay McCure

What does this MR do and why?

Fixes gitlab-org/quality/quality-engineering/team-tasks#4339

GitLab CI's =~ operator does partial/substring matching by default. So a regex like /gitlab-go/ matches any job name that contains gitlab-go — including gitlab-gomplate.

When gitlab-go's image already exists in the registry, it gets added to the skip list, building a regex like:

/final-images-listing|gitlab-go|gitaly|.../

This inadvertently also matches gitlab-gomplate and gitaly-init-cgroups, causing those jobs to be skipped with when: never. When those skipped jobs are then needed as dependencies (e.g. gitlab-base depends on gitlab-gomplate), the pipeline fails.

The fix adds ^ (start) and $ (end) anchors with a capturing group:

/^(final-images-listing|gitlab-go|gitaly|...)$/

Now the regex only matches a job name that is exactly one of the listed strings — gitlab-go can no longer accidentally match gitlab-gomplate.

Note: this will need to be backported to fix stable branches

Testing

Tested in draft MR in 18.7 branch https://gitlab.com/gitlab-org/build/CNG-mirror/-/pipelines/2391718585

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

tag:gitlab.com,2026-03-17:5215129374 Jay McCure pushed new project branch jmc-fix-cng-mirror-jobs at GitLab.org / GitLab 2026-03-17T23:23:54Z jay_mccure Jay McCure

Jay McCure (b8b71990) at 17 Mar 23:23

CI: Update CNG mirror skip job regex