Skip to content

Release GE — v0.51.211 (reasoning heuristics + /model shortest-match + Copilot env-token filter) - #3415

Merged
nesquena-hermes merged 5 commits into
masterfrom
release/stage-batch1
Jun 2, 2026
Merged

nesquena-hermes merged 5 commits into
masterfrom
release/stage-batch1

Conversation

@nesquena-hermes

Copy link
Copy Markdown
Collaborator

Release GE — v0.51.211 (stage-batch1)

Phase 1 low-risk contributor batch. 3 PRs, all isolated bug fixes to existing surfaces, no UI/UX surface changes.

PRs in this release

Verification

  • Full sequential suite: 7266 passed, 0 failed (7 skipped, 3 xpassed)
  • Codex regression gate: SAFE TO SHIP
  • Opus advisor: APPROVE
  • Pre-Opus gate: node -c, ast.parse, ESLint runtime gate, ruff forward gate all clean
  • 30 adversarial reasoning-heuristic probes pass (incl. GPT-5+ anchoring, Claude 3.7 boundary, family-before-version naming, suffix handling)

Note: #3379 over-matches a couple of rare edge models (deepseek-vl-* vision, legacy claude-instant-100k) into showing the reasoning selector — a soft UX false-positive (the param is ignored by the model), not a runtime failure; documented for follow-up.

happy5318 and others added 5 commits June 2, 2026 17:11
Copilot API does not support classic PATs (ghp_*), only OAuth tokens (gho_*)
or fine-grained PATs (github_pat_*). When GITHUB_TOKEN env var contains a
classic PAT, it should be filtered from the credential pool to prevent
Copilot from appearing in the model picker dropdown.

The _is_ambient_gh_cli_entry() function now also filters entries with
source='env:GITHUB_TOKEN', treating them as ambient/auto-detected rather
than user-explicitly-added credentials.

Fixes issue where Copilot group appeared in WebUI model picker even when
gh auth token was an unsupported classic PAT.
Follow-up to PR #3382 review feedback. There are three GitHub-related
env vars that can be auto-detected:

- COPILOT_GITHUB_TOKEN: user-specific config, should NOT be filtered
- GITHUB_TOKEN: classic PAT, should be filtered (already done)
- GH_TOKEN: another env var, should also be filtered (this commit)

Use a frozenset (_AMBIENT_GH_ENV_SOURCES) to clearly define which
env var sources are ambient vs user-configured.
The /model slash command's fuzzy fallback used a substring match that
took the first option containing the query, so "/model mimo-v2.5"
selected "mimo-v2.5-pro" instead of "mimo-v2.5".

Replace both fallback loops with a shared _bestModelMatch helper that
prefers an exact id/label match and otherwise returns the shortest
option containing the query, so a more specific query is no longer
shadowed by a longer variant. The longer variant is still selectable by
querying its full name.

Closes #3368
@nesquena-hermes
nesquena-hermes merged commit f126084 into master Jun 2, 2026
11 checks passed
@nesquena-hermes
nesquena-hermes deleted the release/stage-batch1 branch June 2, 2026 17:28
SysAdminDoc pushed a commit to SysAdminDoc/hermes-webui that referenced this pull request Jun 26, 2026
Release GE — v0.51.211 (reasoning heuristics + /model shortest-match + Copilot env-token filter)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bug: Reasoning Effort Selector Hidden on Custom and Suffixed Models Bug: model selection logic (using a substring) prevents selection of some models

4 participants