Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions assets/CONTEXT.md
Original file line number Diff line number Diff line change
Expand Up @@ -149,8 +149,9 @@ Where it says nothing, only a record on a PR whose author has write access count

Checkpoint the design across review rounds.
A review round is one `quest review` round, numbered within the branch's review session.
Every fourth round, stop before fixing more findings and reconsider the approach.
Report that judgment and what remains, recommending to continue, rethink the approach, merge as is, or drop the PR, and let the user decide.
Every third round, stop before fixing more findings and reconsider the approach.
Findings that keep coming usually mean the approach is wrong, not the last fix: brainstorm other designs that would avoid the whole class of findings, favoring simpler ones, and compare them with the current one.
Report the alternatives and what remains, recommending to continue, rethink the approach, merge as is, or drop the PR, and let the user decide; a background agent leaves this under `## Waiting` rather than deciding it.
Record each design change, including a rethink the user picks, in a PR comment that starts with `Design change:`, and start the next review with `quest review --new`, which restarts the count.

Fix every finding relevant to the PR in the PR: review findings you do not refute, gaps the change exposes, and bugs in the code it touches.
Expand Down
2 changes: 1 addition & 1 deletion src/runner/job.ts
Original file line number Diff line number Diff line change
Expand Up @@ -502,7 +502,7 @@ export class Attempt {
}
return {
passed: false,
note: `The runner's review of ${short} by ${by} found ${round.findings.length} finding${round.findings.length === 1 ? "" : "s"}.${recorded || " kix recorded it as a failing `quest review` check."} Fix each one or refute it with evidence the reviewer cannot rebut (a path:line, a command's output, or a recorded maintainer decision), then call \`deliver\` again with \`responses\` saying what you did for each. Follow the guide's review rules, including its design checkpoint every fourth round.\n\n${formatFindings(round.findings)}`,
note: `The runner's review of ${short} by ${by} found ${round.findings.length} finding${round.findings.length === 1 ? "" : "s"}.${recorded || " kix recorded it as a failing `quest review` check."} Fix each one or refute it with evidence the reviewer cannot rebut (a path:line, a command's output, or a recorded maintainer decision), then call \`deliver\` again with \`responses\` saying what you did for each. Follow the guide's review rules, including its design checkpoint every third round.\n\n${formatFindings(round.findings)}`,
};
}

Expand Down
2 changes: 1 addition & 1 deletion test/runner.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1053,7 +1053,7 @@ describe("prompts", () => {
expect(merge).toContain("Where the workflow says to run `quest wait`, call `wait`");
expect(merge).toContain("# The merge workflow");
// The skill's design checkpoint still reaches the maintainer.
expect(merge).toContain("Every fourth round");
expect(merge).toContain("Every third round");
});

test("carry earlier summaries and the latest answer", () => {
Expand Down
Loading