-
Notifications
You must be signed in to change notification settings - Fork 0
superseded by #1263: make Azure and cross-provider fallbacks executable #1213
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
seonghobae
wants to merge
32
commits into
fix/organization-loop-oidc-fallback
from
fix/strix-baseline-provider-exhaustion
Closed
Changes from all commits
Commits
Show all changes
32 commits
Select commit
Hold shift + click to select a range
5dbf903
fix: separate Strix baseline provider exhaustion
seonghobae d065e69
fix(strix): neutralize empty Caido bootstrap outages
seonghobae b9dd912
Merge branch 'main' into fix/strix-baseline-provider-exhaustion
seonghobae 6b03822
Merge latest main into Strix provider fallback branch
seonghobae 7179abb
fix(strix): preserve primary-only baseline result
seonghobae 94eafa4
refactor(strix): remove obsolete fallback probe
seonghobae 51a4aa7
fix(strix): fallback on unsupported sampling defaults
seonghobae b1ab66f
Merge remote-tracking branch 'origin/main' into fix/strix-baseline-pr…
seonghobae d1a5a1e
Merge remote-tracking branch 'origin/main' into fix/strix-baseline-pr…
seonghobae 8646703
Merge current main into Strix provider exhaustion fix
seonghobae a3b149b
fix(strix): align manifest finding decisions
seonghobae 97e283e
Merge branch 'main' into fix/strix-baseline-provider-exhaustion
opencode-agent[bot] d3246d0
Merge branch 'main' into fix/strix-baseline-provider-exhaustion
opencode-agent[bot] 60f5150
docs(strix): clarify provider exhaustion exits
seonghobae 3205c3e
merge: reconcile Strix provider failure signals
seonghobae 4452244
Merge remote-tracking branch 'origin/main' into HEAD
seonghobae 8063b7b
Merge branch 'main' into fix/strix-baseline-provider-exhaustion
opencode-agent[bot] 99ed4ce
Merge branch 'main' into fix/strix-baseline-provider-exhaustion
opencode-agent[bot] f915928
Merge branch 'main' into fix/strix-baseline-provider-exhaustion
opencode-agent[bot] d006293
Merge remote-tracking branch 'refs/remotes/origin/main' into HEAD
seonghobae 94db1b8
Merge remote-tracking branch 'refs/remotes/origin/fix/organization-lo…
seonghobae 83c2944
Merge parent and repair Azure sampling fallback routing
seonghobae 6f6e507
Merge remote-tracking branch 'origin/fix/organization-loop-oidc-fallb…
seonghobae a675dac
fix(strix): accept clean fallback model advisory
seonghobae 32543e0
fix(strix): accept clean HF advisory
seonghobae 86408ba
docs(strix): record clean fallback advisories
seonghobae 9dcd1d6
fix(strix): preserve fail-closed warning scan
seonghobae 3868a21
fix(strix): isolate cross-provider OpenAI fallback transport
seonghobae 6493023
Merge remote-tracking branch 'origin/fix/strix-baseline-provider-exha…
seonghobae 5edaf36
fix(strix): bound clean advisory filtering
seonghobae 5ab5834
fix(strix): normalize the fallback model before dispatch, not just cr…
seonghobae 8d0f7ca
fix(strix): ignore exact optional web search advisory
seonghobae File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
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
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
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,67 @@ | ||
| # Strix unsupported sampling-parameter fallback | ||
|
|
||
| ## Observed failure | ||
|
|
||
| An Azure `gpt-5.6-sol` Strix run failed before vulnerability analysis because | ||
| LiteLLM sent `temperature=0.2`. Azure accepts only the model default of `1`, | ||
| and LiteLLM had no fallback group for the selected model. Microsoft documents | ||
| `temperature` as unsupported for GPT-5 reasoning models (Microsoft, 2026), | ||
| while the pinned Strix configuration surface exposes no generation-parameter | ||
| control (usestrix, n.d.). | ||
|
|
||
| ## Root cause and repair | ||
|
|
||
| The preferred request-boundary repair is to omit a sampling parameter that a | ||
| caller did not explicitly provide. `contextual-orchestrator` owns that provider | ||
| boundary for organization software. The pinned Strix integration cannot yet | ||
| express the omission through its documented configuration, so the trusted | ||
| quick gate recognizes only one physical error line containing all of these | ||
| signals: | ||
|
|
||
| - a LiteLLM `BadRequestError`; | ||
| - Azure or OpenAI exception context; | ||
| - the unsupported `temperature` value and supported default; and | ||
| - the missing LiteLLM fallback model group. | ||
|
|
||
| That exact capability failure is infrastructure evidence and may move directly | ||
| to an already-configured distinct outer fallback. It is not eligible for a | ||
| same-model retry. The shared model normalizer also translates the workflow's | ||
| human-readable `openai-direct/` selector into LiteLLM's `openai_direct/` | ||
| provider prefix before dispatch. A cross-provider direct OpenAI fallback reads | ||
| the established OpenAI secret from a trusted runtime file and clears the | ||
| primary provider's API base; otherwise a NVIDIA or OpenRouter run would send | ||
| the fallback to the wrong endpoint with the wrong credential. If the fallback | ||
| credential is unavailable, the attempted fallback fails configuration closed. | ||
| If no distinct fallback exists or every fallback fails, the required Strix | ||
| check remains non-passing. Existing changed, unmapped, manifest, | ||
| `ModelBehaviorError`, and vulnerability-report boundaries remain fail closed. | ||
|
|
||
| Cross-line signal assembly is deliberately rejected so unrelated target output | ||
| cannot manufacture a provider capability error from separate log lines. | ||
|
|
||
| ## Verification | ||
|
|
||
| - The reproduced single-line Azure failure reaches the configured GitHub | ||
| Models fallback exactly once and succeeds only when that scan completes. | ||
| - The configured `openai-direct/gpt-5.6-luna` fallback normalizes to the | ||
| LiteLLM-compatible `openai_direct/gpt-5.6-luna` selector. | ||
| - A NVIDIA-primary run dispatches that fallback with the OpenAI credential and | ||
| no inherited NVIDIA API base. | ||
| - A split-line imitation is non-recoverable and never dispatches the fallback. | ||
| - The full Python suite, native workflow validation, Bash syntax checks, and | ||
| complete Strix shell regression suite run on the final tree. | ||
|
|
||
| ## References | ||
|
|
||
| AkikoOrenji. (2026, June 4). *[Feature] Expose LLM generation parameters to | ||
| control local/OpenAI-compatible model behaviour and prevent runaway tool-call | ||
| loops* (Issue No. 514) [GitHub issue]. GitHub. | ||
| https://github.com/usestrix/strix/issues/514 | ||
|
|
||
| Microsoft. (2026, August 20). *Azure OpenAI reasoning models—GPT-5 series, | ||
| o3-mini, o1, o1-mini*. Microsoft Learn. | ||
| https://learn.microsoft.com/en-us/azure/foundry/openai/how-to/reasoning | ||
|
|
||
| usestrix. (n.d.). *Configuration* [Computer software documentation]. GitHub. | ||
| Retrieved August 23, 2026, from | ||
| https://github.com/usestrix/strix/blob/main/docs/advanced/configuration.mdx |
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
|
seonghobae marked this conversation as resolved.
|
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
Oops, something went wrong.
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.