Skip to content

v1.11.1

Choose a tag to compare

@inureyes inureyes released this 24 Jul 14:27
· 2 commits to main since this release

Patch release that makes the chat model selector act on exactly the session you clicked and removes the first-launch stall on "checking available models".

Backend.AI GO v1.11.1

24 commits since v1.11.0. (19096 lines added, 584 lines deleted)

New Features

None

Improvements

  • Cowork sessions get an LLM-generated conversation title after the first exchange, like chat sessions. Previously they kept "Chat N" or the localized "Cowork session" forever .
  • The chat model selector shows "Starting router..." while the router is coming up, instead of a generic "checking available models" state .
  • The built-in vLLM and SGLang container engines are listed only in the Container Engines section, which reports actual image presence with Pull, Update, and Remove actions .

Bug Fixes

Model selector and loading

  • Stopping the selected local model from the chat model selector no longer leaves the stopped model selected or silently jumps to another model. The selection is cleared permanently, the persisted last-selected key is cleared with it, and the Undo path restores the previous selection .
  • The model selector's stop button now enters its unloading state (disabled with a spinner) while an unload is in flight, and multi-session rows resolve their own session's memory display and state .
  • Stopping one row of a duplicate-loaded model stops that row's own session instead of a sibling session that shares the same model id .
  • Every row of a same-artifact session group is keyed by session, so per-row state (loaded info, unload spinner, memory display, stop key) can no longer be attributed to the wrong sibling. Picking a session row resolves to a routable model id, so chatting with a duplicate-loaded sibling works .
  • Re-selecting a model while its unload is still in flight queues a reload that fires once the unload completes, instead of selecting the dying session and dropping the request .
  • Undoing a multi-session model stop restores the newly loaded session instead of the shared router alias .
  • A model stopped in one selector instance can no longer be resurrected by another mounted instance's auto-select. Stop suppression moved from per-hook state into shared model-store state .

Router

  • Models enabled on a Continuum Router provider no longer vanish before reaching the model selectors. URL composition tolerates a base URL that already carries the API root, and a remaining mismatch is now reported instead of silently dropped .
  • The chat model selector no longer stalls on "checking available models" for tens of seconds at first launch .

Chat, Cowork, and Memory

  • The launcher composer tracks the chat content width, so it stays aligned with the suggestion chips when the sidebar or the conversations list is collapsed or expanded .
  • The Memory page injection preview no longer rebuilds in a loop. Building a context for display skips the lastReferencedAt stamp, and the stamp itself no longer broadcasts a change event .

Other

  • Dev-only routes such as /data are unreachable in production builds, including through a typed URL, a persisted last-visited route, and plugin navigation .
  • The Process view in the log viewer renders ANSI colors and styles instead of raw escape fragments. Escape sequences no longer leak into search matching, highlight offsets, copy, or export .
  • The Claude Code endpoint card's "Copy as export" and "Copy as .env" snippets now include ANTHROPIC_AUTH_TOKEN, so running claude after pasting a snippet no longer triggers the login prompt .
  • The Extensions skill detail drawer no longer renders its content flush against the panel edges. The Provenance section is separated from the document body, and its source URL gains copy and open-in-browser actions .

CI/CD Improvements

None

Technical Details

  • PoolLoadModelResponse.session_id is serialized as camelCase sessionId on success, so both transports report the minted session identity to poolLoadModel callers. Failure payloads omit the key and keep their previous wire shape .
  • RouterManager::state_handle exposes the manager's own router state, so get_router_models observes the lifecycle without taking the coordinator's router lock. The models fetch fails fast with a machine-readable RouterStarting state (HTTP 503, code ROUTER_STARTING) on both transports, and the Unix-socket fetch path is bounded by a request timeout .
  • devOnly in the route manifest is treated as a route-level reachability property rather than a sidebar-visibility hint, and every surface derived from it gates on one shared helper .
  • Stop suppression for the unified model selector moved from a per-hook-instance ref into shared model-store state, since the resurrection hazard is process-global while several selectors are mounted .
  • TranslationPage.test.tsx mocks useModelStore with a getState member, repairing the 25 tests broken by the store read added in .
  • The README Recent Updates section was trimmed back to a one or two sentence summary per release. Full per-release detail stays in CHANGELOG.md and these release notes.

Dependencies

  • continuum-router v1.15.5 (from v1.15.3).

Breaking Changes

None

Known Issues

None

What's Changed

  • fix: pad skill detail drawer and polish provenance section by @inureyes
  • fix: clear chat model selection when stopping the selected model by @inureyes
  • fix: add ANTHROPIC_AUTH_TOKEN to Claude Code export/.env snippets by @inureyes
  • fix: render ANSI colors in process log viewer by @inureyes
  • fix: show unloading state on the model selector stop button by @inureyes
  • fix: stop exactly the clicked sibling session in the model selector by @inureyes
  • fix: launcher composer does not track the chat content width by @inureyes
  • fix: auto-generate conversation titles for cowork sessions by @inureyes
  • fix: key all same-artifact sibling sessions by session in the model selector by @inureyes
  • fix: surface Continuum Router models that never reach the model selectors by @inureyes
  • fix: queue a reload when re-selecting a model mid-unload by @inureyes
  • fix: restore the fresh session after undoing a multi-session model stop by @inureyes
  • fix: share stop suppression across model selector instances by @inureyes
  • fix: stop the memory injection preview from flickering by @inureyes
  • fix: fail fast in get_router_models during router startup by @inureyes
  • fix: stop listing seeded container engines as installed by @inureyes
  • fix: make dev-only routes unreachable in production builds by @inureyes
  • fix(test): repair TranslationPage store mock broken by useModelStore.getState by @inureyes