Uh oh!
There was an error while loading. Please reload this page.
Allow long OpenCode reviews - #279
Conversation
There was a problem hiding this comment.
Pull request overview
This PR increases the allowed wall-clock time for the OpenCode PR review workflow to support large repositories by raising the job timeout to GitHub Actions’ 6-hour ceiling and extending the model-pool step/runtime budgets accordingly.
Changes:
- Increase the
opencode-review-targetjob timeout from 75 minutes to 360 minutes. - Increase the “Run OpenCode PR Review model pool” step timeout to 330 minutes and extend OpenCode runtime/retry budgets to 5 hours (
18000seconds). - Update the OpenCode workflow contract test to assert the new timeout values.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| tests/test_opencode_agent_contract.py | Updates workflow contract assertions to match the new OpenCode job/step/runtime timeout budgets. |
| .github/workflows/opencode-review.yml | Raises job/step timeouts and increases opencode run / retry-budget environment values to allow longer review runs. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Pull request overview
OpenCode reviewed the current-head evidence but found unresolved reviewer or review-agent threads before approval.
Findings
1. HIGH .github/workflows/opencode-review.yml:1 - Unresolved reviewer thread blocks automated approval
- Problem: OpenCode reached an APPROVE control result, but the approval step found unresolved, non-outdated human or review-agent thread evidence on the current pull request.
- Root cause: Reviewer and review-agent feedback can arrive after bounded model evidence is prepared, so the approval step must re-query GitHub immediately before publishing an approval.
- Fix: Address or resolve the listed reviewer thread(s), then re-run OpenCode on the current head.
- Regression test: Keep the approval gate querying reviewThreads(first: 100) after model output and before create_pull_review APPROVE, including bot review agents other than OpenCode itself.
Review thread evidence
Latest unresolved reviewer thread evidence
.github/workflows/opencode-review.yml line 2254
Latest reviewer comment: @copilot-pull-request-reviewer at 2026-07-01T09:31:44Z
Comment URL: #279 (comment)
Comment excerpt: The Strix quick-gate regression script still hard-codes the previous OpenCode model-pool timeout settings (e.g., it asserts 'OPENCODE_RUN_TIMEOUT_SECONDS: "600"' and 'OPENCODE_TOTAL_RETRY_BUDGET_SECONDS: "3600"'). With these workflow values changed to 18000, 'scripts/ci/test_strix_quick_gate.sh' will fail when Strix runs its self-tests, blocking required checks.
Result: REQUEST_CHANGES
Reason: unresolved reviewer or review-agent thread(s) were present before approval.
Head SHA:
5e2aee94ece7571f1b44a3dd9b40e3d751c58b05Workflow run: 28507529260
Workflow attempt: 1
Changed-File Evidence Map
flowchart LR
PR["PR changed files"] --> Evidence["OpenCode bounded evidence"]
Evidence --> S1["Workflow: opencode-review.yml"]
S1 --> I1["GitHub Actions review job"]
I1 --> R1["Review risk: Workflow: opencode-review.yml"]
R1 --> V1["actionlint plus required checks"]
Evidence --> S2["Test: test_opencode_agent_contract.py"]
S2 --> I2["regression suite"]
I2 --> R2["Review risk: Test: test_opencode_agent_contract.py"]
R2 --> V2["targeted test run"]
OpenCode Review Overview
Pull request overviewOpenCode reviewed the current-head evidence but found unresolved reviewer or review-agent threads before approval. Findings1. HIGH .github/workflows/opencode-review.yml:1 - Unresolved reviewer thread blocks automated approval
Review thread evidenceLatest unresolved reviewer thread evidence
|
There was a problem hiding this comment.
Pull request overview
OpenCode reviewed the current-head evidence but found unresolved reviewer or review-agent threads before approval.
Findings
1. HIGH .github/workflows/opencode-review.yml:1 - Unresolved reviewer thread blocks automated approval
- Problem: OpenCode reached an APPROVE control result, but the approval step found unresolved, non-outdated human or review-agent thread evidence on the current pull request.
- Root cause: Reviewer and review-agent feedback can arrive after bounded model evidence is prepared, so the approval step must re-query GitHub immediately before publishing an approval.
- Fix: Address or resolve the listed reviewer thread(s), then re-run OpenCode on the current head.
- Regression test: Keep the approval gate querying reviewThreads(first: 100) after model output and before create_pull_review APPROVE, including bot review agents other than OpenCode itself.
Review thread evidence
Latest unresolved reviewer thread evidence
.github/workflows/opencode-review.yml line 2254
Latest reviewer comment: @copilot-pull-request-reviewer at 2026-07-01T09:31:44Z
Comment URL: #279 (comment)
Comment excerpt: The Strix quick-gate regression script still hard-codes the previous OpenCode model-pool timeout settings (e.g., it asserts 'OPENCODE_RUN_TIMEOUT_SECONDS: "600"' and 'OPENCODE_TOTAL_RETRY_BUDGET_SECONDS: "3600"'). With these workflow values changed to 18000, 'scripts/ci/test_strix_quick_gate.sh' will fail when Strix runs its self-tests, blocking required checks.
Result: REQUEST_CHANGES
Reason: unresolved reviewer or review-agent thread(s) were present before approval.
Head SHA:
4ede35e2b0bc0fab81faeddf2a8fb76a18a53906Workflow run: 28511481675
Workflow attempt: 2
Changed-File Evidence Map
flowchart LR
PR["PR changed files"] --> Evidence["OpenCode bounded evidence"]
Evidence --> S1["Workflow: opencode-review.yml"]
S1 --> I1["GitHub Actions review job"]
I1 --> R1["Review risk: Workflow: opencode-review.yml"]
R1 --> V1["actionlint plus required checks"]
Evidence --> S2["CI script: test_strix_quick_gate.sh"]
S2 --> I2["review and security gate shell path"]
I2 --> R2["Review risk: CI script: test_strix_quick_gate.sh"]
R2 --> V2["bash -n plus Strix self-test"]
Evidence --> S3["Test: test_opencode_agent_contract.py"]
S3 --> I3["regression suite"]
I3 --> R3["Review risk: Test: test_opencode_agent_contract.py"]
R3 --> V3["targeted test run"]
seonghobae
commented
Jul 1, 2026
@copilot 고칩시다 |
해당 지적은 커밋 |
Reduce the OpenCode model-pool step timeout to 240m and its run/retry budget to 12600s so the approval gate's max wait (81*30s) fits within the 360m job cap, per PR review feedback. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01C2Mig78TxShv22uBcr7pCo
seonghobae
commented
Jul 8, 2026
Closing as superseded. This PR only retunes the OpenCode model-pool knobs ( |
Summary
opencode runa five-hour budget for large repositoriesVerification
py -3 -m pytest tests/test_opencode_agent_contract.py tests/test_opencode_workflow_shell_syntax.py tests/test_review_execution_contracts.py -qgit diff --check -- .github/workflows/opencode-review.yml tests/test_opencode_agent_contract.py