Repository navigation
ci: extract reusable web workflow - #13382
Conversation
|
Understand this PR’s impact Explore downstream dependencies and potential security impact with Blast Radius. Warning Review limit reachedNext included review available in 23 minutes. View limit detailsLimit details: You’ve used all 10 included reviews currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Repository: manaflow-ai/cmux/.coderabbit.yaml Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (5)
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: manaflow-ai/cmux/.coderabbit.yaml Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (12)
Included review availability: Your plan provides up to 10 included reviews per hour; 1 remains after this review. 📝 WalkthroughWalkthroughThe change adds reusable guard and web workflows, routes them through aggregate jobs in ChangesCI workflow routing
Priority: ➖ Normal Estimated code review effort: 4 (Complex) | ~60 minutes Change: Refactor Sequence Diagram(s)sequenceDiagram
participant Changes as changes
participant CI as ci.yml
participant Guards as ci-guards.yml
participant Web as ci-web.yml
participant Preflight as linux-preflight
Changes->>CI: Produce guard and web route outputs
CI->>Guards: Pass linux guard inputs
CI->>Web: Pass web inputs
Guards->>Guards: Run selected guard jobs
Web->>Web: Run selected web jobs
Guards-->>CI: Return guards result
Web-->>CI: Return web result
CI->>Preflight: Validate aggregate results against routes
🚥 Pre-merge checks | ✅ 24 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (24 passed)
Full details: Docstring CoverageExplanation 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 42 functions across 9 files. (3 skipped: 3 unsupported.) ✨ Finishing Touches 💡 2📝 Generate docstrings 💡
⚔️ Resolve merge conflicts 💡
🧪 Generate unit tests (beta)
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. Comment |
|
This comment has been minimized.
This comment has been minimized.
Pull request was closed
f88bade to
edc5d20
Compare
|
All contributors have signed the CLA ✍️ ✅ |
Summary
Stacked on #13378.
Move the RFC-owned Linux web jobs out of
.github/workflows/ci.ymlinto reusable.github/workflows/ci-web.yml:web-typecheckreact-apps-checkdiff-sidecar-checkweb-db-migrationsagent-session-web-resourcesThis is a topology move. The job command bodies, runner labels, services, timeouts, and route meanings are preserved.
Caller behavior
ci.ymlnow has onewebreusable-workflow call. It receives the existingweb,macos, andagent_session_webroute outputs as strings.The call is skipped only when all three inputs are explicitly
false. Missing or malformed routes therefore enter the reusable workflow and fail closed.Inside
ci-web.yml,web-statusvalidates:web=truemacos=trueorweb=trueagent_session_web=trueThe caller's existing
linux-preflightvalidates the three route values again and requires the aggregatewebcall to succeed whenever any of them is true.Compatibility changes
testsnow observes the aggregatewebresult instead of the moved agent-session job directly. It already waits onlinux-preflight, so this does not add a new staging dependency.ci-statusobserves onewebresult instead of five internal jobs.ci-web.ymlwhen classifying Linux-only referenced tests, preserving existing test-only routing behavior after the file move.Regression coverage
The updated CI routing tests cover:
web,macos, andagent_session_webare all falseReview boundary
This PR does not move macOS jobs, change the declarative routing table, remove the existing rollups, touch persistent-Mac routing, change R2 artifact behavior, or repair app-host flakes.
Migration sequence: #13378 guard extraction → this web extraction → macOS extraction → declarative area table → rollup cleanup / single
ci-status→ final route/result/merge-group matrix.Refs #13095.
Summary by cubic
Moves the five Linux web CI jobs out of
ci.ymlinto a reusableci-web.ymlworkflow called once byci.yml, preserving the job bodies as-is.Behavior changes
web,macos, andagent_session_webroute outputs as inputs; riffraff/malformed values enter the workflow and fail closed, since the call only skips when all three are explicitlyfalse.web-statusvalidation job requires routed jobs to succeed while allowing unrouted jobs to skip.linux-preflightvalidates the three route values and requires the aggregatewebcall to succeed when any is true.testsandci-statusnow observe the aggregatewebresult instead of the individual jobs.ci-web.ymlas touching every owned web area and follow the moved jobs into the new file, preserving Linux-only test routing and DB behavior test coverage.Written for commit e0ec361. Summary will update on new commits.
Summary by CodeRabbit
New Features
Bug Fixes
Tests