Skip to content
Closed
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
7 changes: 7 additions & 0 deletions .github/pr-review-prompt.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Review quality rules

- Before flagging a config, env var, or resource as missing, read the file that would contain it. If it stays unverifiable, file it under Unknowns at info severity, never as a blocker or major.
- Never write "confirmed" for a source you did not read. Cite what you fetched this run, or what the previous review's evidence section recorded. On a failed or empty fetch write "not verified" and list the gap under Unknowns.
- For version bumps spanning multiple releases, enumerate every release in the old-to-new range (releases or compare API), and flag when a chart bump moves the embedded appVersion across a major version.
- Translate upgrade steps written for docker-compose or .env files into their Kubernetes/Helm equivalent before flagging them as missing.
- Inline findings must require action. Never post praise as a finding.
28 changes: 10 additions & 18 deletions .github/workflows/agent-pr-review.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:
ref: ${{ github.event.pull_request.head.sha }}

- name: Run reviewer
uses: misospace/pr-reviewer-action@6f4fb724b222f6d9a83096d6b41cd636ef3a044e # v2.1.10
uses: misospace/pr-reviewer-action@99e7764a4906f94d99c249231d2016c3cda8997e # v2.2.0
with:
github_token: ${{ github.token }}
ai_base_url: http://litellm.ai.svc.cluster.local/v1
Expand Down Expand Up @@ -61,6 +61,8 @@ jobs:
inline_findings: "true"
inline_findings_max: "12"
publish_mode: review_comment
# concise patches the bundled default prompt, so it needs system_prompt_mode: append below.
review_verbosity: concise
system_prompt_mode: append
# v2.1.1 bundles the release-notes STYLE rules (no raw PR/issue/SHA links, summarize in
# prose, at most one URL) for renovate-ish PR kinds, so this addendum only steers FETCH
Expand All @@ -69,33 +71,23 @@ jobs:
# needed, use the authenticated gh_api tool — web_fetch of github.com HTML truncates to
# page boilerplate at the response cap and never yielded usable notes (validated in run
# logs). Projects that publish no GitHub releases (e.g. Ceph) return 404/empty from
# gh_api, so fall back to the project official release-notes documentation page. The
# trailing quality-rules paragraph distills a fleet audit of past reviews.
# gh_api, so fall back to the project official release-notes documentation page.
# v2.1.11 concatenates system_prompt_file then system_prompt (upstream #426).
system_prompt_file: .github/pr-review-prompt.md
system_prompt: >-
${{ contains(github.event.pull_request.body, '### Release Notes')
&& 'The PR body already contains upstream release notes from Renovate. Do not fetch
release notes externally. Summarize the embedded notes in a **Release notes** section
in review_markdown: user-visible changes, breaking changes, and security fixes.'
release notes externally; summarize the embedded notes.'
|| 'For dependency upgrade and Renovate PRs the body lacks upstream release notes.
Fetch them with the gh_api tool (api.github.com /repos/OWNER/REPO/releases JSON) first.
If that returns 404 or an empty list (the project does not publish GitHub releases,
e.g. Ceph), fall back to web_fetch of the project official release-notes documentation
page (e.g. docs.ceph.com/en/latest/releases/tentacle/#v20-2-3-tentacle) rather than
github.com HTML pages, which truncate to boilerplate. Large changelogs (Ceph lists
hundreds of backported PRs) exhaust the context budget if fetched whole: extract only
the target version section and its Notable Changes summary, then stop. Summarize in a
**Release notes** section in review_markdown: user-visible changes, breaking changes,
and security fixes.' }}
Review quality rules: Before flagging a config, env var, or resource as missing,
read the file that would contain it; if unverifiable, file it under Unknowns at
info severity, never as a blocker or major. Cite only sources fetched this run;
on a failed or empty fetch write "not verified" (never "confirmed") and list the
gap under Unknowns. For version bumps spanning multiple releases, enumerate every
release in the old-to-new range (releases or compare API) and flag when a chart
bump moves the embedded appVersion across a major version. Translate upgrade steps
written for docker-compose or .env files into their Kubernetes/Helm equivalent
before flagging them as missing. Keep review length proportional to the change.
Inline findings must require action; never post praise as a finding.
the target version section and its Notable Changes summary, then stop.' }}
Summarize them in a **Release notes** section in review_markdown: user-visible
changes, breaking changes, and security fixes.
# Engine hard cap is 126,848 tokens (KV pool); 131072 was over it -> HTTP 500 on
# max-packed reviews (validated). 120000 stays under the cap and trims cold-prefill time.
model_context_tokens: "120000"
Expand Down