From 73b53cee69886b631eabfb23bf4125e48ba045fc Mon Sep 17 00:00:00 2001 From: SimoneBottoni Date: Wed, 26 Aug 2026 10:29:13 +0200 Subject: [PATCH] bump: 1.1.0 --- CHANGELOG.md | 9 ++++-- docs/migrations/README.md | 2 +- .../unreleased.md => v1_1/v1_1.md} | 30 +++++++++++++++---- pyproject.toml | 4 +-- uv.lock | 2 +- 5 files changed, 35 insertions(+), 12 deletions(-) rename docs/migrations/{unreleased/unreleased.md => v1_1/v1_1.md} (52%) diff --git a/CHANGELOG.md b/CHANGELOG.md index d0e42d9..149b57c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,24 +2,27 @@ ## Unreleased +## 1.1.0 + ### Breaking changes - **`SourceryKitAgentResponse.reasoning` renamed to `.answer`** — the field, database column, `HandoffPayload`, and all related APIs now use `answer`. Update your agent code, structured output bindings, and any queries against the `traces` table. ### Features +- **Sandbox database integration** — hosted sandbox databases managed from the CLI via `sandbox create`, `sandbox status`, and `sandbox delete`. The doctor reports the database type (sandbox vs personal), and bootstrap automatically recreates an expired sandbox. - **Answer field on traces** — `SourceryKitAgentResponse.answer` is stored in the `traces` table (migration `005`) and displayed in both the CLI and UI dashboard. - **CLI `trace show --ui/--no-ui`** — default opens the interactive dashboard in the browser; `--no-ui` prints the CLI panel output. Trace ID prefixes are accepted (unambiguous prefix resolution). - **Dashboard activity section** — trace activity log with outcome counts. - **CLI `upgrade` command** — `sourcerykit upgrade` checks for a newer package version on PyPI, offers to install it, and runs pending database migrations. ### Refactoring +- **Trace dashboard redesign** — rewritten dashboard UI with self-hosted fonts (works offline); status filter and query-record deep links removed. - **CLI `trace show` presentation** — header and summary wrapped in a styled Rich panel. - -### Maintenance -- **Alembic migrations shipped with package** — migration scripts are now included in the pip wheel via `force-include`, enabling `sourcerykit upgrade` for non-repo installs. +- **Multi-agent cookbook** — specialist agents converted from factory functions + wrapper tools to the `as_tool()` pattern with `custom_output_extractor` for automatic payload construction. ### Documentation - Updated CLI docs with `--ui/--no-ui` option. - Added migration guides (`docs/migrations/`) with README index, expanded v1.0 guide, and updated README migration links. +- Docs consolidated to the Provably website with an automated sync workflow; Sphinx build steps and dependencies removed. Added an end-to-end SDK walkthrough. ## 1.0.1 diff --git a/docs/migrations/README.md b/docs/migrations/README.md index a512a99..bd94763 100644 --- a/docs/migrations/README.md +++ b/docs/migrations/README.md @@ -4,7 +4,7 @@ Upgrade guides for SourceryKit releases. Each guide covers breaking changes, new | Version | Action | Guide | |---|---|---| -| [Unreleased](unreleased/unreleased.md) | `sourcerykit upgrade` | Breaking: `reasoning` → `answer`; schema change (traces.answer) | +| [v1.1](v1_1/v1_1.md) | `sourcerykit upgrade` | Breaking: `reasoning` → `answer`; schema change (traces.answer) | | [v1.0.1](https://github.com/ProvablyAI/sourcerykit/blob/main/CHANGELOG.md#101) | `pip install --upgrade sourcerykit` | No schema change | | [v1.0](v1_0/v1_0.md) | `sourcerykit upgrade` | Full migration from previous versions | diff --git a/docs/migrations/unreleased/unreleased.md b/docs/migrations/v1_1/v1_1.md similarity index 52% rename from docs/migrations/unreleased/unreleased.md rename to docs/migrations/v1_1/v1_1.md index 7ceeafe..acf20bd 100644 --- a/docs/migrations/unreleased/unreleased.md +++ b/docs/migrations/v1_1/v1_1.md @@ -1,8 +1,6 @@ -# Migrating to Unreleased +# Migrating to v1.1 -Changes currently on `main` that have not been tagged as a release yet. - -## Breaking change +## Breaking change: `reasoning` renamed to `answer` `SourceryKitAgentResponse.reasoning` has been renamed to `.answer`. The database column, `HandoffPayload`, all query builders, and the UI/dashboard now use `answer`. @@ -22,9 +20,31 @@ payload = await build_handoff_payload( ) ``` +If you query the `traces` table directly, update any reference to the old column: + +```sql +-- Previous +SELECT reasoning FROM traces; + +-- New +SELECT answer FROM traces; +``` + ## Schema change -Migration `005` adds an `answer TEXT` column to the `traces` table. +Migration `005` adds an `answer TEXT` column to the `traces` table. No other schema changes in this release. + +## New: hosted sandbox databases + +v1.1 adds managed sandbox databases from the CLI: + +```bash +sourcerykit sandbox create # provision a hosted sandbox database +sourcerykit sandbox status # check expiry and health +sourcerykit sandbox delete # remove it +``` + +`sourcerykit doctor` now reports your database type (sandbox vs personal), and `bootstrap_system()` recreates an expired sandbox automatically. No action required if you use your own Postgres instance. ## Upgrade diff --git a/pyproject.toml b/pyproject.toml index 038f448..fe7eed3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "sourcerykit" -version = "1.0.1" +version = "1.1.0" description = "Counterspell for hallucinating agents. Python SDK that breaks the illusion on every tool call, API response, and MCP handoff before bad outputs propagate." readme = { file = "README.md", content-type = "text/markdown" } requires-python = ">=3.12" @@ -153,7 +153,7 @@ exclude_also = ["if TYPE_CHECKING:", "raise NotImplementedError", "\\.\\.\\."] sourcerykit = "sourcerykit.cli.main:app" [tool.bumpversion] -current_version = "1.0.1" +current_version = "1.1.0" commit = false tag = false tag_name = "v{new_version}" diff --git a/uv.lock b/uv.lock index ff59ac2..c3592d8 100644 --- a/uv.lock +++ b/uv.lock @@ -2328,7 +2328,7 @@ wheels = [ [[package]] name = "sourcerykit" -version = "1.0.1" +version = "1.1.0" source = { editable = "." } dependencies = [ { name = "aiohttp" },