From a92e21553dd29fe45bb355fc73c8eee5dfd4b2cd Mon Sep 17 00:00:00 2001 From: nesquena-hermes Date: Thu, 9 Apr 2026 18:44:04 -0700 Subject: [PATCH] =?UTF-8?q?docs:=20v0.42.0=20release=20=E2=80=94=20German?= =?UTF-8?q?=20i18n,=20custom=20provider=20routing,=20phantom=20Custom=20gr?= =?UTF-8?q?oup=20fix=20(564=20tests)=20(#207)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Nathan Esquenazi --- CHANGELOG.md | 10 ++++++++++ static/index.html | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 529010f..b0a6b0b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,16 @@ --- +## [v0.42.0] — 2026-04-10 + +### Features +- **German translation** (PR #190 by @DavidSchuchert): Complete `de` locale covering all UI strings — settings, commands, sidebar, approval cards. Also extends the i18n system with `data-i18n-title` and `data-i18n-placeholder` attribute support so tooltip text and input placeholders are now translatable. German speech recognition uses `de-DE`. + +### Bug Fixes +- **Custom slash-model routing** (PR #189 by @smurmann): Model IDs like `google/gemma-4-26b-a4b` from custom providers (LM Studio, Ollama) were silently misrouted to OpenRouter because of the slash-heuristic. Custom providers now win: entries in `config.yaml → custom_providers` are checked first, so their model IDs route to the correct local endpoint regardless of format. +- **Phantom Custom group in model picker** (PR #191 by @mbac): When `model.provider` was a named provider (e.g. `openai-codex`) and `model.base_url` was set, `hermes_cli` reported `'custom'` as authenticated, producing a duplicate "Custom" group in the dropdown. The real provider's group was missing the configured default model. Fixed by discarding the phantom `custom` entry when a real named provider is active. +- **Hyphen/space model group injection** (PR #191): The "ensure default_model appears" post-pass used `active_provider.lower() in group_name.lower()`, which fails for `openai-codex` vs display name `OpenAI Codex` (hyphen vs space). Now uses `_PROVIDER_DISPLAY` for exact display-name matching. + ## [v0.41.0] — 2026-04-10 ### Features diff --git a/static/index.html b/static/index.html index ca7c11e..7873a2e 100644 --- a/static/index.html +++ b/static/index.html @@ -14,7 +14,7 @@