Repository navigation
e2e controlplane: drop removed repo remote url, run suite on PRs - #2578
Merged
Merged
Conversation
#2548 removed `entire repo remote url`, but a native-mirror lifecycle phase still called it, so the control-plane suite failed on main. The primary-default half was already covered by the `remote add` phase; the unknown-cluster refusal moves there, run inside the clone. The suite only ran on pushes to main, which is how this slipped through. It now also runs on same-repo PRs to main (forks get no secrets). Slack still notifies only for main. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Entire-Checkpoint: 01M39N8CRAJM2WR38XJ0K4M862
Contributor
There was a problem hiding this comment.
Copilot review overview
馃數 Needs a closer look
Dependabot PRs may run without secrets and fail instead of being skipped.
Review effort: Lite
Findings: None
What changed in this PR
Updates control-plane E2E coverage and enables eligible pull requests to run the suite.
Changes:
- Removes obsolete
repo remote urltesting and expands remote-add assertions. - Adds gated PR workflow execution while preserving push-only Slack alerts.
| File | Summary |
|---|---|
e2e/鈥媍ontrolplane/鈥媙ative_mirror_test.go |
Updates native mirror lifecycle coverage. |
.github/鈥媤orkflows/鈥媏2e-controlplane.yml |
Adds PR execution and notification gating; Dependabot PRs also need exclusion. |
馃挕 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
gtrrz-victor
enabled auto-merge
September 24, 2026 12:29
Dependabot PRs come from same-repo branches, so the fork guard let them through, but their runs get only Dependabot secrets and would fail at login while holding the shared account's queue. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Entire-Checkpoint: 01M39PGZS1S9FK09YTYYNN84GV
Soph
approved these changes
Sep 24, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
https://entire.io/gh/entireio/cli/trails/1417
Why
E2E Control Plane run 35990680503 failed on main: #2548 removed
entire repo remote url, butTestControlPlane_NativeMirrorLifecyclestill called it (unknown command "url" for "entire repo remote"), and every later phase was skipped. The suite only runs on pushes to main, so the PR didn't catch it.What
repo remote url. Its primary-default check is already covered by "no --cluster resolves the primary, and --override repoints", which runsrepo remote add homewithout a TTY. Its unknown-cluster check moves into that phase, run inside the clone:repo remote add stray --cluster no-such-cluster.entire.iomust fail withnot mirrored onand list both cluster hosts, and must not write the remote.pull_requesttomain, for same-repo PRs only (forks get no secrets). Slack still notifies only when a push tomainfails.Note
PR runs share the
e2e-controlplaneconcurrency group, so they never hit the shared account at the same time. GitHub keeps only one waiting run per group, though, so a PR run can replace a merge-to-main run that is waiting in the queue. Running jobs are never cancelled, so no resources leak.Test plan
mise run check馃 Generated with Claude Code
Note
Medium Risk
PR runs exercise production E2E against a shared account (queued, not parallel), and workflow gating must stay correct so fork PRs do not fail spuriously on missing secrets.
Overview
Fixes control-plane E2E breakage after
entire repo remote urlwas removed, and runs that suite on same-repo PRs so regressions surface before merge.Tests: Removes the lifecycle phase that called the deleted
urlsubcommand. Primary-without---clusterbehavior stays covered via non-interactiverepo remote add home. The unknown-cluster case moves into that phase:repo remote add stray --cluster no-such-cluster.entire.iomust error withnot mirrored on, list both cluster hosts, and leavestrayunset.CI:
e2e-controlplane.ymlalso triggers onpull_requesttomain, gated so fork PRs skip (no secrets). PR jobs share the existinge2e-controlplaneconcurrency group. Slack failure alerts still fire only on failed pushes tomain; message copy is updated accordingly.Reviewed by Cursor Bugbot for commit 932eb30. Configure here.