test(eval): add review agent happy-path functional test - #125
Conversation
Adds eval/review/ with a single case (001-clean-approve) that creates a PR adding multiply/divide functions to a simple Python calc module. The PR is clean and well-tested — the review agent should approve it and produce a ready-for-merge label. Also extends eval/scripts/run-fullsend.sh to export PR_NUMBER and REPO_FULL_NAME for pull_request fixtures, which the review agent's pre-review.sh requires. Assisted-by: Claude claude-opus-4-6 <noreply@anthropic.com> Signed-off-by: Ralph Bean <rbean@redhat.com>
|
🤖 Finished Review · ✅ Success · Started 9:24 PM UTC · Completed 9:34 PM UTC |
PR Summary by QodoAdd happy-path functional eval for the review agent
AI Description
Diagram
High-Level Assessment
Files changed (7)
|
Code Review by Qodo
Context used✅ Compliance rules (platform):
55 rules 1.
|
ReviewChanges since prior reviewThe prior review (SHA FindingsLow
Verified
Previous runReviewVerdict: Approve Clean, well-structured addition of functional test infrastructure for the review agent. The What was reviewed
Changes since prior reviewThe prior review (SHA
ObservationsJudge naming inconsistency with triage eval ( The review eval names its required-labels judge Verified
Previous run (2)ReviewVerdict: Approve Clean, well-structured addition of functional test infrastructure for the review agent. The What was reviewed
Changes since prior reviewThe prior review (SHA
ObservationsExecution timeout has no setup/teardown buffer ( The execution timeout is No linked issue for non-trivial change This is a 366-line addition without a linked issue. The change is self-documenting test infrastructure from a MEMBER author that cleanly mirrors the established eval pattern, and the PR description clearly communicates the scope and intent. Verified
Previous runReviewVerdict: Approve Clean, well-structured addition of functional test infrastructure for the review agent. The What was reviewed
ObservationsExecution timeout has no setup/teardown buffer ( The execution timeout is CI workflow only runs triage evals ( The functional tests workflow hardcodes Verified
Previous run (3)ReviewVerdict: Approve Clean, well-structured addition of functional test infrastructure for the review agent. The What was reviewed
Changes since prior reviewThe prior review (SHA
ObservationsExecution timeout has no setup/teardown buffer ( The execution timeout is No linked issue for non-trivial change This is a 366-line addition without a linked issue. The change is self-documenting test infrastructure from a MEMBER author that cleanly mirrors the established eval pattern, and the PR description clearly communicates the scope and intent. Verified
Previous run (4)ReviewVerdict: Approve Clean, well-structured addition of functional test infrastructure for the review agent. The What was reviewed
ObservationsExecution timeout has no setup/teardown buffer ( The execution timeout is CI workflow only runs triage evals ( The functional tests workflow hardcodes Verified
|
The workflow was hardcoded to only run triage evals. Add a step to also run the review eval cases. Assisted-by: Claude claude-opus-4-6 <noreply@anthropic.com> Signed-off-by: Ralph Bean <rbean@redhat.com>
|
🤖 Finished Review · ✅ Success · Started 10:04 PM UTC · Completed 10:13 PM UTC |
waynesun09
left a comment
There was a problem hiding this comment.
One additional finding not covered by the existing review comments (the execution.timeout headroom issue on eval/review/eval.yaml:8 is already flagged there, so not repeated).
Increase case timeout from 1200s to 1500s to provide buffer for setup/teardown hooks beyond the 20-min agent timeout. Bump job timeout-minutes from 45 to 65 to account for the added review eval step. Assisted-by: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Ralph Bean <rbean@redhat.com>
|
🤖 Finished Review · ✅ Success · Started 10:59 AM UTC · Completed 11:09 AM UTC |
|
🤖 Finished Review · ✅ Success · Started 11:40 AM UTC · Completed 11:57 AM UTC |
|
Superseded by #148, which included all of this PR's content and merged. |
|
🤖 Finished Retro · ✅ Success · Started 12:07 AM UTC · Completed 12:14 AM UTC |
Retro: PR #125 — Retro agent blocked by invalid GH_TOKENThe retro agent for PR #125 was unable to perform any analysis because the Root cause: The token provisioning chain (workflow dispatch → OIDC mint → harness env injection) delivered an invalid token. The Token cost impact: The agent spent significant inference tokens trying multiple API access approaches ( Note: Because the token was invalid, I could not search for existing open issues to deduplicate proposals. The proposals below may overlap with existing issues. Proposals filed
|
Summary
eval/review/eval framework for the review agent, mirroring the existing triage eval structure001-clean-approve): a clean PR adding multiply/divide to a Python calc module — agent should approveeval/scripts/run-fullsend.shto exportPR_NUMBERandREPO_FULL_NAMEfor pull_request fixturesDetails
The test case creates an ephemeral GitHub repo with a simple Python calculator, opens a PR that adds well-tested
multiplyanddividefunctions, and verifies the review agent:ready-for-merge)Test plan
EVAL_ORG=halfsend ./eval/run-functional.sh review