Skip to content

ci: remove redundant CI caller rollups - #13558

Closed
teamleaderleo wants to merge 6 commits into
mainfrom
ci/fold-platform-route-status
Closed

teamleaderleo wants to merge 6 commits into
mainfrom
ci/fold-platform-route-status

Conversation

@teamleaderleo

@teamleaderleo teamleaderleo commented Sep 22, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Remove the two caller-level Linux rollups that only re-check results already owned elsewhere:

  • delete linux-preflight;
  • delete the standalone tests aggregate;
  • keep macOS admission on the current cheap static gate so macOS work continues overlapping routed Linux work;
  • make required ci-status the single final owner of caller route/result consistency.

Why

Current CI already starts macOS after changes + static-preflight, independently of the longer guard/web lanes. The remaining caller flow still allocates two extra Linux runners solely to reinterpret results:

changes + static-preflight ───────→ macOS
          routed Linux work ─→ linux-preflight
macOS + web + preflight ─────→ tests
all caller results ───────────→ ci-status

Reusable workflows already publish authoritative aggregate checks:

  • guard-status validates the routed guard children;
  • web-status validates routed web/macOS/agent-session inputs and subareas;
  • the reusable macOS workflow owns its internal suite/build verdict.

The final required ci-status can therefore enforce the caller-level route/result contract directly, without two scheduling hops.

Result semantics

ci-status now requires:

  • changes and static-preflight to succeed;
  • any routed guard aggregate to succeed;
  • routed GhosttyKit verification to succeed;
  • routed web aggregate work to succeed;
  • routed macOS work to succeed;
  • malformed route outputs to fail;
  • failures/cancellations in any dependency to fail;
  • legitimately unrouted jobs to remain skippable.

macOS admission itself stays exactly on the current changes + static-preflight gate, preserving overlap with routed Linux checks.

Effect

Two Linux runner allocations and two caller scheduling hops disappear from every relevant CI run, while the required check remains ci-status.

Testing

Regression coverage now pins:

  • absence of both old caller rollup jobs;
  • unchanged early macOS admission;
  • required router/static-preflight success;
  • routed macOS/web/guard/GhosttyKit skipped-result rejection;
  • malformed route handling;
  • legitimate unrouted skips;
  • final status ownership in ci-status.

Demo Video

N/A — CI control-plane cleanup only.

Review Trigger

@codex review
@coderabbitai review
@greptileai review
@cubic-dev-ai review

Checklist

  • Required check name remains ci-status
  • macOS keeps overlapping routed Linux work
  • Platform command bodies and test selection stay unchanged
  • Routed work must finish successfully
  • Unrouted work may skip
  • Router/static-preflight cannot silently skip
  • Both redundant Linux caller rollups are removed

@coderabbitai

coderabbitai Bot commented Sep 22, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository: manaflow-ai/cmux/.coderabbit.yaml

Review profile: ASSERTIVE

Plan: Advanced

Run ID: 0def5ced-18fc-4526-94c6-1f809a72360f

📥 Commits

Reviewing files that changed from the base of the PR and between 0bbcbb3 and 5845755.

📒 Files selected for processing (2)
  • .github/workflows/ci.yml
  • tests/test_ci_change_areas.py

Included review availability: Your plan provides up to 10 included reviews per hour; 1 remains after this review.


📝 Walkthrough

Walkthrough

The CI workflow removes linux-preflight and tests rollup jobs. The macos job depends directly on routed aggregate jobs. ci-status validates route outputs and job results directly. Tests cover routed and unrouted skip behavior.

Changes

CI route validation

Layer / File(s) Summary
Direct macOS admission
.github/workflows/ci.yml, tests/test_ci_change_areas.py
macos depends directly on cheap aggregate jobs. Its admission conditions handle guard and GhosttyKit routes without linux-preflight.
Centralized route validation
.github/workflows/ci.yml
ci-status depends directly on routed jobs and validates guard, GhosttyKit, web, and macOS routes and results.
Route validation test coverage
tests/test_ci_change_areas.py
Tests replace preflight and tests-gate helpers with ci-status helpers. They reject skipped routed jobs and allow skipped unrouted jobs.

Priority: ⬇️ Low

Estimated code review effort: 3 (Moderate) | ~25 minutes

Change: Refactor

Sequence Diagram(s)

sequenceDiagram
  participant CheapAggregates
  participant RoutedJobs
  participant macos
  participant ci-status
  CheapAggregates->>macos: provide aggregate results and route outputs
  macos->>macos: apply route-aware admission conditions
  RoutedJobs->>ci-status: provide routed job results
  macos->>ci-status: provide macOS result
  ci-status->>ci-status: validate routes and required results
Loading

Merge Risk: ⚪ Minimal · up to 58457

The change removes redundant CI rollups while preserving route-aware admission and validation, with coverage for routed and unrouted work. No merge-blocking production risk is identified.

