Skip to content

Releases

v0.5.4

Choose a tag to compare

@github-actions github-actions released this 05 Nov 03:16
486f051

0.5.4 (2026-11-05)

Features

  • billing: price peak/off-peak windows and service tiers (ADR-0053) (7cbc431)
  • console: build the dialog, sheet and tab shells once, and close the a11y audit (1f70d99)
  • console: give each team member one labeled actions menu (8c74112)
  • console: let a passkey satisfy the second factor (ADR-0049) (a9bafa4)
  • console: make the models.dev sync one review surface and one write (b2e5ff3)
  • images: accept GPT Image 2.6 GIF and SVG output on generations (3d25c20)
  • opencode: default to the v2 lane roots and honor Goose/Amp sessions (ADR-0055, ADR-0056) (6be883b)
  • provider-selection: pin each conversation to one provider by default (ADR-0054) (a28d835)

Bug Fixes

  • frontend: restore Web Storage in the vitest environment (22766f4)

Documentation

  • rewrite the README and publish a Simplified Chinese docs site (d190cef)

v0.5.3

Choose a tag to compare

@github-actions github-actions released this 31 Oct 02:25
0d9548a

0.5.3 (2026-10-31)

Features

  • auth: rebuild the vestibule and validate the instance sign-in form (684c62f)
  • console-auth: make console sign-in invite-only and passwordless (ADR-0049) (80a594e)
  • frontend: rebuild sign-in and the account workspace around the new auth (ADR-0049) (6dfc0e9)
  • opencode: pin conversations to a stable upstream session id (ae03ea4)
  • settings: make instance settings admin-only and give preferences an account tab (c674df2)

Bug Fixes

  • console: contain a render crash instead of blanking the console (aae511b)
  • docker: drop stale frontend/patches COPY (637e7c4)
  • security: mask tracing credentials in the read shape (63e1311)
  • tracing: let LangSmith store the run and keep passthrough output (cccbf8e)
  • tracing: render the passthrough body through the bounded renderer (2015920)
  • web-search: stop the SearXNG input offering results the schema rejects (6904784)

Documentation

  • console-auth: document invites, passkeys, 2FA, OIDC and password reset (39264f8)

v0.5.2

Choose a tag to compare

@github-actions github-actions released this 26 Oct 06:26
cf1d745

0.5.2 (2026-10-26)

Features

  • providers: add Ollama speech endpoint compatibility (4fd5bc3)
  • tracing: export traces to OTLP collectors and LangSmith (ddd5d9d)
  • tracing: expose the Langfuse content mode in the dashboard (c339faa)

Bug Fixes

  • auth: bind credentials to account state and make each guess cost (c525e4e)
  • close three edge cases on the request and cleanup paths (c7e9cff)
  • deps: bound decompression and MCP session slots (2f1de23)
  • logs: keep secrets, and client widths, out of the log pipeline (0b1a9d0)
  • providers: keep provider API keys encrypted at rest (0f6335f)
  • security: close the second-axis review of the hardening series (d91271d)
  • ssrf: refuse internal hosts for user-supplied endpoints (da73352)
  • startup: initialize encryption before the fail-fast config load (1b5e29b)
  • streaming: keep model text out of the frame framing (2fc367f)
  • team: align member management with documented behavior (20ae853)
  • tracing: export Langfuse content by default again (32f8061)
  • web-search: treat empty options as enable-with-defaults on every wire (b25dbce)
  • ws: charge every socket turn what HTTP charges (c60cb33)

Performance Improvements

  • cut request-path CPU in middleware and background writers (b196f59)

Documentation

  • admin: correct the personal tracing endpoint path (43a00a9)
  • security: record the socket quotas, tracing rule and MCP bounds (651762c)

v0.5.1

Choose a tag to compare

@github-actions github-actions released this 23 Oct 09:42
91dad6a

0.5.1 (2026-10-23)

