diff --git a/CHANGELOG.md b/CHANGELOG.md index 987abb1..1e60e1e 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 3a26d5e..dbcc8b1 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 7aceae9..2f26dea 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 433ee32..096ff13 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 d0a2844..38f288f 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"