Skip to content

Conversation

@lucacillario
Copy link
Contributor

@lucacillario lucacillario commented Oct 31, 2025

Summary by CodeRabbit

  • Chores
    • Optimized continuous integration pipeline with restructured test execution workflow.
    • Enhanced build system efficiency for integration testing processes.

@github-actions
Copy link

github-actions bot commented Oct 31, 2025

Manual Deploy Available

You can trigger a manual deploy of this PR branch to testnet:

Deploy to Testnet 🚀

Alternative: Comment /deploy on this PR to trigger deployment directly.

⚠️ Note: Manual deploy requires authorization. Only authorized users can trigger deployments.

Comment updated automatically when the PR is synchronized.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 31, 2025

Walkthrough

The CI workflow is restructured to use a matrix strategy for executing 11 integration test batches in parallel, separating build and test jobs. The Makefile's ci-test-integration target is simplified to delegate test execution to the test-integration directory while propagating the RUN_TESTS environment variable.

Changes

Cohort / File(s) Summary
CI Workflow Restructuring
.github/workflows/ci-test-integration.yml
Renames job from run_make_ci_test to build with updated trigger conditions. Adds a new run_integration_tests job with matrix strategy for 11 test batches. Updates checkout actions from v2 to v5. Replaces single integration test step with matrix-driven execution, each batch labeled as "Integration Tests - ${matrix.batch_tests}". Adds dedicated setup steps (checkout, build-env, solana) within matrix job.
Build Configuration Update
Makefile
Simplifies ci-test-integration target to directly invoke test target in test-integration directory via RUN_TESTS=$(RUN_TESTS) $(MAKE) -C $(DIR)/test-integration test, removing the separate cargo build --locked step.

Sequence Diagram(s)

sequenceDiagram
    participant GH as GitHub
    participant build as build job
    participant matrix as run_integration_tests<br/>(matrix 11×)
    
    GH->>build: Trigger (non-PR or not draft)
    build->>build: Checkout repo (v5)
    build->>build: Build project & test programs
    build->>matrix: Job complete
    
    matrix->>matrix: Checkout repo (v5)
    matrix->>matrix: Setup build env & Solana
    matrix->>matrix: RUN_TESTS=batch_X<br/>make ci-test-integration
    matrix->>matrix: Execute test suite
    
    Note over matrix: All 11 batches<br/>run in parallel
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20–25 minutes

  • Workflow matrix configuration: Verify the 11 test batch identifiers are correctly defined and the non-fail-fast strategy is intentional
  • Job dependency and environment propagation: Ensure run_integration_tests depends on build job and RUN_TESTS variable flows correctly through both workflow and Makefile
  • Trigger condition logic: Validate the condition github.event_name != 'pull_request' || !github.event.pull_request.draft achieves desired behavior
  • Build step removal: Confirm delegating cargo build --locked to the test-integration Makefile target doesn't break build reproducibility or caching

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The pull request title "feat: parallel CI integration tests" directly and accurately describes the main changes in the changeset. The core modification involves restructuring the CI workflow to introduce a matrix-based execution strategy that runs 11 test suites (batch_tests) in parallel, along with supporting changes to both the workflow file and Makefile to enable this parallelization. The title is concise, specific, and clearly communicates the primary improvement from the developer's perspective without ambiguity.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feat/parallel-ci-integration-tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

📜 Review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between dcf91d6 and 97b7891.

📒 Files selected for processing (1)
  • .github/workflows/ci-test-integration.yml (2 hunks)
🧰 Additional context used
🪛 actionlint (1.7.8)
.github/workflows/ci-test-integration.yml

