Repository navigation
Codex: a recovered error event no longer fails the session #1343
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: advisory-review | ||
|
Check warning on line 1 in .github/workflows/review.yml
|
||
| # Advisory review runs on OPEN and on demand (label), not on every push — a | ||
| # session per push is the minutes burner. | ||
| # | ||
| # Wide first round, narrow convergence (docs/design/reviewer-infra.md): a | ||
| # single reviewer satisfices, so the FIRST round (opened/reopened) fans out | ||
| # three distinct-lens terra opinions and a summarizer posts the ONE merged | ||
| # round. Label-triggered rounds (the convergence loop) stay a single full- | ||
| # rubric session — the fix-review-fix tail is serial by nature. | ||
| on: | ||
| pull_request_target: | ||
| types: [opened, reopened, labeled] | ||
| permissions: | ||
| contents: read | ||
| pull-requests: write | ||
| jobs: | ||
| # --- wide first round: a general session + distinct lenses, emit-only --- | ||
| lens: | ||
| if: github.event.action != 'labeled' | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| # `general` (the full rubric, no lens) ALWAYS keeps its seat — the | ||
| # plain-bugs / unknown-unknowns catcher. The rest is THE era knob: | ||
| # pick lenses (from review.REVIEW_LENSES) to match what the current | ||
| # push is about — infra era: credentials/deployment/lifecycle; science | ||
| # era: swap toward measurement. coverage earns its seat by being the | ||
| # one class serial review never catches. | ||
| lens: [general, credentials, deployment, lifecycle, coverage, prose] | ||
| uses: outerloop-science/outerloop/.github/workflows/advisory-review-agent.yml@main | ||
| with: | ||
| bot_login: 'outerloop-science[bot]' | ||
| bot_aliases: 'outerloop-autoresearch[bot], agentic-learning-bot' | ||
| backend: hermes | ||
| # openai-direct: same token rate, no OpenRouter platform fee (the org's | ||
| # OpenAI account is tax-exempt); model id is provider-native | ||
| hermes_provider: openai | ||
| model: gpt-5.6-terra | ||
| # `general` is a real lens name meaning the full rubric (no empty-string | ||
| # ternary — its GitHub Actions form silently falls through to the else) | ||
| lens: ${{ matrix.lens }} | ||
| opinion_id: lens-${{ matrix.lens }} | ||
| post: false | ||
| secrets: | ||
| openai_reviewer_key: ${{ secrets.OPENAI_REVIEWER_KEY }} | ||
| summarize: | ||
| needs: lens | ||
| if: ${{ !cancelled() && github.event.action != 'labeled' }} | ||
| uses: outerloop-science/outerloop/.github/workflows/advisory-review-summarize.yml@main | ||
| with: | ||
| bot_login: 'outerloop-science[bot]' | ||
| bot_aliases: 'outerloop-autoresearch[bot], agentic-learning-bot' | ||
| backend: hermes | ||
| hermes_provider: openai | ||
| model: gpt-5.6-terra | ||
| opinion_label: terra | ||
| # keep in lockstep with the lens matrix above | ||
| expected_lenses: general credentials deployment lifecycle coverage prose | ||
| secrets: | ||
| openai_reviewer_key: ${{ secrets.OPENAI_REVIEWER_KEY }} | ||
| # --- convergence rounds: one full-rubric session, label-triggered --- | ||
| review: | ||
| if: github.event.action == 'labeled' && (github.event.label.name == 'outerloop:review' || github.event.label.name == 'autoresearch:review') | ||
| uses: outerloop-science/outerloop/.github/workflows/advisory-review-agent.yml@main | ||
| with: | ||
| bot_login: 'outerloop-science[bot]' | ||
| bot_aliases: 'outerloop-autoresearch[bot], agentic-learning-bot' | ||
| backend: hermes | ||
| hermes_provider: openai | ||
| model: gpt-5.6-terra | ||
| opinion_label: terra | ||
| secrets: | ||
| openai_reviewer_key: ${{ secrets.OPENAI_REVIEWER_KEY }} | ||