Features

  • logs: record fallbacks and reported zeros as queryable log facts (3b362fe)
  • observability: one observation per request, projected to each sink (e49c1a2)
  • rerank: a retrieval protocol, and a provider that speaks its own dialect (ADR-0040, ADR-0041) (8507e40)
  • tracing: trace every request type with its own Langfuse content (605dc43)

Bug Fixes

  • cohere: read the double-typed ApiMeta counters as counts (d4b19bf)
  • frontend: keep LogsView's lazy children out of the test's imports (dbaca80)
  • logging: keep the reason a provider failed when bodies are off (f084677)
  • openresponses: carry cache_write_tokens in every usage payload (a78e2da)
  • openresponses: carry every detail counter into the terminal snapshot (52e6ec9)
  • openresponses: fold every provider's usage shape into the terminal snapshot (01d7c31)
  • openresponses: hold the terminal snapshot until the trailing usage lands (26c5c66)
  • rerank: carry relevant_spans back and keep document objects open (9a3cbe9)

Documentation

  • openresponses: correct the access_programs rationale (68512c6)

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 20 Oct 07:44
79d83b2

0.5.0 (2026-10-20)

⚠ BREAKING CHANGES

  • auth: one key gate owns the auth sequence
  • streaming: one segment accumulator owns canonical block assembly

Features

  • gemini: gate request shapes on the model family, cache what the wire cannot carry (ADR-0039) (bde5fca)
  • minimax: speak MiniMax's vocabulary on every wire (fd45080)
  • providers: add OpenCode gateway adapters with per-model dialect routing (24bb8cd)
  • routing: a fallback ladder, a corpus export, a cost-quality readout (e673eee)
  • routing: warm experience store, ask-shaped classifier input, label flywheel (e060776)
  • tools: a hosted tool is a dialect fact, not a function (ADR-0038) (7775d82)

Bug Fixes

  • address open-code-review findings from the routing/streaming/auth work (552ff65)
  • anthropic: clamp the wire onto the official Messages shapes (2df34ae)
  • streaming: take the 499 verdict before the stop token can forge it (420754b)

Code Refactoring

  • auth: one key gate owns the auth sequence (76e1366)
  • streaming: one segment accumulator owns canonical block assembly (1f63d74)

v0.4.1

Choose a tag to compare

@github-actions github-actions released this 11 Oct 02:59
50447ec

0.4.1 (2026-10-11)

Bug Fixes

  • deps: require sqlalchemy[asyncio] so greenlet ships at runtime (43e9110)
  • docker: bypass uv run re-sync at container start (2f53628)
  • test: compare the committed OpenAPI spec structurally (6ff8ac7)

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 11 Oct 02:23
dbf1354

0.4.0 (2026-10-11)

⚠ BREAKING CHANGES

  • python: adopt 3.15 idioms — PEP 810 lazy imports, frozendict, sentinel
  • routing: not_low_anchor now defaults to False and an unset gate no longer consults every turn; console and docs carry the same posture.
  • security: deployments that relied on the always-on API-key IP lockout lose it on upgrade. Public instances must enable Settings -> Security -> API Key IP Lockout.

Features

  • health: report which store actually holds the rate-limit windows (c49c466)
  • routing: drop the embedding signal (Signal C) and its ML stack (c8ab589)
  • routing: repair the ensemble, close the judge gate, bar verdict consumption (c212846)
  • routing: ship the not_low_anchor judge gate and the clarified tier rubric (50efb71)
  • upgrade to Python 3.15 and adopt 3.15 language features (1315d00)

