fix(provider): route Azure GPT models through Chat Completions - #3818
Conversation
📦 Client bundle boundary
A server module in a client graph aborts hydration in the browser. New leaks fail CI; known leaks are tracked in |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (6)
Included review availability: Your plan includes up to 1 review per rolling hour; 0 remain after this review. 📝 WalkthroughWalkthroughOpenAI model creation now supports explicit Chat Completions and Responses transports, plus automatic routing. Veryfront Cloud resolves transport overrides from the model catalog and forwards them to OpenAI models. Tests cover GPT-5.4 and GPT-5.5 routing. ChangesOpenAI transport selection
Estimated code review effort: 3 (Moderate) | ~20 minutes Merge Risk: ⚪ Minimal · up to The change routes two Azure-backed models through Chat Completions while preserving existing routing and reasoning behavior; no actionable merge-blocking risk remains after normal checks and review. Sequence Diagram(s)sequenceDiagram
participant VeryfrontCloudProvider
participant ModelCatalog
participant OpenAIModelFactory
participant ChatCompletionsRuntime
VeryfrontCloudProvider->>ModelCatalog: resolve model transport
ModelCatalog-->>VeryfrontCloudProvider: return override or undefined
VeryfrontCloudProvider->>OpenAIModelFactory: create OpenAI model with transport
OpenAIModelFactory->>ChatCompletionsRuntime: select Chat Completions when configured
ChatCompletionsRuntime-->>VeryfrontCloudProvider: return generated response
Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: cd7fae88b0
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
cd7fae8 to
e3ade06
Compare
e3ade06 to
62ece99
Compare
|
Addressing the CodeRabbit docstring warning: the only new exported resolver, |
|
Codex Review: Didn't find any major issues. Breezy! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Summary
gpt-5.4andgpt-5.5through Chat Completions because their Azure-backed gateway deployments do not expose the Responses APIgpt-5.2,gpt-5.4-mini,gpt-5.4-nano, and direct OpenAI modelsreasoning_effort: "medium"on the Chat Completions pathFixes veryfront/veryfront-issue-inbox#548.
RED-GREEN TDD
RED: the public Veryfront Cloud model path sent both affected models to
/responses; an Azure Chat Completions stream then failed in the Responses parser withevent type was missing.GREEN: both models now use
/chat/completions, accept the Azureprompt_filter_resultspreamble handled by #3817, stream text successfully, and retain medium reasoning effort.A review RED then showed that forcing Chat Completions could silently omit
openai.web_search. GREEN rejects the unsupported hosted tool for both generate and stream before any network request.Verification
DENO_TESTING=1 deno test --preload=src/testing/preload.ts --no-check --allow-all src/provider/veryfront-cloud/provider.test.ts src/provider/veryfront-cloud/model-catalog.test.ts extensions/ext-llm-openai/src/openai-provider.test.ts(103 steps passed)deno task --quiet typecheckdeno task --quiet lintdeno task docs:api-reference:checkdeno fmt --checkon changed TypeScript filesgit diff --check