Conversation
Affected packages: core/providers/openai and tests/e2e/api provider harness.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Team Run ID: 📒 Files selected for processing (5)
Included review availability: Your plan provides up to 8 included reviews per hour; 7 remain after this review. 📝 SummarySummary by CodeRabbit
WalkthroughAdds GLM-5.3-Flash support for preserving ChangesGLM-5.3-Flash reasoning effort
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This update preserves max reasoning effort for GLM-5.3-Flash OpenAI-compatible requests, including namespaced and streaming forms, without identified current-head merge-blocking risk. Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 66.67% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 3 functions across 3 files. (2 skipped: 2 unsupported.)
✨ Finishing Touches🧪 Generate unit tests (beta)
Warning Some tools did not complete. Review the errors below. 🔧 Checkov (3.3.11)tests/e2e/api/collections/provider-harness.jsonCheckov skipped this file: it is too large to scan (8908594 bytes) 🔧 ast-grep (0.45.2)tests/e2e/api/collections/provider-harness.jsonast-grep skipped this file: it is too large to scan (8908594 bytes) Comment |
Summary
Bifrost changes
reasoning_effort: "max"to"high"when routingvllm/zai-org/GLM-5.3-Flashthrough the OpenAI chat-completions integration. The model explicitly supportslow,high, andmax, with omitted effort defaulting tomax(official model card). As a result, explicitly requesting the model's default produces a different outgoing request than omitting it.This adds GLM-5.3-Flash to the shared converter's max-effort fallback. It preserves explicit
max, including namespaced HF IDs, without changinglow,high, or omitted effort.Changes
glm-5.3-flashinacceptsMaxEffort.raw_request.reasoning_effort, including streaming. These do not infer correctness from generated text or token counts.Type of change
Affected areas
How to test
Verified red before green: the four Go round-trip
maxsubcases failed with actualhigh; the two HTTPmaxcases failed with the same mismatch. After the patch, all 16 round-trip subcases pass and the HTTP harness passes all 33 assertions.The latter command passes applicable converter tests and compiles the listed shared-converter consumers; some packages have no matching unit tests. The full paid-provider suite was not run.
The collection was structurally validated with
augment-provider-harness.mjsandfilter-collection.mjs --feature GLM-5.3-Flash. Its three new cases were also run through real Bifrost HTTP servers against a synthetic OpenAI backend: unmodified v2.0.0 versus v2.0.0 with the same narrow core v1.8.3 backport. The isolated gateway enabledclient.allow_per_request_raw_override; production does not need that setting.The backported image built successfully, including UI typechecking. Bounded live vLLM checks confirmed explicit max and omitted effort now agree, while low/high remain available. Streaming tool IDs, typed arguments, reasoning content, finish reasons, and SSE termination survived a two-tool conversation.
Breaking changes
Related issues
Related to #6162, closed into the broader #6054 provider addition. This is a narrow fix for the already-shipped vLLM path on current
dev, limited to the officially released Flash model and with explicit HF namespace and HTTP regressions. It makes no assumptions about future GLM versions or coercion of unsupported effort levels.Security considerations
No configuration or credential changes. Raw-request inspection is confined to the isolated test gateway with synthetic credentials.
Checklist
AGENTS.mdand the current contribution guides (raising-a-pr.mdx,code-conventions.mdx; the template's README path no longer exists)