Skip to content

chore(ci): run on default runners#2727

Merged
StarpTech merged 5 commits intomainfrom
dustin/run-on-default-runners
Apr 1, 2026
Merged

chore(ci): run on default runners#2727
StarpTech merged 5 commits intomainfrom
dustin/run-on-default-runners

Conversation

@StarpTech
Copy link
Copy Markdown
Contributor

@StarpTech StarpTech commented Apr 1, 2026

It should no longer be necessary to run the router tests on big machines, since they have been sharded. This reduces cost.

Summary by CodeRabbit

  • Chores
    • CI configuration updated to use the standard GitHub Actions runner for integration tests, improving consistency and resource efficiency.
  • Bug Fixes
    • Improved validation around persisted-operations storage configuration so missing or mismatched storage providers now produce an immediate, clearer configuration error instead of failing later.

Checklist

  • I have discussed my proposed changes in an issue and have received approval to proceed.
  • I have followed the coding standards of the project.
  • Tests or benchmarks have been added or updated.
  • Documentation has been updated on https://github.com/wundergraph/docs-website.
  • I have read the Contributors Guide.

Open Source AI Manifesto

This project follows the principles of the Open Source AI Manifesto. Please ensure your contribution aligns with its principles.

@StarpTech StarpTech requested review from a team as code owners April 1, 2026 19:41
@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 1, 2026

Router-nonroot image scan passed

✅ No security vulnerabilities found in image:

ghcr.io/wundergraph/cosmo/router:sha-1f9a6ed73db564b492ac10b50a39f0ae9834cf5c-nonroot

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 1, 2026

Caution

Review failed

The head commit changed during the review from a3e161a to 1011e9c.

Walkthrough

Added a nil-check and explicit error when a configured persisted-operations storage provider ID has no matching storage client in router core; updated GitHub Actions integration_test runner from ubuntu-latest-l to ubuntu-latest. No other logic or exported declarations changed.

Changes

Cohort / File(s) Summary
GitHub Actions Workflow Configuration
.github/workflows/router-ci.yaml
Changed integration_test job runner from ubuntu-latest-l to ubuntu-latest (single-line runner config update).
Router core persisted-operations validation
router/core/router.go
In buildClients, added a check that returns an error if persistedOperationsConfig.Manifest.Enabled is true and a non-empty storageProviderID is set but no matching pClient was found; prevents a nil dereference before pClient.ReadManifest(...).

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The PR title 'chore(ci): run on default runners' accurately describes the main change of updating the integration_test job runner from ubuntu-latest-l to ubuntu-latest, though it omits the secondary router fix.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch

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

@codecov
Copy link
Copy Markdown

codecov bot commented Apr 1, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 63.34%. Comparing base (bcb4ed3) to head (02cb9cf).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@             Coverage Diff             @@
##             main    #2727       +/-   ##
===========================================
+ Coverage   45.69%   63.34%   +17.64%     
===========================================
  Files        1032      249      -783     
  Lines      138960    26661   -112299     
  Branches     8629        0     -8629     
===========================================
- Hits        63504    16889    -46615     
+ Misses      73731     8409    -65322     
+ Partials     1725     1363      -362     

see 788 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Copy Markdown
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.

🧹 Nitpick comments (1)
router/core/router.go (1)

1278-1280: Add a regression test for this new error branch.

Please add a PQL manifest test case for: explicit storage.provider_id set, no matching provider in storage_providers, and assert this exact startup error path.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@router/core/router.go` around lines 1278 - 1280, Add a regression test that
constructs a PQL manifest which sets storage.provider_id to a specific value
while leaving storage_providers without any entry for that ID, then invokes the
startup/manifest-validation entrypoint that exercises the code path that
resolves pClient (e.g., the router startup or manifest load function) and
asserts the returned error matches the exact message produced when pClient ==
nil: fmt.Errorf("storage provider %q is configured for PQL manifest but no
matching provider was found in storage_providers", storageProviderID). Use the
testing framework (testing.T with require/assert) to assert the error string
equality and reference the storage.provider_id value you used so the test
reliably triggers the pClient == nil branch.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@router/core/router.go`:
- Around line 1278-1280: Add a regression test that constructs a PQL manifest
which sets storage.provider_id to a specific value while leaving
storage_providers without any entry for that ID, then invokes the
startup/manifest-validation entrypoint that exercises the code path that
resolves pClient (e.g., the router startup or manifest load function) and
asserts the returned error matches the exact message produced when pClient ==
nil: fmt.Errorf("storage provider %q is configured for PQL manifest but no
matching provider was found in storage_providers", storageProviderID). Use the
testing framework (testing.T with require/assert) to assert the error string
equality and reference the storage.provider_id value you used so the test
reliably triggers the pClient == nil branch.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 735c90f0-7b29-4547-b2d9-03e0ab3833fb

📥 Commits

Reviewing files that changed from the base of the PR and between 9f50fd1 and ccb48cb.

📒 Files selected for processing (1)
  • router/core/router.go

@StarpTech StarpTech merged commit fe662bf into main Apr 1, 2026
6 checks passed
@github-actions github-actions bot removed the router label Apr 1, 2026
@StarpTech StarpTech deleted the dustin/run-on-default-runners branch April 1, 2026 20:02
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.

2 participants