next-issue 1.0.1 → 1.0.2
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 +6 -6
- package/dist/git.mjs +2 -2
- package/dist/pipeline.mjs +3 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -63,12 +63,12 @@ For each open issue, oldest first:
|
|
|
63
63
|
merge queue, and then waits for the checks that the merge commit starts on
|
|
64
64
|
the base branch. A cancelled run there is no failure. When those checks
|
|
65
65
|
fail, the fixer gets their logs on a branch reset to the base branch, from
|
|
66
|
-
the check budget, and the harness
|
|
67
|
-
request that goes to step 6 again, with fresh review
|
|
68
|
-
issue waits for this, and a second ctrl-c stops only after
|
|
69
|
-
worktree, the local branch and the state file go away. Without
|
|
70
|
-
the remote branch stays. A problem that the reviewer leaves out
|
|
71
|
-
findings thus gets an approval: only the findings count.
|
|
66
|
+
the check budget, and the harness force-pushes the fix, reopens the issue
|
|
67
|
+
and opens a new pull request that goes to step 6 again, with fresh review
|
|
68
|
+
rounds. The next issue waits for this, and a second ctrl-c stops only after
|
|
69
|
+
it. The worktree, the local branch and the state file go away. Without
|
|
70
|
+
`--merge`, the remote branch stays. A problem that the reviewer leaves out
|
|
71
|
+
of the findings thus gets an approval: only the findings count.
|
|
72
72
|
11. With an open finding, run the fixer agent and go to step 6 again. The
|
|
73
73
|
budget is `maxReviewRounds`. A fixer that holds every finding to be wrong
|
|
74
74
|
changes nothing and gives its reason instead. The reason goes on the pull
|
package/dist/git.mjs
CHANGED
|
@@ -108,8 +108,8 @@ export async function discardChanges(cwd, target) {
|
|
|
108
108
|
await must("git", ["clean", "-fd"], { cwd });
|
|
109
109
|
return true;
|
|
110
110
|
}
|
|
111
|
-
export async function push(cwd, remote, branch) {
|
|
112
|
-
await must("git", ["push", "-u", remote, branch], { cwd });
|
|
111
|
+
export async function push(cwd, remote, branch, force = false) {
|
|
112
|
+
await must("git", ["push", "-u", ...(force ? ["--force"] : []), remote, branch], { cwd });
|
|
113
113
|
}
|
|
114
114
|
export async function resetToBase(cwd, base, remote) {
|
|
115
115
|
await must("git", ["fetch", remote, base], { cwd });
|
package/dist/pipeline.mjs
CHANGED
|
@@ -390,7 +390,7 @@ async function watchBase(job) {
|
|
|
390
390
|
await ports.resetToBase(worktree, context.base, config.remote);
|
|
391
391
|
const logs = await ports.failedBaseLogs(repo, sha, config.logMaxChars);
|
|
392
392
|
log.event("main-checks.logs", { chars: logs.length });
|
|
393
|
-
const fix = await fixRound(job, "The checks on main failed after the merge.", logs, [], "checks");
|
|
393
|
+
const fix = await fixRound(job, "The checks on main failed after the merge.", logs, [], "checks", true);
|
|
394
394
|
if (!fix.committed) {
|
|
395
395
|
const note = fix.unrelated;
|
|
396
396
|
await escalate(job, note === undefined
|
|
@@ -443,7 +443,7 @@ async function finish(job, outcome, reason) {
|
|
|
443
443
|
...(job.mainBroken && outcome !== "done" ? { halt: true } : {}),
|
|
444
444
|
};
|
|
445
445
|
}
|
|
446
|
-
async function fixRound(job, reason, detail, earlier, kind) {
|
|
446
|
+
async function fixRound(job, reason, detail, earlier, kind, force = false) {
|
|
447
447
|
const { context, issue, log, worktree, branch } = job;
|
|
448
448
|
const { ports } = context;
|
|
449
449
|
const before = await ports.revision(worktree);
|
|
@@ -466,7 +466,7 @@ async function fixRound(job, reason, detail, earlier, kind) {
|
|
|
466
466
|
log.event("commit.empty", { reason }, "quiet");
|
|
467
467
|
return { committed: false };
|
|
468
468
|
}
|
|
469
|
-
await ports.push(worktree, context.config.remote, branch);
|
|
469
|
+
await ports.push(worktree, context.config.remote, branch, force);
|
|
470
470
|
return { committed: true };
|
|
471
471
|
}
|
|
472
472
|
async function commitWork(job, before, subject, role) {
|