Skip to content

feat: treat pull: true as a default git pull - #773

Merged
EndBug merged 2 commits into
mainfrom
cursor/ad2d0796
Aug 14, 2026
Merged

EndBug merged 2 commits into
mainfrom
cursor/ad2d0796

Conversation

@EndBug

@EndBug EndBug commented Aug 14, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • Treat pull: true as a default git pull (no extra args), matching fetch/push. false or omit still skips pull; other strings remain git pull arguments.
  • Fixes support pull: true option #498: YAML true was previously passed through as git pull true. The " " workaround still does not work (inputs are trimmed); use pull: true instead.
  • Updates docs and adds unit/integration coverage, including dry-run logging without with: true.

Test plan

  • pull: true pulls remote commits, then commits local changes (does not run git pull true)
  • pull: false and omitted pull skip pull
  • pull: '--rebase --autostash' still pulls with those args
  • dry_run: true + pull: true logs Would pull from remote. and does not mutate the repo
  • npm test (unit + integration + lint) after npm run build

Made with Cursor

Summary by CodeRabbit

  • New Features

    • The pull option now supports default pulls, disabling pulls, or custom Git pull arguments.
    • Dry-run output clearly reports the selected pull behavior.
    • Retry documentation explains default pulling before retrying pushes.
  • Bug Fixes

    • Pull settings are interpreted consistently across standard and dry-run operations.
  • Tests

    • Added coverage for default, disabled, omitted, custom-argument, and dry-run pull behavior.

YAML true was passed through as git pull arguments, so pull: true ran `git pull true` instead of a default pull.

Co-authored-by: Cursor <cursoragent@cursor.com>
@coderabbitai

coderabbitai Bot commented Aug 14, 2026 •

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 24b12b37-6660-46b8-a7bf-0df643c53ee0

📥 Commits

Reviewing files that changed from the base of the PR and between 75a2238 and 8567cb0.

📒 Files selected for processing (7)
  • README.md
  • action.yml
  • lib/index.js
  • src/io.ts
  • src/main.ts
  • test/integration/action.test.ts
  • test/integration/helpers.ts

📝 Walkthrough

Walkthrough

Changes

Pull Input Support

Layer / File(s) Summary
Input parsing and contract
src/io.ts, test/io.test.ts, action.yml, README.md
pull, fetch, and push inputs use boolean values or Git argument strings. Documentation and parser tests cover the supported values.
Pull execution and dry-run handling
src/main.ts
Normal and dry-run flows support default pulls, disabled pulls, and explicit arguments. Boolean pulls become empty Git argument lists.
Remote pull integration coverage
test/integration/helpers.ts, test/integration/action.test.ts
Integration tests create remote commits and verify default, disabled, custom-argument, and dry-run pull behavior.

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

Sequence Diagram(s)

sequenceDiagram
  participant PullInput
  participant parseBoolOrGitArgs
  participant pullFromRemote
  participant Git
  PullInput->>parseBoolOrGitArgs: parse boolean or Git arguments
  parseBoolOrGitArgs->>pullFromRemote: return true or argument string
  pullFromRemote->>Git: run normalized pull arguments
Loading

Possibly related PRs

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 33.33% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main change: treating pull: true as a default git pull.
Linked Issues check ✅ Passed The implementation supports pull: true as a default git pull, while preserving false, omitted, and string argument behavior required by issue #498.
Out of Scope Changes check ✅ Passed The documentation, parser, runtime logic, fixtures, and tests all support the linked issue and stated pull behavior objectives.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch cursor/ad2d0796

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.

@EndBug
EndBug marked this pull request as ready for review August 14, 2026 21:02
@EndBug
EndBug enabled auto-merge (squash) August 14, 2026 21:09
Co-authored-by: Cursor <cursoragent@cursor.com>
@EndBug
EndBug merged commit f0d523c into main Aug 14, 2026
9 of 10 checks passed
@EndBug
EndBug deleted the cursor/ad2d0796 branch August 14, 2026 21:15
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.

support pull: true option

1 participant