Skip to content

ci: route bench validation to Eagle - #7

Merged
brettheap merged 1 commit into
mainfrom
ci/eagle-fleet-routing
Oct 21, 2026
Merged

brettheap merged 1 commit into
mainfrom
ci/eagle-fleet-routing

Conversation

@brettheap

@brettheap brettheap commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

GitHub-hosted execution is blocked by the account billing cap. Route the existing bench configuration validation job to the disposable Eagle Linux pool using eagle-linux-ubuntu24. The pinned checker, test command, triggers and permissions are unchanged.

Validation: the existing immutable configuration checker passes locally, actionlint passes with the Eagle label declaration, and git diff checks pass. This change launches no bench or shared service.

Fleet governance and runtime validation: opensoft/openBenches#208 (specs/030-eagle-fleet-routing/). Actual execution on Eagle is required before landing.

Summary by Sourcery

Route bench configuration validation through the Eagle Linux runner pool to avoid GitHub-hosted execution limits.

Enhancements:

  • Route bench configuration validation to the disposable Eagle Linux runner pool.

CI:

  • Move the bench validation workflow from GitHub-hosted Ubuntu to Eagle Linux without changing its checker, triggers, permissions, or timeout.

@brettheap

Copy link
Copy Markdown
Contributor Author

@codex review

@sourcery-ai

sourcery-ai Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

Updates the existing bench validation workflow to run on the disposable eagle-linux-ubuntu24 pool instead of GitHub-hosted Ubuntu, preserving its validation behavior and requiring an actual Eagle execution before landing.

File-Level Changes

Change Details Files
Route the existing bench configuration validation job from GitHub-hosted Ubuntu to the disposable Eagle Linux pool.
  • Replace the runner label with eagle-linux-ubuntu24.
  • Keep the timeout, pinned checkout action, checker command, triggers, and permissions unchanged.
.github/workflows/bench-init.yml
Preserve the validation-only scope while requiring fleet-backed runtime verification before merge.
  • Confirm actionlint and immutable configuration checks remain valid with the Eagle label.
  • Verify actual execution on Eagle under the referenced fleet governance work item; no bench or shared service is launched by this change.
.github/workflows/bench-init.yml

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 21, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-21T18:54:28.143223Z 9cc5603 Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Hey - I've found 2 issues

Prompt for AI Agents
Please address the comments from this code review:

## Individual Comments

### Comment 1
<location path=".github/workflows/bench-init.yml" line_range="14" />
<code_context>
 jobs:
   validate:
-    runs-on: ubuntu-24.04
+    runs-on: eagle-linux-ubuntu24
     timeout-minutes: 10
     steps:
</code_context>
<issue_to_address>
**Pull requests reach Eagle runners**

When a pull request changes `.github/workflows/bench-init.yml`, gitHub runs the pull-request version of this workflow on Eagle, so a contributor can replace the validation steps with arbitrary commands that access the runner’s network or transient credentials. The job’s `contents: read` permission does not restrict host access.

Run untrusted pull-request workflows only on an Eagle pool isolated from credentials and internal network access, or keep this validation on GitHub-hosted runners.
</issue_to_address>

### Comment 2
<location path=".github/workflows/bench-init.yml" line_range="14" />
<code_context>
 jobs:
   validate:
-    runs-on: ubuntu-24.04
+    runs-on: eagle-linux-ubuntu24
     timeout-minutes: 10
     steps:
</code_context>
<issue_to_address>
**Validation remains queued**

When the Eagle pool has no online runner registered with the exact `eagle-linux-ubuntu24` label, gitHub cannot assign `validate` to a runner, so the required validation check never completes and blocks the pull request.

Set `runs-on` to a label registered with an online runner.
</issue_to_address>

Sourcery assessment

Approval pending. 2 findings to address first.

Blocking findings: .github/workflows/bench-init.yml:14, .github/workflows/bench-init.yml:14


Sourcery is free for open source - if you like our reviews please consider sharing them ✨

jobs:
validate:
runs-on: ubuntu-24.04
runs-on: eagle-linux-ubuntu24

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟠 High · Pull requests reach Eagle runners

When a pull request changes .github/workflows/bench-init.yml, gitHub runs the pull-request version of this workflow on Eagle, so a contributor can replace the validation steps with arbitrary commands that access the runner’s network or transient credentials. The job’s contents: read permission does not restrict host access.

Run untrusted pull-request workflows only on an Eagle pool isolated from credentials and internal network access, or keep this validation on GitHub-hosted runners.

Prompt for AI agents
In `.github/workflows/bench-init.yml` at line 14:

**Pull requests reach Eagle runners**

When a pull request changes `.github/workflows/bench-init.yml`, gitHub runs the pull-request version of this workflow on Eagle, so a contributor can replace the validation steps with arbitrary commands that access the runner’s network or transient credentials. The job’s `contents: read` permission does not restrict host access.

Run untrusted pull-request workflows only on an Eagle pool isolated from credentials and internal network access, or keep this validation on GitHub-hosted runners.

jobs:
validate:
runs-on: ubuntu-24.04
runs-on: eagle-linux-ubuntu24

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟠 High · Validation remains queued

When the Eagle pool has no online runner registered with the exact eagle-linux-ubuntu24 label, gitHub cannot assign validate to a runner, so the required validation check never completes and blocks the pull request.

Set runs-on to a label registered with an online runner.

Prompt for AI agents
In `.github/workflows/bench-init.yml` at line 14:

**Validation remains queued**

When the Eagle pool has no online runner registered with the exact `eagle-linux-ubuntu24` label, gitHub cannot assign `validate` to a runner, so the required validation check never completes and blocks the pull request.

Set `runs-on` to a label registered with an online runner.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Can't wait for the next one!

Reviewed commit: 9cc56033fa

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@brettheap
brettheap merged commit 96267ce into main Oct 21, 2026
2 of 3 checks passed
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.

1 participant