Bug Fixes

  • address the second review pass on the merged refactor series (20216eb)
  • billing: bill every web-search continuation hop (046cb73)
  • ci: drop removed smart-routing extra; use python:3.15-rc-slim image (597419b)
  • config: address review findings on the server settings registry (dff1859)
  • docker: skip dev group in production image (aa47cb0)
  • observability: keep the provider-info search count monotonic (5bafaec)
  • observability: reach the Langfuse generation across the streaming task boundary (d153521)
  • ollama: report tool_calls when the model produced them (ab186e9)
  • ratelimit: give every bucket its own window and harden the limiter (18a0992)
  • ratelimit: make the Redis check-and-record one atomic script (7e5542c)
  • release: bump the published OpenAPI version with the release (497eb6d)
  • security: make "disable rate limiting" cover every auth-path throttle (85f8d4b)
  • streaming: keep the transformer module importable on its own (442282d)
  • streaming: tell a clean close at stream end from an abandonment (a75a4f9)
  • usage: repair the facts the seam's first review found lost (c1f9cc5)
  • web-search: attribute streamed searches to the request's user (5f81f7f)

Documentation

  • adr: give the server settings registry its own number (a8ddb99)
  • adr: point the superseded usage decisions at the intake seam (c96671a)
  • adr: record the declared web-search transformer seam (cfd4d92)
  • adr: record the server settings registry decision (5550bdf)
  • config: finish repointing the server settings registry at ADR-0026 (8b2aea4)
  • context: name the provider declaration and where it is asserted (5d05adc)

Code Refactoring

  • python: adopt 3.15 idioms — PEP 810 lazy imports, frozendict, sentinel (d836ec2)

v0.3.1

Choose a tag to compare

@github-actions github-actions released this 08 Oct 03:39
e9aac54

0.3.1 (2026-10-08)

Features

  • decisions: serve /v1/decisions through a provider-side bridge (bb313bf)
  • frontend: add a sticky settings section index with anchor scrolling (13d5b64)
  • routing: add a routing judge for the ambiguity band (2aabea4)

Bug Fixes

  • address the review findings on the seam refactor series (85d61eb)
  • chat: surface failed generations and stop cutting long streams (ee330c8)
  • frontend: keep the kept-alive logs view out of other pages' ?tab= (c67b5f3)
  • frontend: make the model pickers retryable and retire the run tray (0c5698c)
  • observability: stop losing Langfuse traces and double-counting tokens (5ab1c53)
  • web-search: default a blank Ollama base URL to the hosted endpoint (baea5cc)
  • web-search: keep search results when a conversation is replayed (6854d42)

Documentation

  • frontend: sync DESIGN.md with the implemented nav rail (665af13)

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 06 Oct 00:54
da237d2

0.3.0 (2026-10-06)

⚠ BREAKING CHANGES

  • systemone: adds the systemone request type, the typesafe provider type and POST /v1/systemone to the /v1 contract. The shared OpenRouter cost predicate now rejects a boolean or zero usage.cost instead of billing it as USD 1.0. No existing endpoint, provider config or payload changes shape.

Features

  • openapi: publish a generated /v1 contract in the docs (1795736)
  • systemone: add System One evaluation across TypeSafe, OpenRouter and Ollama (08f0387)
  • systemone: gate /v1/systemone on a capability flag and log its payloads (4e97763)

Bug Fixes

  • anthropic: keep beta blocks, tool results and token counts faithful (886f575)
  • config: apply settings and derived caches on every worker (06281c5)
  • logging: enforce the body switch at the store and log rejections (40b71fb)
  • openai: keep Responses fields, tool controls and annotations on the converted path (8ae1616)
  • openapi: pin the published spec version to the release version (acc768d)
  • qwen: forward image extension fields and drop phantom audio routes (c760a37)
  • web-search: report the real failure reason, provider and query in logs (6584415)

v0.2.9

Choose a tag to compare

@github-actions github-actions released this 01 Oct 00:11
2d59091

0.2.9 (2026-09-30)

Features

  • logs: surface cache token counts on the log list (a06e019)
  • models: give list mode the table's column grammar (f27a549)
  • usage: break hourly buckets down by model in the trends chart (ba2a978)

Bug Fixes

  • config: decode bytes generation token so peer workers refresh (a4f99fd)
  • ui: keep tooltips closed when focus moves programmatically (8665f30)

Performance Improvements

  • logging: cap stored bodies and reclaim space on retention sweeps (b4f7c3b)