LibreChat/api/server/controllers/ReasoningCapabilitiesController.js
Marco Beretta 578572327a
🎚️ feat: Filter OpenRouter Reasoning Efforts by the Selected Model (#16808)
* feat: Filter OpenRouter Reasoning Efforts by the Selected Model

* fix: Address Review Findings on OpenRouter Per-Model Reasoning Efforts

* fix: Report Catalog Failures, Share Lookups and Honor Direct Endpoints for Reasoning Efforts

* fix: Move Capabilities Handler Into packages/api and Harden Catalog Lookups

* fix: Scope Reasoning Capabilities to One Endpoint and Gate Editors Until They Load

* fix: Skip Catalog Reads for Explicit Definitions and Keep Staged Efforts While Loading

* fix: Retry the Reasoning Capabilities Query on Focus and Reconnect After a Failure

* fix: Remember Failed Catalog Lookups, Reject Locked Overrides Early and Keep Restored Efforts

* fix: Hide Efforts Until the Catalog Is Known, Keep Unlisted Models Unknown and Accept Auto

* fix: Mark OpenRouter Endpoints by Their Resolved Host so the Client Fetches Capabilities

* fix: Share One OpenRouter Catalog Rule, Build the Catalog URL Safely and Make the Lifetime Configurable

* fix: Forward Static Catalog Headers, Resolve Relative Next Links and Align Client Freshness

* fix: Limit Capabilities to Exposed Models and Revalidate Against the Server Entry Expiry

* fix: Hide Efforts After a Failed Refresh, Reject Malformed Pagination and Skip User-Scoped Catalogs

* fix: Use Own-Property Lookups, Skip the Catalog for Auto and Revalidate From the Remaining Lifetime

* fix: Treat Request Metadata Headers as Shared, Store Catalogs as Own Entries and Hide Efforts During Refresh

* fix: Keep Configured Query Parameters Across Catalog Pages and Treat Expired Idle Data as Unknown

* fix: Expose Only Configured Variants, Skip Identity Headers on Fixed Lists and Keep Staged Efforts
2026-10-08 18:04:13 +02:00

3 lines
184 B
JavaScript

const { getReasoningCapabilities, createReasoningCapabilitiesHandler } = require('@librechat/api');
module.exports = createReasoningCapabilitiesHandler({ getReasoningCapabilities });