From 4c3e2f59c1048cd700f217b7f2384efea5f239f2 Mon Sep 17 00:00:00 2001 From: Michael Fletcher Date: Fri, 10 Apr 2026 20:28:13 +0100 Subject: [PATCH 1/2] fix(ci): pass unique artifact-name per matrix job to prevent 409 collision Multiple matrix jobs with trunk-auto-quarantine enabled (go_core_tests, go_core_tests_integration, go_core_ccip_deployment_tests) all upload an artifact named 'individual_test_logs' in the same workflow run, causing a deterministic 409 conflict that fails CI even when tests pass. Pass artifact-name: ${{ matrix.type.cmd }}_test_logs so each job gets a unique artifact name. Depends on smartcontractkit/.github#1512. Fixes: CORE-2418 --- .github/workflows/ci-core.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/ci-core.yml b/.github/workflows/ci-core.yml index d42911cc43b..e8f3c660d8b 100644 --- a/.github/workflows/ci-core.yml +++ b/.github/workflows/ci-core.yml @@ -349,6 +349,8 @@ jobs: trunk-previous-step-outcome: ${{ steps.run-tests.outcome }} # when auto-quarantine is enabled, allow this to determine test failures trunk-upload-only: ${{ matrix.type.trunk-auto-quarantine != 'true' }} + # unique name per matrix job to avoid 409 conflict when multiple jobs upload in the same workflow run + artifact-name: ${{ matrix.type.cmd }}_test_logs - name: Print Races id: print-races From 01731a666771fdafe3d2b3c1c6bf522bc172c066 Mon Sep 17 00:00:00 2001 From: Michael Fletcher Date: Fri, 10 Apr 2026 20:44:17 +0100 Subject: [PATCH 2/2] fix(ci): pass unique artifact-name to branch-out-upload in CRE workflows Prevents 409 conflict when multiple matrix jobs fail simultaneously and attempt to upload artifacts with the same hardcoded name. Fixes: smartcontractkit/.github/actions/branch-out-upload (artifact-name input) --- .github/workflows/cre-regression-system-tests.yaml | 2 ++ .github/workflows/cre-system-tests.yaml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/.github/workflows/cre-regression-system-tests.yaml b/.github/workflows/cre-regression-system-tests.yaml index e880e055705..5422fd0b413 100644 --- a/.github/workflows/cre-regression-system-tests.yaml +++ b/.github/workflows/cre-regression-system-tests.yaml @@ -256,6 +256,8 @@ jobs: trunk-previous-step-outcome: ${{ steps.run-regression-tests.outcome }} # when auto-quarantine is enabled, allow this to determine test failures trunk-upload-only: ${{ env.ENABLE_AUTO_QUARANTINE != 'true' }} + # unique name per matrix job to avoid 409 conflict when multiple jobs upload in the same workflow run + artifact-name: ${{ matrix.tests.test_id }}_test_logs - name: Show Docker containers status if: failure() diff --git a/.github/workflows/cre-system-tests.yaml b/.github/workflows/cre-system-tests.yaml index aabcb4ff0e0..34881fe913e 100644 --- a/.github/workflows/cre-system-tests.yaml +++ b/.github/workflows/cre-system-tests.yaml @@ -361,6 +361,8 @@ jobs: trunk-previous-step-outcome: ${{ steps.run-tests.outcome }} # when auto-quarantine is enabled, allow this to determine test failures trunk-upload-only: ${{ env.ENABLE_AUTO_QUARANTINE != 'true' }} + # unique name per matrix job to avoid 409 conflict when multiple jobs upload in the same workflow run + artifact-name: ${{ matrix.tests.test_id }}_test_logs - name: Show Docker containers status if: failure()