@neriros/ralphy 2.21.0 → 2.21.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -7
- package/dist/cli/index.js +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -148,6 +148,7 @@ Linear is the source of truth for which issues Ralph has touched. The `linear.in
|
|
|
148
148
|
| `getInProgress` | `{filter: Marker[]}` | Issues to resume after restart |
|
|
149
149
|
| `getConflicted` | `{filter: Marker[]}` | Issues whose PR is conflicted (re-fix run) |
|
|
150
150
|
| `getReview` | `{filter: Marker[]}` | Done issues flagged for review follow-up |
|
|
151
|
+
| `getAutoMerge` | `{filter: Marker[]}` | Issues whose PR should be auto-merged once required checks pass |
|
|
151
152
|
| `setInProgress` | `Marker` or `{apply: Marker[]}` | Applied when a worker spawns (any non-resume mode) |
|
|
152
153
|
| `setDone` | `Marker` or `{apply: Marker[]}` | Applied on clean exit |
|
|
153
154
|
| `setError` | `Marker` or `{apply: Marker[]}` | Applied on non-zero exit (quarantine signal — issue is _not_ auto-resumed) |
|
|
@@ -167,6 +168,7 @@ Example `ralphy.config.json`:
|
|
|
167
168
|
"model": "opus",
|
|
168
169
|
"useWorktree": true,
|
|
169
170
|
"createPrOnSuccess": true,
|
|
171
|
+
"autoMergeStrategy": "squash",
|
|
170
172
|
"fixCiOnFailure": true,
|
|
171
173
|
"linear": {
|
|
172
174
|
"team": "ENG",
|
|
@@ -182,6 +184,7 @@ Example `ralphy.config.json`:
|
|
|
182
184
|
"getInProgress": { "filter": [{ "type": "status", "value": "In Progress" }] },
|
|
183
185
|
"getConflicted": { "filter": [{ "type": "label", "value": "ralph:conflicted" }] },
|
|
184
186
|
"getReview": { "filter": [{ "type": "label", "value": "ralph:review" }] },
|
|
187
|
+
"getAutoMerge": { "filter": [{ "type": "label", "value": "ralph:auto-merge" }] },
|
|
185
188
|
"setInProgress": { "type": "status", "value": "In Progress" },
|
|
186
189
|
"setDone": {
|
|
187
190
|
"apply": [
|
|
@@ -225,13 +228,14 @@ Done issues whose PR `gh pr view --json mergeable` reports as `CONFLICTING` get
|
|
|
225
228
|
|
|
226
229
|
### PR + CI integration
|
|
227
230
|
|
|
228
|
-
| Flag / config | Behavior
|
|
229
|
-
| ------------------------------------- |
|
|
230
|
-
| `createPrOnSuccess` / `--create-pr` | After a clean exit, push the worker's branch and `gh pr create`. Title: `<ID>: <title>`. Idempotent — surfaces the existing URL if the PR is already open. Requires `--worktree` and `gh` authenticated. `prBaseBranch` defaults to `main
|
|
231
|
-
| `
|
|
232
|
-
| `
|
|
233
|
-
| `
|
|
234
|
-
| `
|
|
231
|
+
| Flag / config | Behavior |
|
|
232
|
+
| ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
233
|
+
| `createPrOnSuccess` / `--create-pr` | After a clean exit, push the worker's branch and `gh pr create`. Title: `<ID>: <title>`. Idempotent — surfaces the existing URL if the PR is already open. Requires `--worktree` and `gh` authenticated. `prBaseBranch` defaults to `main`; override per-issue by labelling the Linear issue with `ralph:branch:<branch-name>`. |
|
|
234
|
+
| `getAutoMerge` indicator | Opt an issue in for GitHub auto-merge (any-of label/status filter, same shape as `getReview`). When matched, Ralph runs `gh pr merge <url> --auto --<strategy>` right after opening the PR so GitHub merges as soon as required checks pass. Strategy comes from `autoMergeStrategy` (`squash` \| `merge` \| `rebase`, default `squash`). Failures are logged but non-fatal — the CI/conflict watch loop continues. |
|
|
235
|
+
| `fixCiOnFailure` / `--fix-ci` | After the PR opens, poll `gh pr checks`. On failure, pull failed logs via `gh run view --log-failed`, append them to `## Steering`, re-spawn the worker, and push the new commits — repeat until green or `maxCiFixAttempts` (default `5`) is hit. While this loop runs, `setDone` is **not** applied; if CI is never green the worker is treated as failed. |
|
|
236
|
+
| `ciPollIntervalSeconds` | Seconds between CI status polls (default `30`). |
|
|
237
|
+
| `ignoreCiChecks` | Array of check names to ignore when computing pass/fail. |
|
|
238
|
+
| `codeReviewTrigger` / `--code-review` | See [Code-review iteration](#code-review-iteration). |
|
|
235
239
|
|
|
236
240
|
### Worktrees, setup, teardown
|
|
237
241
|
|
package/dist/cli/index.js
CHANGED
|
@@ -35029,8 +35029,8 @@ import { readFileSync as readFileSync2 } from "fs";
|
|
|
35029
35029
|
import { resolve } from "path";
|
|
35030
35030
|
function getVersion() {
|
|
35031
35031
|
try {
|
|
35032
|
-
if ("2.21.
|
|
35033
|
-
return "2.21.
|
|
35032
|
+
if ("2.21.1")
|
|
35033
|
+
return "2.21.1";
|
|
35034
35034
|
} catch {}
|
|
35035
35035
|
const dirsToTry = [];
|
|
35036
35036
|
try {
|