description: "Loop the current branch through the 15-route Opus + Codex + Cursor review fleet until it meets the approval bar."
steps:
prepare:
agent:
harness: cursor
model: auto
prompt: |
Read this repository's code and the current branch's git history: the commits since
the branch diverged from the repository's default branch (main or master). Write or
update `PR-DESCRIPTION.md` at the repository root describing that change set as if
opening a pull request. Use exactly these level-two headings, in this order, with no
other headings: `## Summary`, `## What This Changes`, and `## Implementation Details`.
Put the big picture and concise bullets first, then explanatory prose, then notable
implementation details. Commit only that file with the message
`Prepare PR description.` Never create any additional PR-description section for
verification commands, expected results, or checklists; that evidence belongs in
committed tests, README, or another committed verification document. Put a one-line
summary in the `summary` result field.
output:
summary:
type: string
commits: true
initial_conventions_opus:
needs: prepare
agent:
harness: claude
model: claude-opus-4-8
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Review conventions, naming, structure, formatting, repository rules, and idioms.
Return at most three actionable comment paragraphs. Grade excellent, good, average,
or poor. Write `grade` as a string and `comments` as an array of strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
initial_conventions_terra:
needs: prepare
agent:
harness: codex
model: gpt-5.6-terra
effort: high
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Review conventions, naming, structure, formatting, repository rules, and idioms.
Return at most three actionable comment paragraphs. Grade excellent, good, average,
or poor. Write `grade` as a string and `comments` as an array of strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
initial_conventions_cursor:
needs: prepare
agent:
harness: cursor
model: auto
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Review conventions, naming, structure, formatting, repository rules, and idioms.
Return at most three actionable comment paragraphs. Grade excellent, good, average,
or poor. Write `grade` as a string and `comments` as an array of strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
initial_justification_opus:
needs: prepare
agent:
harness: claude
model: claude-opus-4-8
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Challenge scope, necessity, and complexity; require PR-DESCRIPTION.md to name the
user-facing capability.
Return at most three actionable comment paragraphs. Grade excellent, good, average,
or poor. Write `grade` as a string and `comments` as an array of strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
initial_justification_terra:
needs: prepare
agent:
harness: codex
model: gpt-5.6-terra
effort: high
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Challenge scope, necessity, and complexity; require PR-DESCRIPTION.md to name the
user-facing capability.
Return at most three actionable comment paragraphs. Grade excellent, good, average,
or poor. Write `grade` as a string and `comments` as an array of strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
initial_justification_cursor:
needs: prepare
agent:
harness: cursor
model: auto
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Challenge scope, necessity, and complexity; require PR-DESCRIPTION.md to name the
user-facing capability.
Return at most three actionable comment paragraphs. Grade excellent, good, average,
or poor. Write `grade` as a string and `comments` as an array of strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
initial_reviewability_opus:
needs: prepare
agent:
harness: claude
model: claude-opus-4-8
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Review PR-description clarity and ordering, commit coherence, and whether the change
should be re-sliced. PR-DESCRIPTION.md is a required pipeline artifact; assess its
presentation without suggesting its removal.
Return at most three actionable comment paragraphs. Grade excellent, good, average,
or poor. Write `grade` as a string and `comments` as an array of strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
initial_reviewability_terra:
needs: prepare
agent:
harness: codex
model: gpt-5.6-terra
effort: high
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Review PR-description clarity and ordering, commit coherence, and whether the change
should be re-sliced. PR-DESCRIPTION.md is a required pipeline artifact; assess its
presentation without suggesting its removal.
Return at most three actionable comment paragraphs. Grade excellent, good, average,
or poor. Write `grade` as a string and `comments` as an array of strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
initial_reviewability_cursor:
needs: prepare
agent:
harness: cursor
model: auto
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Review PR-description clarity and ordering, commit coherence, and whether the change
should be re-sliced. PR-DESCRIPTION.md is a required pipeline artifact; assess its
presentation without suggesting its removal.
Return at most three actionable comment paragraphs. Grade excellent, good, average,
or poor. Write `grade` as a string and `comments` as an array of strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
initial_sanity_opus:
needs: prepare
agent:
harness: claude
model: claude-opus-4-8
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Check only glaring performance, basic-security, and resource-leak problems.
Return at most three actionable comment paragraphs. Grade excellent, good, average,
or poor. Write `grade` as a string and `comments` as an array of strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
initial_sanity_terra:
needs: prepare
agent:
harness: codex
model: gpt-5.6-terra
effort: high
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Check only glaring performance, basic-security, and resource-leak problems.
Return at most three actionable comment paragraphs. Grade excellent, good, average,
or poor. Write `grade` as a string and `comments` as an array of strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
initial_sanity_cursor:
needs: initial_justification_cursor
agent:
harness: cursor
model: auto
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Check only glaring performance, basic-security, and resource-leak problems.
Return at most three actionable comment paragraphs. Grade excellent, good, average,
or poor. Write `grade` as a string and `comments` as an array of strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
initial_testing_opus:
needs: prepare
agent:
harness: claude
model: claude-opus-4-8
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Review test coverage, committed human-followable verification documentation, and
teardown. Keep verification evidence in tests, README, or a committed verification
document; PR-DESCRIPTION.md is change narrative only.
Return at most three actionable comment paragraphs. Grade excellent, good, average,
or poor. Write `grade` as a string and `comments` as an array of strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
initial_testing_terra:
needs: prepare
agent:
harness: codex
model: gpt-5.6-terra
effort: high
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Review test coverage, committed human-followable verification documentation, and
teardown. Keep verification evidence in tests, README, or a committed verification
document; PR-DESCRIPTION.md is change narrative only.
Return at most three actionable comment paragraphs. Grade excellent, good, average,
or poor. Write `grade` as a string and `comments` as an array of strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
initial_testing_cursor:
needs: initial_conventions_cursor
agent:
harness: cursor
model: auto
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Review test coverage, committed human-followable verification documentation, and
teardown. Keep verification evidence in tests, README, or a committed verification
document; PR-DESCRIPTION.md is change narrative only.
Return at most three actionable comment paragraphs. Grade excellent, good, average,
or poor. Write `grade` as a string and `comments` as an array of strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
decide:
needs: |-
initial_conventions_opus, initial_conventions_terra, initial_conventions_cursor,
initial_justification_opus, initial_justification_terra, initial_justification_cursor,
initial_reviewability_opus, initial_reviewability_terra, initial_reviewability_cursor,
initial_sanity_opus, initial_sanity_terra, initial_sanity_cursor,
initial_testing_opus, initial_testing_terra, initial_testing_cursor
inputs:
PREVIOUS_APPROVED: collect.approved
PREVIOUS_FEEDBACK: collect.feedback
INITIAL_CONVENTIONS_OPUS: initial_conventions_opus.grade
INITIAL_CONVENTIONS_OPUS_COMMENTS: initial_conventions_opus.comments
INITIAL_CONVENTIONS_TERRA: initial_conventions_terra.grade
INITIAL_CONVENTIONS_TERRA_COMMENTS: initial_conventions_terra.comments
INITIAL_CONVENTIONS_CURSOR: initial_conventions_cursor.grade
INITIAL_CONVENTIONS_CURSOR_COMMENTS: initial_conventions_cursor.comments
INITIAL_JUSTIFICATION_OPUS: initial_justification_opus.grade
INITIAL_JUSTIFICATION_OPUS_COMMENTS: initial_justification_opus.comments
INITIAL_JUSTIFICATION_TERRA: initial_justification_terra.grade
INITIAL_JUSTIFICATION_TERRA_COMMENTS: initial_justification_terra.comments
INITIAL_JUSTIFICATION_CURSOR: initial_justification_cursor.grade
INITIAL_JUSTIFICATION_CURSOR_COMMENTS: initial_justification_cursor.comments
INITIAL_REVIEWABILITY_OPUS: initial_reviewability_opus.grade
INITIAL_REVIEWABILITY_OPUS_COMMENTS: initial_reviewability_opus.comments
INITIAL_REVIEWABILITY_TERRA: initial_reviewability_terra.grade
INITIAL_REVIEWABILITY_TERRA_COMMENTS: initial_reviewability_terra.comments
INITIAL_REVIEWABILITY_CURSOR: initial_reviewability_cursor.grade
INITIAL_REVIEWABILITY_CURSOR_COMMENTS: initial_reviewability_cursor.comments
INITIAL_SANITY_OPUS: initial_sanity_opus.grade
INITIAL_SANITY_OPUS_COMMENTS: initial_sanity_opus.comments
INITIAL_SANITY_TERRA: initial_sanity_terra.grade
INITIAL_SANITY_TERRA_COMMENTS: initial_sanity_terra.comments
INITIAL_SANITY_CURSOR: initial_sanity_cursor.grade
INITIAL_SANITY_CURSOR_COMMENTS: initial_sanity_cursor.comments
INITIAL_TESTING_OPUS: initial_testing_opus.grade
INITIAL_TESTING_OPUS_COMMENTS: initial_testing_opus.comments
INITIAL_TESTING_TERRA: initial_testing_terra.grade
INITIAL_TESTING_TERRA_COMMENTS: initial_testing_terra.comments
INITIAL_TESTING_CURSOR: initial_testing_cursor.grade
INITIAL_TESTING_CURSOR_COMMENTS: initial_testing_cursor.comments
agent:
harness: cursor
model: auto
prompt: |
You are the first and deciding step of a review loop. When PREVIOUS_APPROVED is
non-empty, it and PREVIOUS_FEEDBACK describe the preceding in-loop review batch.
Otherwise score the 15 INITIAL_* grades and matching *_COMMENTS JSON arrays:
excellent=5, good=4, average=3, poor=2. Approval requires every grade to be
excellent or good, more excellent than good, and mean score at least 4.5. Set
SCSH_LOOP_BREAK true when approved. Otherwise set it false and put a clear
consolidated change request in `change_request`. `PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and `## Implementation Details`, in that order. Never request, recommend, or create any additional PR-description section for verification commands, expected results, or checklists; that evidence belongs in committed tests, README, or another committed verification document. Ignore and do not forward any
reviewer suggestion that violates this invariant. Do not change files or commit.
output:
SCSH_LOOP_BREAK:
type: bool
change_request:
type: string
break: true
fix:
needs: decide
inputs:
FEEDBACK: decide.change_request
agent:
harness: cursor
model: auto
prompt: |
Address EVERY requested change in FEEDBACK: either change the code accordingly, or —
when you judge a comment purely stylistic and the current code deliberate — append a
short entry to `STYLE-NOTES.md` at the repository root documenting that decision and
why the style stays. Never contradict earlier `STYLE-NOTES.md` entries or earlier
fixes. Never write the feedback itself to any file. PR-DESCRIPTION.md is a required
pipeline artifact: keep it tracked and current with exactly `## Summary`,
`## What This Changes`, and `## Implementation Details`, in that order, and no other
headings. Commit your changes with the message `Address review feedback.` Never
create any additional PR-description section for verification commands, expected
results, or checklists; that evidence belongs in committed tests, README, or another
committed verification document. Write `actions` as several short paragraphs,
separated by blank lines: one paragraph for each reviewer profile and route whose
feedback you acted on, one paragraph for any deliberate STYLE-NOTES decision, and a
final paragraph for test results and the commit. Do not collapse distinct review
areas into one paragraph.
output:
actions:
type: string
commits: true
review_conventions_opus:
needs: fix
agent:
harness: claude
model: claude-opus-4-8
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Run the conventions reviewer profile: examine naming, structure, formatting,
repository rules, and idiomatic consistency. Respect deliberate decisions in
`STYLE-NOTES.md`. Treat `PR-DESCRIPTION.md` as context but grade the code.
Return at most three concrete actionable comments, one paragraph each. Use `excellent`
for approve with praise, `good` for approve with nits, and `average` or `poor` only
when real work is needed. Write `grade` as a string and `comments` as an array of
strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
commits: false
review_conventions_terra:
needs: fix
agent:
harness: codex
model: gpt-5.6-terra
effort: high
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Run the conventions reviewer profile: examine naming, structure, formatting,
repository rules, and idiomatic consistency. Respect deliberate decisions in
`STYLE-NOTES.md`. Treat `PR-DESCRIPTION.md` as context but grade the code.
Return at most three concrete actionable comments, one paragraph each. Use `excellent`
for approve with praise, `good` for approve with nits, and `average` or `poor` only
when real work is needed. Write `grade` as a string and `comments` as an array of
strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
commits: false
review_conventions_cursor:
needs: fix
agent:
harness: cursor
model: auto
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Run the conventions reviewer profile: examine naming, structure, formatting,
repository rules, and idiomatic consistency. Respect deliberate decisions in
`STYLE-NOTES.md`. Treat `PR-DESCRIPTION.md` as context but grade the code.
Return at most three concrete actionable comments, one paragraph each. Use `excellent`
for approve with praise, `good` for approve with nits, and `average` or `poor` only
when real work is needed. Write `grade` as a string and `comments` as an array of
strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
commits: false
review_justification_opus:
needs: fix
agent:
harness: claude
model: claude-opus-4-8
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Run the justification reviewer profile: challenge scope and necessity, ask whether
the change earns its complexity, and require `PR-DESCRIPTION.md` to state the
user-facing capability. Respect ratified or deliberate decisions documented in the
repository.
Return at most three concrete actionable comments, one paragraph each. Use `excellent`
for approve with praise, `good` for approve with nits, and `average` or `poor` only
when real work is needed. Write `grade` as a string and `comments` as an array of
strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
commits: false
review_justification_terra:
needs: fix
agent:
harness: codex
model: gpt-5.6-terra
effort: high
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Run the justification reviewer profile: challenge scope and necessity, ask whether
the change earns its complexity, and require `PR-DESCRIPTION.md` to state the
user-facing capability. Respect ratified or deliberate decisions documented in the
repository.
Return at most three concrete actionable comments, one paragraph each. Use `excellent`
for approve with praise, `good` for approve with nits, and `average` or `poor` only
when real work is needed. Write `grade` as a string and `comments` as an array of
strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
commits: false
review_justification_cursor:
needs: fix
agent:
harness: cursor
model: auto
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Run the justification reviewer profile: challenge scope and necessity, ask whether
the change earns its complexity, and require `PR-DESCRIPTION.md` to state the
user-facing capability. Respect ratified or deliberate decisions documented in the
repository.
Return at most three concrete actionable comments, one paragraph each. Use `excellent`
for approve with praise, `good` for approve with nits, and `average` or `poor` only
when real work is needed. Write `grade` as a string and `comments` as an array of
strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
commits: false
review_reviewability_opus:
needs: fix
agent:
harness: claude
model: claude-opus-4-8
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Run the reviewability reviewer profile: assess whether `PR-DESCRIPTION.md` explains
the big picture before details, whether the commit history is coherent, and whether
the change should be re-sliced or split. PR-DESCRIPTION.md is a required pipeline
artifact; assess its presentation without suggesting its removal. Anchor findings
to commits and the PR, not individual code lines.
Return at most three concrete actionable comments, one paragraph each. Use `excellent`
for approve with praise, `good` for approve with nits, and `average` or `poor` only
when real work is needed. Write `grade` as a string and `comments` as an array of
strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
commits: false
review_reviewability_terra:
needs: fix
agent:
harness: codex
model: gpt-5.6-terra
effort: high
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Run the reviewability reviewer profile: assess whether `PR-DESCRIPTION.md` explains
the big picture before details, whether the commit history is coherent, and whether
the change should be re-sliced or split. PR-DESCRIPTION.md is a required pipeline
artifact; assess its presentation without suggesting its removal. Anchor findings
to commits and the PR, not individual code lines.
Return at most three concrete actionable comments, one paragraph each. Use `excellent`
for approve with praise, `good` for approve with nits, and `average` or `poor` only
when real work is needed. Write `grade` as a string and `comments` as an array of
strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
commits: false
review_reviewability_cursor:
needs: fix
agent:
harness: cursor
model: auto
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Run the reviewability reviewer profile: assess whether `PR-DESCRIPTION.md` explains
the big picture before details, whether the commit history is coherent, and whether
the change should be re-sliced or split. PR-DESCRIPTION.md is a required pipeline
artifact; assess its presentation without suggesting its removal. Anchor findings
to commits and the PR, not individual code lines.
Return at most three concrete actionable comments, one paragraph each. Use `excellent`
for approve with praise, `good` for approve with nits, and `average` or `poor` only
when real work is needed. Write `grade` as a string and `comments` as an array of
strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
commits: false
review_sanity_opus:
needs: fix
agent:
harness: claude
model: claude-opus-4-8
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Run the deliberately shallow sanity reviewer profile. Flag only glaring performance,
basic-security, or resource-leak problems; stay quiet when nothing is obviously
wrong.
Return at most three concrete actionable comments, one paragraph each. Use `excellent`
for approve with praise, `good` for approve with nits, and `average` or `poor` only
when real work is needed. Write `grade` as a string and `comments` as an array of
strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
commits: false
review_sanity_terra:
needs: fix
agent:
harness: codex
model: gpt-5.6-terra
effort: high
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Run the deliberately shallow sanity reviewer profile. Flag only glaring performance,
basic-security, or resource-leak problems; stay quiet when nothing is obviously
wrong.
Return at most three concrete actionable comments, one paragraph each. Use `excellent`
for approve with praise, `good` for approve with nits, and `average` or `poor` only
when real work is needed. Write `grade` as a string and `comments` as an array of
strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
commits: false
review_sanity_cursor:
needs: review_justification_cursor
agent:
harness: cursor
model: auto
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Run the deliberately shallow sanity reviewer profile. Flag only glaring performance,
basic-security, or resource-leak problems; stay quiet when nothing is obviously
wrong.
Return at most three concrete actionable comments, one paragraph each. Use `excellent`
for approve with praise, `good` for approve with nits, and `average` or `poor` only
when real work is needed. Write `grade` as a string and `comments` as an array of
strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
commits: false
review_testing_opus:
needs: fix
agent:
harness: claude
model: claude-opus-4-8
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Run the testing reviewer profile: check whether changed behavior has runnable unit
tests or a committed human-followable verification document, whether those
instructions are sufficient, and whether tooling tears down without leaking
resources. Keep verification evidence in tests, README, or a committed verification
document; PR-DESCRIPTION.md is change narrative only.
Return at most three concrete actionable comments, one paragraph each. Use `excellent`
for approve with praise, `good` for approve with nits, and `average` or `poor` only
when real work is needed. Write `grade` as a string and `comments` as an array of
strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
commits: false
review_testing_terra:
needs: fix
agent:
harness: codex
model: gpt-5.6-terra
effort: high
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Run the testing reviewer profile: check whether changed behavior has runnable unit
tests or a committed human-followable verification document, whether those
instructions are sufficient, and whether tooling tears down without leaking
resources. Keep verification evidence in tests, README, or a committed verification
document; PR-DESCRIPTION.md is change narrative only.
Return at most three concrete actionable comments, one paragraph each. Use `excellent`
for approve with praise, `good` for approve with nits, and `average` or `poor` only
when real work is needed. Write `grade` as a string and `comments` as an array of
strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
commits: false
review_testing_cursor:
needs: review_conventions_cursor
agent:
harness: cursor
model: auto
prompt: |
Review THIS BRANCH'S change set: the commits since the current branch diverged from
the repository's default branch (main or master). Enumerate them with git and diff
against that base; grade only what this branch changes.
Run the testing reviewer profile: check whether changed behavior has runnable unit
tests or a committed human-followable verification document, whether those
instructions are sufficient, and whether tooling tears down without leaking
resources. Keep verification evidence in tests, README, or a committed verification
document; PR-DESCRIPTION.md is change narrative only.
Return at most three concrete actionable comments, one paragraph each. Use `excellent`
for approve with praise, `good` for approve with nits, and `average` or `poor` only
when real work is needed. Write `grade` as a string and `comments` as an array of
strings.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and
`## Implementation Details`, in that order. Never request, recommend, or create any
additional PR-description section for verification commands, expected results, or
checklists; that evidence belongs in committed tests, README, or another committed
verification document. Do not change files or commit.
output:
grade:
type: enum
choices: excellent, good, average, poor
comments:
type: string_list
commits: false
collect:
needs: |-
review_conventions_opus, review_conventions_terra, review_conventions_cursor,
review_justification_opus, review_justification_terra, review_justification_cursor,
review_reviewability_opus, review_reviewability_terra, review_reviewability_cursor,
review_sanity_opus, review_sanity_terra, review_sanity_cursor,
review_testing_opus, review_testing_terra, review_testing_cursor
do-while: decide
agent:
harness: cursor
model: auto
inputs:
GRADE_CONVENTIONS_OPUS: review_conventions_opus.grade
COMMENTS_CONVENTIONS_OPUS: review_conventions_opus.comments
GRADE_CONVENTIONS_TERRA: review_conventions_terra.grade
COMMENTS_CONVENTIONS_TERRA: review_conventions_terra.comments
GRADE_CONVENTIONS_CURSOR: review_conventions_cursor.grade
COMMENTS_CONVENTIONS_CURSOR: review_conventions_cursor.comments
GRADE_JUSTIFICATION_OPUS: review_justification_opus.grade
COMMENTS_JUSTIFICATION_OPUS: review_justification_opus.comments
GRADE_JUSTIFICATION_TERRA: review_justification_terra.grade
COMMENTS_JUSTIFICATION_TERRA: review_justification_terra.comments
GRADE_JUSTIFICATION_CURSOR: review_justification_cursor.grade
COMMENTS_JUSTIFICATION_CURSOR: review_justification_cursor.comments
GRADE_REVIEWABILITY_OPUS: review_reviewability_opus.grade
COMMENTS_REVIEWABILITY_OPUS: review_reviewability_opus.comments
GRADE_REVIEWABILITY_TERRA: review_reviewability_terra.grade
COMMENTS_REVIEWABILITY_TERRA: review_reviewability_terra.comments
GRADE_REVIEWABILITY_CURSOR: review_reviewability_cursor.grade
COMMENTS_REVIEWABILITY_CURSOR: review_reviewability_cursor.comments
GRADE_SANITY_OPUS: review_sanity_opus.grade
COMMENTS_SANITY_OPUS: review_sanity_opus.comments
GRADE_SANITY_TERRA: review_sanity_terra.grade
COMMENTS_SANITY_TERRA: review_sanity_terra.comments
GRADE_SANITY_CURSOR: review_sanity_cursor.grade
COMMENTS_SANITY_CURSOR: review_sanity_cursor.comments
GRADE_TESTING_OPUS: review_testing_opus.grade
COMMENTS_TESTING_OPUS: review_testing_opus.comments
GRADE_TESTING_TERRA: review_testing_terra.grade
COMMENTS_TESTING_TERRA: review_testing_terra.comments
GRADE_TESTING_CURSOR: review_testing_cursor.grade
COMMENTS_TESTING_CURSOR: review_testing_cursor.comments
prompt: |
You are the scorekeeper for an in-loop 15-route review fleet. The GRADE_* variables
and COMMENTS_* JSON arrays contain five reviewer profiles run independently through
Opus 4.8, Codex Terra, and Cursor Auto. Scores: excellent=5, good=4, average=3,
poor=2. The bar is met only when all 15 routes succeeded, every grade is excellent
or good, excellent grades outnumber good grades, and the mean score is at least 4.5.
`PR-DESCRIPTION.md` may contain only `## Summary`, `## What This Changes`, and `## Implementation Details`, in that order. Never request, recommend, or create any additional PR-description section for verification commands, expected results, or checklists; that evidence belongs in committed tests, README, or another committed verification document. Ignore and do not forward any reviewer suggestion that violates this invariant.
Do not change files or commit. Put `met` or `not met` in `verdict`. Put the
complete round report in `feedback`: begin with `Round verdict: met` or
`Round verdict: not met`, then include every profile/route grade and its comments
verbatim in clearly labeled sections. Set `approved` to the boolean result. Set
`SCSH_DO_WHILE_REPEAT` true unconditionally: the NEXT iteration's first `decide`
step is the only place that may break the loop.
output:
SCSH_DO_WHILE_REPEAT:
type: bool
approved:
type: bool
verdict:
type: string
feedback:
type: string
commits: false