Repository navigation
ci: reduce required scope checkout transfer - #7894
Conversation
|
🚅 Deployed to the ironclaw-pr-7894 environment in ironclaw-ci-preview
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (3)
Included review availability: Your plan provides up to 10 included reviews per hour; 9 remain after this review. 📝 WalkthroughSummary by CodeRabbit
WalkthroughCI workflows now use blobless checkouts and event-specific fetch depth. Pull-request ancestry remains available for three-dot scope diffs. A contract test verifies these checkout settings. ChangesCI checkout efficiency
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This PR reduces CI checkout transfer while preserving existing scope-selection behavior and three-dot diff semantics; no actionable merge-blocking risk remains beyond normal checks and review. Suggested reviewers: 🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 passed)
Full details: Title checkExplanation The title clearly describes the CI checkout-transfer optimization and uses the Conventional Commits Full details: Description checkExplanation The description is complete and directly matches the workflow and contract-test changes. It covers the required summary, change type, issue, validation, test strategy, security, trust boundary, database impact, blast radius, rollback, review follow-through, and review track. 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 |
Review · Status🟩 CompletedIronLoop completed the review and posted it to GitHub. ResultRun detailsAutomatic trigger · attempt 1 of 3 · completed in 5m 52s |
|
First-run measurement (PR event, commit b251075):
This is a meaningful contraction from the recently observed ~1.1–6.0m scope range, with three-dot diff selection preserved. It proves the PR-event slice on this CI-only diff. We still need the merge-group run—and later a representative Rust PR—to assess queue predictability and the broader p90 target. |
There was a problem hiding this comment.
Review · Summary
🟢 No actionable findings
No actionable issues found in the checkout-transfer changes.
Validation
- ✅ Scope checkout contract — The focused contract test passed for blobless checkout and PR ancestry settings.
- ✅ Reborn planner contracts — The planner contract suite passed (92 tests).
- ✅ Workflow contracts — The workflow contract checker and its 156-test suite passed.
- ✅ Workflow YAML — Both changed workflow files parsed successfully.
Review details
- Run:
b65691ed-c1d8-412d-82ae-4b357fdc06b5 - Attempts: 1
lloydmak99
left a comment
There was a problem hiding this comment.
The checkout changes preserve full ancestry where PR scope detection needs it and use shallow checkout only for events that build the exhaustive plan. No blocking issues found.
Checks: 92 planner tests, 156 workflow contract tests, focused checkout-scope test, YAML parsing for both workflows, and git diff --check all passed.
Co-authored-by: Henry Park <16583448+henrypark133@users.noreply.github.com>
Summary
Tests (Reborn)events that always build the exhaustive plan and never inspect a diff.Change Type
Linked Issue
Related #7799. This is the smaller replacement experiment after closing the nextest/matrix approach in #7817.
Validation
pr-shepherdwas run before requesting reviewTest Strategy
User behavior: PR and merge-queue lane selection is unchanged; scope checkout should become faster and less variable.
Risk areas:
Tests added or updated:
test_scope_checkouts_minimize_transfer_without_losing_pr_ancestryWhat the tests prove: both required scope jobs use blobless partial clone, the Tests planner uses depth 1 only outside pull requests, and both jobs retain their three-dot diff.
Commands run:
Security Impact
None. Repository permissions and
persist-credentials: falseare unchanged.Reborn Trust-Boundary Checklist
N/A: CI checkout transfer only; no product trust boundary changes.
Database Impact
None.
Blast Radius
The
changesjobs in the two required workflows. A checkout implementation incompatibility would fail scope detection before any test or lint matrix runs; no check is silently skipped.Compatibility:
actions/checkoutv6 supports thefilterinput. Pull requests and Code Style merge-group runs retainfetch-depth: 0, so merge-base ancestry and base-lockfile reads remain available. Non-PR Tests events already select the exhaustive plan and do not read diff history.Measurement: compare checkout and total
changesduration on this PR and its merge-group run against the recent observed 1.1–6.0 minute scope range. This slice is successful if selection stays identical and checkout variance materially contracts; it is not claimed by itself to deliver the complete sub-10-minute CI target.Rollback Plan
Revert this commit. That restores
fetch-depth: 0without partial clone in both scope jobs. Because the change is confined to checkout inputs and fails before lane fan-out, rollback requires no data migration or compatibility window.Review Follow-Through
Please require two approvals for this Track C workflow change. After PR CI, record the scope-job checkout timings before considering the next runner-capacity slice.
Review track: C