Repository navigation
Conversation
PanelVariants runs every panelist lens once per variant, so variants sol and opus give six panelists. RoleProviders joins RoleModels and RoleEfforts, and all three resolve the most specific key first: the pass role, then its variant, then its lens. The coordinator prompt now names the actual roster and expects same-lens overlap when variants are set. The ReviewBench adapter reads RB_CONFIG_PANEL_VARIANTS and RB_CONFIG_ROLE_PROVIDERS, and sends OpenAI passes to the Responses API: Goose routes models it does not recognize, such as gpt-6.1-sol, to Chat Completions, where they cannot call tools.
…oordinator wrap-up RB_CONFIG_TIME_LIMIT, in seconds, names the per-PR limit granted in the manifest. Every stage scales with it; without it the budget is the 15-minute default as before. A coordinator reconciling six panelists often ran out of time and then ran out again writing its drop list in the wrap-up turn, failing the pull request. On a time-up wrap-up the coordinator now returns an empty dropped_candidates array.
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Lets one review run each lens with more than one model, and with different providers, and makes
gpt-6.1-solusable through OpenAI's API.Six-panelist panels.
Config.PanelVariantsruns every panelist lens once per named variant. Withsol,opus, the review runs six panelists, for examplesecurity_contracts.solandsecurity_contracts.opus. Each panelist reports a name with its variant, such as "Security & Trust Boundaries (opus)". The coordinator prompt now lists the actual roster instead of hard-coding three panelists, and when variants are set it expects panelists that share a lens to report overlapping candidates. Without variants, the panel is the same three lenses as before.Per-pass providers.
Config.RoleProvidersjoinsRoleModelsandRoleEfforts, so the coordinator, the judge, and each panelist can use a different Goose provider. All three settings resolve from most to least specific: the pass role, then its variant, then its lens. For example,opus=anthropiccovers all three Opus panelists, andsecurity_contracts.opus=…overrides just one of them. The CLI adds--panel-variantsand--role-providers, and the ReviewBench adapter addsRB_CONFIG_PANEL_VARIANTSandRB_CONFIG_ROLE_PROVIDERS.Responses API for OpenAI. Goose 1.43 sends models it doesn't recognize,
gpt-6.1-solamong them, to Chat Completions, which doesn't support tool calls for those models. When any pass uses theopenaiprovider, the ReviewBench adapter setsOPENAI_BASE_PATH=v1/responsesunless the caller set one. Against a local server, Goose then sentgpt-6.1-solwith its tools to/v1/responsesinstead of/v1/chat/completions.Time limit.
RB_CONFIG_TIME_LIMIT, in seconds and at least 900, names the per-PR limit granted in the ReviewBench manifest. Every stage scales from it. Without it, the budget is the 15-minute default as before.Shorter coordinator wrap-up. A coordinator reconciling six panelists sometimes ran out of time, then ran out again while writing its long drop list in the wrap-up turn, which failed the pull request. On a time-up wrap-up, the coordinator now returns an empty
dropped_candidatesarray.Verification.
go vetandgo testpass. The default three-panelist coordinator prompt renders the same roster as before.review reviewbenchend to end against a fakegooseproduced six panelists: three onopenai/gpt-6.1-soland three onanthropic/claude-opus-5-5. Every call had the Responses base path set.RB_CONFIG_TIME_LIMITwas checked by hand: unset gives 15m,1800gives 30m, and600orabcare rejected.