Skip to content

Releases: ralforion/orionbelt-chat

v1.5.0

Choose a tag to compare

@github-actions github-actions released this 29 Aug 17:19
01915a6

What's Changed

Full Changelog: v1.4.2...v1.5.0

v1.4.2

Choose a tag to compare

@github-actions github-actions released this 29 Aug 14:39
b1ab46e

What's Changed

  • chore(deps): Bump the python-prod group with 3 updates by @dependabot[bot] in #41
  • chore(deps): Bump the python-prod group with 4 updates by @dependabot[bot] in #42
  • chore(deps): Bump types-pyyaml from 6.0.12.20260724 to 6.0.12.20260815 by @dependabot[bot] in #43
  • chore: ship third-party attribution and SBOM with the image by @ralfbecher in #44
  • chore: release 1.4.2 by @ralfbecher in #45

Full Changelog: v1.4.1...v1.4.2

v1.4.1

Choose a tag to compare

@github-actions github-actions released this 14 Aug 21:58
3a5939d

What's Changed

  • fix: upload button rejected every format it accepts — release 1.4.1 by @ralfbecher in #40

Full Changelog: v1.4.0...v1.4.1

v1.4.0

Choose a tag to compare

@github-actions github-actions released this 14 Aug 21:43
e911b97

What's Changed

  • chore(deps): Bump pydantic-ai from 2.21.0 to 2.25.0 in the python-prod group by @dependabot[bot] in #38
  • feat: file upload for OBSL models and ontologies — release 1.4.0 by @ralfbecher in #39

Full Changelog: v1.3.0...v1.4.0

v1.3.0

Choose a tag to compare

@github-actions github-actions released this 04 Aug 08:38
a42e353

What's Changed

  • feat: AI Act Art. 50(2) marking of generated content — release 1.3.0 by @ralfbecher in #37

Full Changelog: v1.2.0...v1.3.0

v1.2.0

Choose a tag to compare

@github-actions github-actions released this 03 Aug 11:15
ddfa27e

What's Changed

  • ci: automate GitHub Release creation on version tags by @ralfbecher in #30
  • chore(deps): Bump the python-prod group with 2 updates by @dependabot[bot] in #32
  • chore(deps): Bump the python-prod group with 2 updates by @dependabot[bot] in #33
  • chore(deps): Bump the python-prod group with 2 updates by @dependabot[bot] in #34
  • fix: sort app.py imports and lint the whole tree in CI by @ralfbecher in #35
  • feat: AI Act Art. 50(1) disclosure — release 1.2.0 by @ralfbecher in #36

Full Changelog: v1.1.8...v1.2.0

v1.1.8 — Pydantic AI v2, Dependabot, CI hardening

Choose a tag to compare

@ralfbecher ralfbecher released this 16 Jul 15:24
dce8f9f

First stable release since v1.1.5. Upgrade directly from v1.1.5 to v1.1.8 — v1.1.6 and v1.1.7 were tagged but shipped broken and are superseded by this release (details below).

Highlights

  • Pydantic AI v2 migration. Moved from pydantic-ai 1.x to 2.10. OpenAIModelOpenAIChatModel, and the MCP layer now uses MCPToolset over explicit StdioTransport / StreamableHttpTransport. MCP sampling.tools advertisement is preserved (pydantic-ai v2 still ships a bare SamplingCapability(), so it's re-enabled explicitly).
  • Dependency automation. Added Dependabot config covering the uv, GitHub Actions, and Docker ecosystems, plus the first batch of resulting updates (5 production dependency bumps, 8 GitHub Action major versions).
  • CI hardening. Test matrix across Python 3.11–3.13, and a new smoke step that boots the app and fetches a static asset — catching runtime-only "server starts but can't serve the UI" failures that unit tests miss.

Fixes folded in

  • MCP chat startup crash (regression from the v2 migration): the sampling wrapper referenced a pydantic-ai v1 attribute that MCPToolset doesn't have, so any configured MCP server raised AttributeError on chat start. Sampling errors now render correctly too (v2 returns ErrorData rather than raising).
  • Broken UI on Python 3.14: the 3.14 base image shipped an app whose static assets all returned HTTP 500 (anyio.NoEventLoopError, an upstream chainlit issue). Reverted to python:3.13-slim and capped requires-python to <3.14.

Docker

docker pull ralforion/orionbelt-chat:1.1.8   # or :latest

Runs on Python 3.13.

Full changelog: v1.1.5...v1.1.8

v1.1.5 — Docker support and CI pipeline

Choose a tag to compare

@ralfbecher ralfbecher released this 25 Jun 11:16
0d80327

Adds container support and a complete CI/CD pipeline for OrionBelt Chat.

Docker

  • Ships a multi-platform Docker image with a Docker Hub publish workflow, so the app can run as a container without a local Python toolchain.
  • Publishing is pinned to release tags only: each version pushes :1.2.3, :1.2, :1, and :latest — the rolling main/edge tags were dropped to keep the tag list clean.
  • The Docker Hub repository overview is kept in sync with README.md automatically.

Continuous integration

  • New CI workflow runs ruff (lint + format check), mypy, and pytest on every push and pull request to main.

Documentation

  • Added Docker Hub badges (version, image size, pulls) to the README, pointed at the published latest image.

Compatibility: unchanged — OrionBelt Analytics & Semantic Layer MCP servers.

Full Changelog: v1.1.4...v1.1.5

v1.1.4

Choose a tag to compare

@ralfbecher ralfbecher released this 03 May 21:52
bf22f2f

What's Changed

MCP Sampling

  • Advertise the sampling.tools sub-capability via a thin ClientSession subclass; pydantic-ai's __aenter__ picks up the patched class through module-attribute lookup, so MCP servers can now issue sampling/createMessage with tool definitions instead of falling back to a manual review path
  • Route sampling requests to the env-configured default model (DEFAULT_PROVIDER + matching *_DEFAULT_MODEL); resolution failure (e.g. missing API key) silently disables sampling
  • New MCP_ALLOW_SAMPLING=true|false env flag as a kill switch for cost/privacy reasons; when off, the patched session does not advertise sampling.tools and pydantic-ai passes no callback

UX

  • Welcome screen now shows Sampling Model: <provider>/<model> (or disabled) alongside Provider/Model and the connected MCP servers
  • Mark known sampling-using servers with — uses sampling in the connected-servers list
  • Each server-initiated sampling exchange renders as a collapsible Used Sampling: <server> step nested under the in-flight tool that triggered it (falling back to the run step if no tool is active); prompt and response are shown as wrapping markdown rather than a non-wrapping code block, truncated at STEP_OUTPUT_LIMIT

Dependencies

  • Bumped pydantic-ai floor to >=1.89.0 (latest at release time); patch confirmed compatible with 1.89.1's MCP __aenter__ call site

Full Changelog: v1.1.3...v1.1.4

v1.1.3

Choose a tag to compare

@ralfbecher ralfbecher released this 27 Apr 17:03
e8c97e3

What's Changed

Provider Error Handling

  • Friendly user-facing message for ModelHTTPError (e.g. OpenRouter 402, 429) and mid-stream openai.APIError, with status-code-specific hints and the provider's own message
  • Retry button on the error reply that resubmits the original prompt against the unchanged history
  • Single-line warning log on expected provider failures; full traceback retained for genuine bugs

OpenRouter Attribution

  • Send HTTP-Referer and X-Title: OrionBelt Chat headers so the app appears on OpenRouter's activity dashboard and apps leaderboard

Branding & Startup

  • Replace Chainlit default favicon with the OrionBelt mark (injected via header.js to override Chainlit's hardcoded <link rel=icon>)
  • Log OrionBelt Chat v<version> starting up at process start, version pulled from package metadata

Repo

  • Add CLAUDE.md (project conventions for AI assistants) and ignore .claude/

Full Changelog: v1.1.2...v1.1.3