26-26: got unexpected character '+' while lexing expression, expecting 'a'..'z', 'A'..'Z', '_', '0'..'9', ''', '}', '(', ')', '[', ']', '.', '!', '<', '>', '=', '&', '|', '*', ',', ' '

(expression)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
  • GitHub Check: run_make_ci_lint
  • GitHub Check: run_make_ci_test
🔇 Additional comments (1)
.github/workflows/ci-test-integration.yml (1)

17-25: Confirm matrix batch labels map to actual test discovery logic.

The matrix defines 5 batch labels (e.g., "schedulecommit", "chainlink,cloning", etc.) that are passed via RUN_TESTS. Verify that the test discovery/filtering logic in the build system correctly parses comma-separated values and only runs the intended test suites per batch.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
.github/workflows/ci-test-integration.yml (1)

14-47: Update deprecated GitHub Actions versions and verify runner configuration.

The workflow uses deprecated action versions that will fail after their retirement dates:

  • Line 20: actions/checkout@v2 is outdated; upgrade to v4 (or v5)
  • Line 41: actions/upload-artifact@v3 is deprecated (retired Jan 30, 2025); upgrade to v4 (or v5)

The extra-large runner label on line 16 is valid as a custom self-hosted runner label but should be documented in your repository's runner configuration or CI documentation to clarify this is intentional.

Apply this diff to update the checkout action:

      - name: Checkout this magicblock-validator
-       uses: actions/checkout@v2
+       uses: actions/checkout@v4

Apply this diff to update the upload-artifact action:

      - name: Upload build artifacts
-       uses: actions/upload-artifact@v3
+       uses: actions/upload-artifact@v4
📜 Review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 3c7c452 and 03e1691.

📒 Files selected for processing (2)
  • .github/workflows/ci-test-integration.yml (2 hunks)
  • Makefile (1 hunks)
🧰 Additional context used
🪛 actionlint (1.7.8)
.github/workflows/ci-test-integration.yml

16-16: label "extra-large" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2025", "windows-2022", "windows-11-arm", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-24.04-arm", "ubuntu-22.04", "ubuntu-22.04-arm", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-26-xlarge", "macos-26", "macos-15-intel", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)


41-41: the runner of "actions/upload-artifact@v3" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)


51-51: label "extra-large" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2025", "windows-2022", "windows-11-arm", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-24.04-arm", "ubuntu-22.04", "ubuntu-22.04-arm", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-26-xlarge", "macos-26", "macos-15-intel", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)


64-64: the runner of "actions/checkout@v2" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)


78-78: the runner of "actions/download-artifact@v3" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
  • GitHub Check: run_make_ci_test
  • GitHub Check: run_make_ci_lint
  • GitHub Check: run_make_ci_format
🔇 Additional comments (3)
Makefile (1)

54-55: LGTM—RUN_TESTS is now properly propagated.

Explicitly passing RUN_TESTS=$(RUN_TESTS) to the recursive make invocation ensures the variable reliably reaches the downstream test target and aligns with project conventions. The removal of cargo build --locked from this target (now delegated to the CI workflow) is the correct separation of concerns.

.github/workflows/ci-test-integration.yml (2)

91-92: LGTM—RUN_TESTS environment variable correctly propagated.

The RUN_TESTS environment variable is correctly set from the matrix value (line 92), enabling the make ci-test-integration target to filter tests by batch. This aligns with the Makefile change that explicitly forwards this variable downstream.


52-60: Matrix batch coverage is verified as complete and accurate.

All 11 integration tests from the Makefile (schedulecommit, chainlink, cloning, restore_ledger, magicblock_api, table_mania, committor, pubsub, config, schedule_intents, task-scheduler) are included in the workflow matrix with no gaps or overlaps. Each batch name corresponds directly to a valid RUN_TESTS value.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 03e1691 and 1ef2032.

📒 Files selected for processing (1)
  • .github/workflows/ci-test-integration.yml (2 hunks)
🧰 Additional context used
🪛 actionlint (1.7.8)
.github/workflows/ci-test-integration.yml

16-16: label "extra-large" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2025", "windows-2022", "windows-11-arm", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-24.04-arm", "ubuntu-22.04", "ubuntu-22.04-arm", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-26-xlarge", "macos-26", "macos-15-intel", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)


51-51: label "extra-large" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2025", "windows-2022", "windows-11-arm", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-24.04-arm", "ubuntu-22.04", "ubuntu-22.04-arm", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-26-xlarge", "macos-26", "macos-15-intel", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
  • GitHub Check: run_make_ci_format
  • GitHub Check: run_make_ci_test
  • GitHub Check: Build Project
🔇 Additional comments (4)
.github/workflows/ci-test-integration.yml (4)

16-16: Verify custom runner label extra-large.

actionlint flags extra-large as an unknown runner label. This may be a custom self-hosted runner label registered in your repository settings. If this is intentional, you can suppress the warning by adding the label to actionlint.yaml. If not intentional, replace with a standard GitHub-hosted runner label (e.g., ubuntu-latest-16-cores or equivalent for your needs).

Also applies to: 51-51


52-60: Batch strategy looks sound.

The 5-batch partitioning appropriately parallelizes integration tests across distinct test categories, and fail-fast: false ensures all batches run to surface any failures. Matrix logic is correct.


83-92: No action required—RUN_TESTS forwarding is correctly implemented.

The Makefile target ci-test-integration (line 55) explicitly forwards the RUN_TESTS variable using RUN_TESTS=$(RUN_TESTS) $(MAKE)..., which aligns with the project convention and ensures proper variable propagation from the GitHub Actions workflow step to the recursive make invocation.


77-92: Artifact paths resolve correctly; no issue identified.

The DIR variable in each Makefile correctly points to that file's directory. When artifacts are downloaded to the repo root and make runs with working-directory: magicblock-validator, the relative paths in test-integration/Makefile resolve correctly:

  • $(DIR)target/deploy finds magicblock-validator/test-integration/target/deploy
  • $(DIR)../target/deploy finds magicblock-validator/target/deploy

The workflow artifact handling is sound.

@lucacillario lucacillario force-pushed the feat/parallel-ci-integration-tests branch from 17472ee to eaabcad Compare October 31, 2025 10:43
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 1ef2032 and eaabcad.

📒 Files selected for processing (2)
  • .github/workflows/ci-test-integration.yml (2 hunks)
  • Makefile (1 hunks)
🧰 Additional context used
🪛 actionlint (1.7.8)
.github/workflows/ci-test-integration.yml

16-16: label "extra-large" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2025", "windows-2022", "windows-11-arm", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-24.04-arm", "ubuntu-22.04", "ubuntu-22.04-arm", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-26-xlarge", "macos-26", "macos-15-intel", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)


51-51: label "extra-large" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2025", "windows-2022", "windows-11-arm", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-24.04-arm", "ubuntu-22.04", "ubuntu-22.04-arm", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-26-xlarge", "macos-26", "macos-15-intel", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
  • GitHub Check: Build Project
  • GitHub Check: run_make_ci_lint
  • GitHub Check: run_make_ci_test
🔇 Additional comments (3)
.github/workflows/ci-test-integration.yml (2)

33-38: ✅ Build job structure and artifact upload are well-configured.

The separation of build and test into distinct jobs enables parallel matrix-driven testing. The artifact upload correctly captures both target/ directories. The environment variable forwarding (RUN_TESTS) integrates properly with the Makefile.


49-92: ✅ Matrix-driven parallel integration test execution is well-structured.

The new run_integration_tests job properly implements parallel test batching with five independent test runs. The job dependency on build ensures artifacts are available before tests start. The RUN_TESTS environment variable is correctly set per batch and forwarded through make. The disabled fail-fast flag ensures all batches complete regardless of individual failures.

Makefile (1)

54-55: ⚠️ Original review comment is incorrect—no changes required.

The removal of cargo build --locked from ci-test-integration is intentional and correct. The GitHub Actions workflow has been refactored to use a build/test separation pattern:

  • Build job runs cargo build --locked, uploads artifacts
  • Test jobs (5 parallel batches) download artifacts and run make ci-test-integration with different RUN_TESTS values

This avoids rebuilding the project 5 times and is a common CI optimization pattern. The RUN_TESTS environment variable is properly passed through, enabling test batching. The Makefile change aligns with the intended workflow design.

Local developers can run the test target (which includes the build step) if they want a standalone build-and-test command.

Likely an incorrect or invalid review comment.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 85b62b9 and 84a928c.

📒 Files selected for processing (2)
  • .github/actions/setup-build-env/action.yml (2 hunks)
  • .github/workflows/ci-test-integration.yml (1 hunks)
🧰 Additional context used
🪛 actionlint (1.7.8)
.github/workflows/ci-test-integration.yml

16-16: label "extra-large" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2025", "windows-2022", "windows-11-arm", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-24.04-arm", "ubuntu-22.04", "ubuntu-22.04-arm", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-26-xlarge", "macos-26", "macos-15-intel", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)


45-45: label "extra-large" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2025", "windows-2022", "windows-11-arm", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-24.04-arm", "ubuntu-22.04", "ubuntu-22.04-arm", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-26-xlarge", "macos-26", "macos-15-intel", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (4)
  • GitHub Check: run_make_ci_test
  • GitHub Check: Build Project
  • GitHub Check: run_make_ci_lint
  • GitHub Check: run_make_ci_format
🔇 Additional comments (3)
.github/actions/setup-build-env/action.yml (1)

17-19: Well-integrated cache configuration additions.

The new cache_restore_keys input is properly declared as optional and correctly passed to the rust-cache step. The additional cache flags (cache-targets, cache-all-crates, cache-on-failure) enhance caching resilience across workspace targets.

Also applies to: 41-41, 45-47

.github/workflows/ci-test-integration.yml (2)

14-41: Build job structure and caching strategy are well-configured.

The job properly includes conditional execution, current action versions, and a robust cache strategy using both SHA-unique keys and fallback patterns. The addition of make -C test-integration programs ensures test infrastructure is compiled before dependent jobs consume the cache.


16-16: Verify actionlint configuration for custom runner label.

The extra-large runner label on lines 16 and 45 continues to trigger actionlint warnings. Past review comments noted this is a custom self-hosted runner label that requires configuration. Ensure one of the following:

  1. If extra-large is a self-hosted runner label, create or update .github/actionlint.yaml with:

    self-hosted-runner-labels:
      - extra-large
  2. If this should use a GitHub-hosted runner, replace extra-large with a standard label like ubuntu-latest-8-cores or ubuntu-latest-16-cores.

Also applies to: 45-45

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

📜 Review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 84a928c and 2f576f3.

📒 Files selected for processing (1)
  • .github/workflows/ci-test-integration.yml (2 hunks)
🧰 Additional context used
🪛 actionlint (1.7.8)
.github/workflows/ci-test-integration.yml

16-16: label "extra-large" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2025", "windows-2022", "windows-11-arm", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-24.04-arm", "ubuntu-22.04", "ubuntu-22.04-arm", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-26-xlarge", "macos-26", "macos-15-intel", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)


42-42: label "extra-large" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2025", "windows-2022", "windows-11-arm", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-24.04-arm", "ubuntu-22.04", "ubuntu-22.04-arm", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-26-xlarge", "macos-26", "macos-15-intel", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (4)
  • GitHub Check: Build Project
  • GitHub Check: run_make_ci_lint
  • GitHub Check: run_make_ci_test
  • GitHub Check: run_make_ci_format
🔇 Additional comments (2)
.github/workflows/ci-test-integration.yml (2)

33-38: Review comment is incorrect. Artifacts are handled via rust-cache shared-key, not explicit upload/download.

The workflow correctly uses Swatinem/rust-cache@v2 with a shared cache key ("magicblock-validator-ci-test-integration-v000") across both the build and run_integration_tests jobs. This GitHub Actions caching mechanism automatically shares the compiled target directories between jobs without requiring explicit upload-artifact/download-artifact steps. The run_integration_tests job will restore cached artifacts on the second run, not rebuild from scratch. The workflow design is correct as-is.

Likely an incorrect or invalid review comment.


24-29: The suggested cache_restore_keys input does not exist and should not be added.

The setup-build-env action does not define or accept a cache_restore_keys input. The action's only defined inputs are: github_access_token, github_token, rust_toolchain_release, and build_cache_key_name. Caching is handled internally via the Swatinem/rust-cache@v2 action, which is configured through the build_cache_key_name parameter. Adding an unsupported input would have no effect and is unnecessary.

Likely an incorrect or invalid review comment.

@lucacillario lucacillario requested a review from thlorenz October 31, 2025 16:30
Copy link
Contributor

@thlorenz thlorenz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great, exactly what we need! LGTM.

@thlorenz thlorenz merged commit 8556226 into master Nov 2, 2025
18 checks passed
@thlorenz thlorenz deleted the feat/parallel-ci-integration-tests branch November 2, 2025 07:31
thlorenz added a commit that referenced this pull request Nov 6, 2025
* master:
  hotfix: unregistered metric COMMITTOR_INTENT_CU_USAGE (#612)
  feat: add metrics for intent execution time (#607)
  fix: don't increment subscription id for dups (#610)
  chore: broaden dependency range on the magic program api (#609)
  feat: parallel CI integration tests (#605)
  Handle uncleaned buffers + generalized tx send retries (#597)
  fix: support binary opcode (#604)
  fix: correct log imports (#606)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants