Skip to content

openaicompat: per-route reasoning_effort acceptance gating for non-normalizing gateways #123

Description

@andybons

provider/openaicompat sends the requested effort level verbatim (including the literal "off" since PR #122) and the provider is the final judge — the documented policy in AGENTS.md's "Reasoning effort" section. Bifrost normalizes upstream differences, so no configured route rejects a level today.

A future non-normalizing OpenAI-compatible gateway could 400 on a level string it does not accept. The failure mode is bounded and loud (classifyStatus marks 400 non-retryable: zero base-loop retries, deterministic-tier park in the goal loop), but a host that must gate levels per model needs its own mapping — transcode.go:153-154 already flags the seam.

Filed from the PR #122 review (round-2 reviewer recommendation) so the concern survives the resolved PR thread. No configured route needs this today.

https://claude.ai/code/session_01WG6N8YSSwXMma1DKTMwJdf

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions