Version 1.5.0
SOIT v1.5.0 evaluation and knowledge sync release highlights, with the v1.5.1 and v1.5.2 patch releases.
SOIT v1.5.0 is the evaluation and knowledge sync release, released on 2026-10-01: the gateway speaks the Anthropic Messages API, evaluation datasets become objects of their own, knowledge bases stay in step with a bucket or a website, and agents and traces leave SOIT as files.
Highlights
- Anthropic Messages API on the gateway —
POST /v1/messages, whole or streamed in Anthropic's named events, andPOST /v1/messages/count_tokens, so Claude Code and the Anthropic SDKs can be pointed at SOIT withx-api-keyor a Bearer key. A call is an ordinary governed gateway run through the same policy chain as/v1/chat/completions, on whichever provider the model ref names. See OpenAI-Compatible Gateway. - Evaluation datasets — create, edit, import, and export cases as JSONL, keep a revision history with content hashes, and run a dataset on demand on the published version, a draft, or another model. Observe › Evaluations shows datasets, cases, reports, and versions. See Evaluation datasets.
- Knowledge sync — knowledge bases stay in step with an S3-compatible bucket or a website: sources sync on demand or on a cron schedule in the ingest worker, ingest new items, version changed ones, skip unchanged ones, and optionally delete documents whose items disappeared. A failed sync shows in Observe dead letters as
knowledge_sync. See Knowledge. - Agent files — an agent moves in and out as a YAML or JSON file through the API,
soit agent export, andsoit agent import. See Agent files. - Trace export — a trace exports as OTLP/JSON for an OpenTelemetry collector, Jaeger, or Tempo, with no run content. See Trace export (OTLP).
- CLI —
soit datasetandsoit eval run --fail-on-regressionbring evaluation datasets to CI. See SOIT CLI. - Runs carry their priced cost (
cost_amount,cost_currency), the Workflows list shows node counts and recent outcomes, and a DeepSeek provider lists its models. - Dependencies: LiteLLM 1.103.0, the OpenAI SDK 2.54.0, SQLModel 0.0.47, bcrypt 5 without passlib, pymilvus 2.5.18, and assistant-ui 0.15 in the console.
Database compatibility
- Fresh installations migrate from
baseto20261001110000. - Two migrations are added:
20261001100000(evaluation datasets and their versions, one dataset backfilled for every agent and dataset name that already has cases) and20261001110000(knowledge sources, source items, and sync runs). - The supported N-1 upgrade range is
20260927160000..20261001110000: a v1.4.0 database (20260927190000) upgrades in place. - Both migrations have a downgrade, which drops the datasets and every knowledge source; documents already ingested stay. Restoring the pre-upgrade backup is the preferred way back.
Upgrading
Back up the database and object storage, run alembic upgrade head, and restart the API, the workers, and the web console on the new images. Knowledge syncs run in the knowledge ingest worker and are on by default; the new KNOWLEDGE_SYNC_* settings need no change. Review the behaviour changes in Migration and Upgrade.
Known limitations
/v1/messagesacceptsthinking,cache_control,top_k,metadata, andservice_tierand does not send them: prompt caching discounts and extended thinking are not available through the route.count_tokensis SOIT's estimate, not the provider's tokenizer. The Message Batches and Files APIs are not served.- The gateway does not serve OpenAI's
/v1/responses. - Knowledge connectors do not map the source system's access rights onto documents. OAuth and SaaS sources and authenticated or JavaScript-rendered websites are not included.
soit eval runruns an agent's dataset synchronously; scheduled evaluation and evaluating subjects other than agents are not included.- DeepSeek's model listing carries ids only, so context and output limits stay unset; DeepSeek has no embeddings endpoint.
- The v1.5.0 command line is not on PyPI: install
soit-cli1.5.1 or later, or install the v1.5.0 checkout from the repository (uv tool install ./cli).
v1.5.1
Released on 2026-10-01. The soit command line is published to PyPI as soit-cli: install it with uv tool install soit-cli or pipx install soit-cli. The command is unchanged. The server, the knowledge worker, and the web console are the same as in v1.5.0 apart from their version, and no migration is added.
v1.5.2
Released on 2026-10-02. A security patch on v1.5.1; upgrade every v1.5.x installation, as earlier versions carry the same two flaws:
- Resource grants took only write permission.
POSTandDELETE /api/v1/resource-grantschecked that the caller could write to the workspace, so any member with the Developer role could grant themselves every action on any resource. Granting and revoking now take a workspace Owner or Admin. - A document's
file_idwas taken as given. A member who could update one knowledge base could point a document at another base's file and download it.file_idmust now name a file of the same knowledge base; any other is refused with400.
No migration is added. Review the audit ledger for grants made by members who were not Owners or Admins — see Migration and Upgrade. Version 1.6.0 includes both fixes.