* feat(llmtr): complete chat-route coverage with 27 remaining models
Adds the LLMTR chat routes not covered by #3038. Provider entries are
override-only on top of models/ lab metadata; six lab entries are added
where the underlying model had no models/<lab>/ file yet.
Costs and context windows come from https://llmtr.com/api/models.
reasoning_options were measured against POST /v1/chat/completions rather
than inferred: the gateway reports its per-model thinking control in the
400 body for an unsupported reasoning_effort value.
Models whose lab facts could not be established from the lab's own
documentation or an existing first-party entry are deliberately left out.
* fix(llmtr): re-measure reasoning controls across every request surface
Review feedback: reasoning_effort is only one of the surfaces this gateway
forwards, so an effort-only probe cannot justify reasoning_options = [].
Re-probed every entry across nine request shapes (reasoning_effort top-level
and nested, reasoning true/false, :think and :fast suffixes,
reasoning.max_tokens, thinkingConfig.thinkingBudget, thinking_budget,
enable_thinking, thinking.type), temperature 0, each result reproduced.
The real control on Qwen routes is Alibaba's native enable_thinking, which the
gateway forwards. Seven routes previously marked [] are genuine toggles:
qwen-plus, qwen-flash, qwen3-vl-plus, qwen3.5-plus, qwen3.5-397b-a17b,
qwen3.6-plus and qwen3-max. qwen3-max additionally overrides reasoning = true,
since it emits reasoning on demand despite the base entry saying otherwise.
gemini-2.5-flash-lite, mimo-v2.5, mimo-v2.5-pro and sonar-deep-research keep []
after testing all nine surfaces; each now records that evidence in its header.
The perplexity low|medium|high|fast|pro|auto suffixes are search_type controls,
not reasoning - the gateway names the parameter in its own rejection.
Wire-path comments moved into the leading header block on all ten files that
carry reasoning_options, since sync strips mid-file comments.
Drops qwen3.6-27b-free: its reasoning surface could not be measured because the
key's daily free-model quota was exhausted, and an unverified [] is exactly what
this change is correcting.
* llmtr: align solar-pro2 reasoning effort with the Upstage baseline
* llmtr: align solar-pro3 reasoning effort with the Upstage baseline
* llmtr: add measured thinking_budget control to qwen/qwen-flash
* llmtr: add measured thinking_budget control to qwen/qwen-plus
* llmtr: add measured thinking_budget control to qwen/qwen3-max
* llmtr: add measured thinking_budget control to qwen/qwen3-vl-plus
* llmtr: add measured thinking_budget control to qwen/qwen3.5-397b-a17b
* llmtr: add measured thinking_budget control to qwen/qwen3.5-plus
* llmtr: add measured thinking_budget control to qwen/qwen3.6-flash
* llmtr: add measured thinking_budget control to qwen/qwen3.6-plus
* llmtr: add measured thinking_budget control to qwen/qwen3.7-plus
* llmtr: align solar-pro4 effort wire comment with the measured field