From 1f3b241485b95ea4f22478a1c3a4fb7196ff88d5 Mon Sep 17 00:00:00 2001 From: Jeroen Schweitzer Date: Sun, 11 Jan 2026 19:36:24 +0100 Subject: [PATCH] chore: release api v0.3.1 - Update changelog with v0.3.0 and v0.3.1 changes - Bump version in pyproject.toml to 0.3.1 Co-Authored-By: Claude Opus 4.5 --- CHANGELOG.md | 28 ++++++++++++++++++++++++++++ webber-api/pyproject.toml | 2 +- 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f82d522..28ed336 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,34 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.3.1] - 2026-01-11 + +### Added +- Integration test infrastructure with pytest markers (integration, e2e, slow) +- 10 LLM integration tests (requires Ollama) +- 12 E2E API tests (requires running server) +- Command line options: `--run-integration`, `--run-e2e`, `--ollama-url`, `--api-url` +- Sample project fixtures for testing +- 14 security tests (path traversal, command injection, input validation) +- Helper functions: `assert_contains_any`, `assert_contains_all` + +### Changed +- Updated COVERAGE.md to ~65% complete + +## [0.3.0] - 2026-01-10 + +### Added +- Explore agent with PydanticAI tool calling and Mistral Nemo +- Coding tools: `edit_file`, `write_file`, `bash` (full) +- Web search tool using SearXNG integration +- Streaming responses via SSE for API and CLI +- CLI commands: `explore`, `chat`, `status` +- Sanitized Ollama provider (fixes `content: null` issue) + +### Changed +- Reorganized into monorepo structure (webber-api/, webber-cli/, webber-sandbox/) +- Added ruff linter and fixed mypy errors + ## [0.2.3] - 2026-01-09 ### Added diff --git a/webber-api/pyproject.toml b/webber-api/pyproject.toml index b717829..15f1e6f 100644 --- a/webber-api/pyproject.toml +++ b/webber-api/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "webber-api" -version = "0.3.0" +version = "0.3.1" description = "Webber API - Multi-Agent AI Development Server" authors = [ {name = "jpmschweitzer"}