From 4d34b56c4da4e3a935eaaa1b6cb6321597088802 Mon Sep 17 00:00:00 2001 From: Anish Sarkar <104695310+AnishSarkar22@users.noreply.github.com> Date: Fri, 1 May 2026 18:09:50 +0530 Subject: [PATCH] docs(router): drop reference to virtual openrouter/free in is_premium_model --- surfsense_backend/app/services/llm_router_service.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/surfsense_backend/app/services/llm_router_service.py b/surfsense_backend/app/services/llm_router_service.py index d624ff56c..060e01675 100644 --- a/surfsense_backend/app/services/llm_router_service.py +++ b/surfsense_backend/app/services/llm_router_service.py @@ -344,11 +344,11 @@ class LLMRouterService: Scope: only covers configs with ``router_pool_eligible`` truthy. That includes static YAML premium configs AND dynamic OpenRouter *premium* entries (which opt in at generation time). Dynamic OpenRouter *free* - entries and the virtual ``openrouter/free`` router are deliberately - kept out of the router pool — OpenRouter enforces free-tier limits - globally per account, so per-deployment router accounting can't - represent them correctly — and therefore return ``False`` here, which - matches their ``billing_tier="free"`` (no premium quota). + entries are deliberately kept out of the router pool — OpenRouter + enforces free-tier limits globally per account, so per-deployment + router accounting can't represent them correctly — and therefore + return ``False`` here, which matches their ``billing_tier="free"`` + (no premium quota). For per-request premium checks on an arbitrary config (static or dynamic, pool or non-pool), read ``agent_config.is_premium`` instead;