nesquena-hermes
81ba420716
fix: custom/unknown model prefixes must not be stripped on provider switch — v0.50.100 ( #752 )
...
## Summary
Regression fix for #751 .
Models with custom or unrecognized prefixes (e.g. `custom-provider/my-model`, `test/import-model`) were being incorrectly replaced with the active provider default. Root cause: `_normalize_provider_id("custom-provider")` matched the `"custom"` prefix and returned `"custom"`, which ≠ `active_provider` → normalization fired.
Two-part fix:
1. Add `"custom"` and `"openrouter"` to the `model_provider` exclusion set in `_resolve_compatible_session_model` (parallel to the existing `active_provider` guard)
2. Return `""` for unknown prefixes in `_normalize_provider_id` so the `if model_provider` truthiness check safely short-circuits
Adds a regression test covering `custom-provider/`, `test/`, `my-local-llm/`, and `lmstudio-community/` prefixes.
## Tests
1499 passed, 0 failures (was 2 failures before this fix)
2026-04-19 23:27:24 -07:00
..
2026-03-30 20:40:19 -07:00
2026-04-14 19:04:48 +00:00
2026-04-16 23:03:32 -07:00
2026-04-15 19:16:14 +00:00
2026-04-14 19:04:48 +00:00
2026-04-09 18:05:23 -07:00
2026-04-18 06:37:09 +00:00
2026-04-18 06:37:09 +00:00
2026-04-11 10:17:52 -07:00
2026-04-14 17:14:01 +00:00
2026-04-15 13:10:50 +08:00
2026-04-19 05:37:44 +00:00
2026-04-16 01:09:39 +00:00
2026-04-16 18:09:16 -07:00
2026-04-14 19:04:48 +00:00
2026-04-15 23:21:56 +08:00
2026-04-14 19:04:48 +00:00
2026-04-18 06:37:09 +00:00
2026-04-14 21:13:33 +00:00
2026-04-13 11:40:15 -07:00
2026-04-18 17:09:59 +00:00
2026-04-16 14:04:42 -07:00
2026-04-14 21:14:00 +00:00
2026-04-14 21:14:33 +00:00
2026-04-14 21:52:34 +00:00
2026-04-16 00:00:22 +00:00
2026-04-18 17:09:59 +00:00
2026-04-16 20:16:07 -07:00
2026-04-15 23:39:07 -07:00
2026-04-18 06:45:39 +00:00
2026-04-16 18:09:16 -07:00
2026-04-18 07:14:03 +00:00
2026-04-18 06:46:43 +00:00
2026-04-18 17:09:59 +00:00
2026-04-19 23:11:49 -07:00
2026-04-14 17:13:03 +00:00
2026-04-18 17:09:59 +00:00
2026-04-14 17:14:01 +00:00
2026-04-19 06:47:24 +00:00
2026-04-16 11:20:08 -07:00
2026-04-18 07:18:20 +00:00
2026-04-14 17:13:03 +00:00
2026-04-19 08:18:24 +08:00
2026-04-16 23:03:32 -07:00
2026-04-14 19:04:48 +00:00
2026-04-14 19:04:48 +00:00
2026-04-16 11:20:08 -07:00
2026-04-13 22:57:58 -07:00
2026-04-15 16:57:31 +00:00
2026-04-13 00:51:55 -07:00
2026-04-13 22:11:45 -07:00
2026-04-19 23:27:24 -07:00
2026-04-19 05:37:44 +00:00
2026-04-19 06:47:24 +00:00
2026-04-14 19:04:48 +00:00
2026-04-19 05:37:44 +00:00
2026-04-16 10:09:51 -07:00
2026-04-14 19:04:48 +00:00
2026-04-11 20:06:37 -07:00
2026-04-14 19:04:48 +00:00
2026-04-14 19:04:48 +00:00
2026-04-14 19:04:48 +00:00
2026-04-14 19:04:48 +00:00
2026-04-14 19:04:48 +00:00
2026-04-14 19:04:48 +00:00
2026-04-14 19:04:48 +00:00
2026-04-14 19:04:48 +00:00
2026-04-16 11:20:08 -07:00
2026-04-16 11:20:08 -07:00
2026-04-18 06:46:43 +00:00
2026-04-14 19:04:48 +00:00
2026-04-14 19:04:48 +00:00
2026-04-14 19:04:48 +00:00
2026-04-14 19:04:48 +00:00
2026-04-18 06:37:09 +00:00
2026-04-14 19:04:48 +00:00
2026-04-14 19:04:48 +00:00
2026-04-18 06:37:09 +00:00
2026-04-18 06:37:09 +00:00
2026-04-14 19:04:48 +00:00
2026-04-18 06:37:09 +00:00
2026-04-14 19:04:48 +00:00
2026-04-14 19:04:48 +00:00
2026-04-14 19:04:48 +00:00
2026-04-15 13:10:50 +08:00
2026-04-14 19:04:48 +00:00
2026-04-14 19:04:48 +00:00
2026-04-11 12:19:12 -07:00
2026-04-14 19:04:48 +00:00
2026-04-12 10:51:48 -07:00
2026-04-19 06:47:24 +00:00
2026-04-16 14:04:42 -07:00
2026-04-18 06:45:39 +00:00
2026-04-16 10:19:10 -07:00
2026-04-18 06:37:09 +00:00
2026-04-12 14:28:16 -07:00
2026-04-18 06:52:45 +00:00
2026-04-16 14:04:42 -07:00
2026-04-13 11:11:56 -07:00
2026-04-13 23:25:26 -07:00
2026-04-14 19:04:48 +00:00
2026-04-19 04:29:07 +00:00
2026-04-19 05:37:44 +00:00
2026-04-19 05:40:37 +00:00
2026-04-19 23:17:00 -07:00
2026-04-16 18:51:00 -07:00
2026-04-09 18:08:29 -07:00
2026-04-16 14:04:42 -07:00
2026-04-18 06:37:09 +00:00
2026-04-10 10:02:28 -07:00
2026-04-12 00:19:33 -07:00
2026-04-13 22:11:45 -07:00