🚥 Pre-merge checks | ✅ 24 | ❌ 1

❌ 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%. Docstring coverage is scoped to functions touched by this diff. Analyzed 18 functions across 1 files. (1 skipped: 1… Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (24 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Cmux Cloud Persistent Session And Early Input ✅ Passed PASS. The PR changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. The diff removes CI rollup jobs, changes macOS CI dependencies, and moves route checks into ci-status. It do…
Cmux Swift Actor Isolation ✅ Passed The reviewed range changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. It contains no Swift files or production Swift changes, so the Swift actor-isolation check is not applic…
Cmux Swift Blocking Runtime ✅ Passed The pull request changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. The authoritative diff contains no .swift paths and introduces no Swift blocking or timing APIs. The cus…
Cmux Browser Automation Off-Main ✅ Passed PASS. The pull request changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. The authoritative diff contains no browser.* commands, WebKit/AppKit waits, socket-worker routing,…
Cmux Expensive Synchronous Load ✅ Passed The reviewed range changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. It contains no production Swift changes and no added or moved agent-history load. The custom failure con…
Cmux Cache Substitution Correctness ✅ Passed The PR changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. It introduces no production Swift, TypeScript, or JavaScript changes, and the diff contains no cache substitution in…
Cmux No Hacky Sleeps ✅ Passed The PR changes only GitHub Actions workflow YAML and Python regression tests. The rule excludes workflow YAML and allows deterministic test scaffolding. The added diff contains no sleep, timer, pollin…
Cmux Algorithmic Complexity ✅ Passed The pull request changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. The production ci-status script scans fixed-size workflow data: six declared jobs, four guard routes, an…
Cmux Swift Concurrency ✅ Passed The pull request changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py; the authoritative diff contains no Swift files or Swift concurrency code. The added logic is GitHub Action…
Cmux Swift @Concurrent ✅ Passed The authoritative pull-request diff changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. It contains no Swift files, Swift functions, async isolation changes, or `@concurrent…
Cmux Swift Package Boundaries ✅ Passed PASS: The reviewed range changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. It contains no changed .swift files, Package.swift, SwiftPM target, or production Swift code. …
Cmux Swiftpm Lockfiles ✅ Passed The PR changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. The workflow diff changes CI job routing only; it does not change SwiftPM commands, package dependencies, Xcode pack…
Cmux Swift Logging ✅ Passed PASS: The review-scoped diff changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. It adds no Swift source or production logging. The added print references are in Python test…
Cmux User-Facing Error Privacy ✅ Passed PASS. The PR changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. New route and result diagnostics are emitted by the GitHub Actions ci-status step and are operator-only CI o…
Cmux Full Internationalization ✅ Passed PASS. The PR changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. These are operational CI logic and regression tests, which the rule explicitly allows. The diff adds no Swift …
Cmux Swiftui State Layout ✅ Passed PASS. The PR changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. The authoritative diff contains no Swift or SwiftUI code, so it introduces none of the listed state, layout, r…
Cmux Architecture Rethink ✅ Passed The pull request changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. It contains no Swift changes, so the Swift architectural rethink criteria do not apply.
Cmux Swift Auxiliary Window Close Shortcuts ✅ Passed The pull request changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. The authoritative diff contains no Swift changes and no standalone cmux-owned window changes. The auxiliar…
Cmux Source Artifacts ✅ Passed The PR changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py, both tracked source/config files. The diff adds CI routing logic and regression tests, and removes obsolete CI jobs.…
Cmux No Test Or Debug Seam In Production Source ✅ Passed PASS — The authoritative PR range changes only .github/workflows/ci.yml and tests/test_ci_change_areas.py. It changes no Swift file under a production Sources/ path, so it cannot introduce a pro…
Title check ✅ Passed The title clearly describes the main change: removing redundant CI caller rollup jobs.
Description check ✅ Passed The description is complete and covers the summary, rationale, behavior changes, testing, demo status, review trigger, and checklist. It also explains route and result semantics in sufficient detail.
Full details: Docstring Coverage

Explanation

Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 18 functions across 1 files. (1 skipped: 1 unsupported.)

  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 2
📝 Generate docstrings 💡
  • Commit to this branch
  • Create a new PR
🛠️ Fix failing CI checks 💡
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR

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.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@github-actions

Copy link
Copy Markdown
Contributor

All contributors have signed the CLA ✍️ ✅
Posted by the CLA Assistant Lite bot.

@teamleaderleo teamleaderleo changed the title ci: fold platform route checks into ci-status ci: remove redundant CI caller rollups Sep 22, 2026

Copy link
Copy Markdown
Collaborator Author

Superseded by #13578, rebuilt directly from current main. The replacement preserves the newer parallel macOS admission path and carries only the two-file caller-rollup cleanup.

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