From beb97a93963f56b970826a27719b67deb3740ac8 Mon Sep 17 00:00:00 2001 From: Lukas Babaliauskas Date: Thu, 22 Oct 2026 20:02:35 +0200 Subject: [PATCH] chore(release): 1.6.0 Co-Authored-By: Claude Opus 5.5 --- CHANGELOG.md | 2 ++ DOCS.md | 2 +- docs/configuration.md | 6 +++--- llms-full.txt | 2 +- pyproject.toml | 2 +- 5 files changed, 8 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 987abb14..1e60e1e2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [1.6.0] - 2026-10-22 + ### Added - **`captures.rounds` in `evalshift.yaml`.** `first` (the default) or `all` sets diff --git a/DOCS.md b/DOCS.md index 3a26d5e6..dbcc8b1b 100644 --- a/DOCS.md +++ b/DOCS.md @@ -12,7 +12,7 @@ hosted (opt-in) run history, diffs, PR gates The suite is the crux, so the capture SDK is the recommended way to build one: it records real production runs to disk and `evalshift capture sync` promotes them into golden suites. Hand-written suites are fully supported — see [The golden suite](#the-golden-suite). -- **Package name:** `evalshift` · **CLI entry point:** `evalshift` · **version:** 1.5.0 +- **Package name:** `evalshift` · **CLI entry point:** `evalshift` · **version:** 1.6.0 - **Python:** >= 3.11 · **License:** Apache-2.0 · **Status:** stable - **Local-first.** Runs, scores, stats, and reports all happen on your machine under `.evalshift/`. The only network calls are the model API calls you asked for — and, if you opt in, pushes to the hosted service and reads from a capture bucket you own (`captures.store`). - **Four pieces:** CLI (this doc), SDK, GitHub Action, hosted server — each with its own machine-readable reference for AI tools. See [Ecosystem and AI-tool references](#ecosystem-and-ai-tool-references). diff --git a/docs/configuration.md b/docs/configuration.md index 7aceae90..2f26deaf 100644 --- a/docs/configuration.md +++ b/docs/configuration.md @@ -1100,8 +1100,8 @@ used them). Take it knowingly: `--force` rebuilds every promoted case whose capt (not after `capture clean` or on a fresh checkout, where promoted captures are not fetched) from its capture, which drops hand edits and `provenance: reviewed` marks. Reviewed cases, stale ones and ones promoted under another name (`capture promote --as`) are left out of the count. An -evalshift older than the release that added `rounds` rejects the key, so update a CI pin -(`evalshift-version:`) before adding it. +evalshift older than 1.6.0 rejects the key, so update a CI pin (`evalshift-version:`) before +adding it. Setting either `max_age` or `max_cases` turns [bounded suites](#bounded-suites) on. Both work without `store`: they govern how captures become suites, whether the captures came from disk or @@ -1112,7 +1112,7 @@ because it would silently mean seconds. So is a `max_age` above 100 years, which "no limit": `captures.max_age: Value error, must be at most 36500d (100 years); omit captures.max_age for no age limit`. -CLI versions before 1.3.0 reject the `captures:` key, and versions before this release reject +CLI versions before 1.3.0 reject the `captures:` key, and versions before 1.6.0 reject `max_age` and `max_cases` (the config is strict). Bump the CLI, and a pinned GitHub Action's `evalshift-version`, before adding them. diff --git a/llms-full.txt b/llms-full.txt index 433ee325..096ff138 100644 --- a/llms-full.txt +++ b/llms-full.txt @@ -1,7 +1,7 @@ # evalshift (CLI) — complete reference for AI tools Canonical hosted copy: https://www.evalshift.dev/cli-llms-full.txt -Package: evalshift (PyPI) | CLI entry point: evalshift | version: 1.5.0 +Package: evalshift (PyPI) | CLI entry point: evalshift | version: 1.6.0 Python: >=3.11 | license: Apache-2.0 | status: stable Install: pip install evalshift (or: uv pip install evalshift) diff --git a/pyproject.toml b/pyproject.toml index d0a28446..38f288f4 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "evalshift" -version = "1.5.0" +version = "1.6.0" description = "Run your prompts on two LLMs and find out, with statistical confidence, what regressed." readme = "README.md" license = "Apache-2.0"