fix: route custom provider models dict selections#1752
Closed
Michaelyklam wants to merge 1 commit intonesquena:masterfrom
Closed
fix: route custom provider models dict selections#1752Michaelyklam wants to merge 1 commit intonesquena:masterfrom
Michaelyklam wants to merge 1 commit intonesquena:masterfrom
Conversation
Collaborator
|
Thanks @Michaelyklam — this shipped in v0.51.12 (commit GitHub didn't auto-close because the merge commit only references the squash-merged stage branch, not your fork's commit directly — closing manually for hygiene. Live now on https://get-hermes.ai/ and on existing installs after Release notes: https://github.com/nesquena/hermes-webui/releases/tag/v0.51.12 |
pull Bot
pushed a commit
to soitun/hermes-webui
that referenced
this pull request
May 6, 2026
… custom provider routing + session runtime invariants) Constituent PRs: - nesquena#1746 (@Michaelyklam) — shorten cron profile lock for manual runs (closes nesquena#1574, RETURNS from v0.51.11 deferral with queue-drain blocker fixed) - nesquena#1752 (@Michaelyklam) — route custom provider models dict selections (slice of nesquena#1240 umbrella) - nesquena#1753 (@Michaelyklam) — guard session-owned runtime invariants (refs nesquena#1694) nesquena#1746 v2 fix: result_queue.get(timeout=...) BEFORE process.join() (drain-then-join), with queue.Empty recovery + 200,000-char regression test. Opus stage-306 verified the fix correct + complete; the prior fork→spawn SHOULD-FIX filed as follow-up issue nesquena#1754 (separate architectural change). Tests: 4622 → 4632 passing (+10). 0 regressions. Stably green on first try. Pre-release verification: - All 3 PRs CI-green individually + rebased onto master with NO conflicts (disjoint files: api/config.py + static/messages.js + api/routes.py) - pytest 4632 passed, 0 failed - node -c clean on static/messages.js - 11/11 browser API endpoints PASS - Opus advisor: SHIP all 3, 0 MUST-FIX, 1 SHOULD-FIX filed as nesquena#1754 Closes nesquena#1574.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Thinking Path
origin/mastershowed the cache-invalidation portions have been superseded by the current source-fingerprint cache contract inapi/config.pyand regression coverage intests/test_issue1699_model_cache_source_fingerprint.py/tests/test_issue1633_models_cache_version_stamp.py.custom_providers[].modelscan appear in the picker, but bare selections of those model IDs were not resolved back to the named custom provider.origin/masterinstead of pushing to the non-Michael conflicting PR branch.What Changed
resolve_model_provider()so namedcustom_providersmatch both the singularmodelfield andmodelsdict keys.custom_providers[].models-only model routing tocustom:<name>with the configuredbase_url.Why It Matters
custom_providers[].modelsdict keys for named custom provider groups.Verification
env -u HERMES_CONFIG_PATH -u HERMES_WEBUI_HOST /home/michael/.hermes/hermes-agent/venv/bin/python -m pytest tests/test_model_resolver.py::test_custom_provider_models_dict_routes_to_named_custom_provider -qxiaomiinstead ofcustom:litellm-proxy.env -u HERMES_CONFIG_PATH -u HERMES_WEBUI_HOST /home/michael/.hermes/hermes-agent/venv/bin/python -m pytest tests/test_model_resolver.py tests/test_issue1699_model_cache_source_fingerprint.py tests/test_issue1633_models_cache_version_stamp.py tests/test_ttl_cache.py tests/test_pr1339_fallback_providers_list.py -q51 passed in 48.98senv -u HERMES_CONFIG_PATH -u HERMES_WEBUI_HOST /home/michael/.hermes/hermes-agent/venv/bin/python -m pytest tests/ -q4597 passed, 2 skipped, 3 xpassed, 1 warning, 8 subtests passed in 378.87sgit diff --checkRisks / Follow-ups
Model Used
gpt-5.5via Hermes Agent CLI.