This release includes breaking changes for platform teams planning a safe upgrade.
✓ No known CVEs patched in this version
Topics
+14 more
ReleasePort's take
Light signalReleasePort Layer 1 v3.4.2 adds cost‑aware batch routing and cache fan‑out to the run loop while preserving all existing capabilities without migration effort.
Why it matters: Enforces release manifest integrity checks, ensuring MCP registry listings and Docker catalog entries point to identical signed images; no configuration changes are required for v3.4.1 users.
Summary
AI summaryCost‑aware batch routing and cache fan‑out are now live in the run loop.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
Enforces batch routing during dispatch based on adapter capabilities. Enforces batch routing during dispatch based on adapter capabilities. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Feature | Medium |
Wires cache-window fan-out into tournament fan-out for warm prompt prefix caching. Wires cache-window fan-out into tournament fan-out for warm prompt prefix caching. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Feature | Medium |
Runs adapter conformance suite on a real Windows CI runner for claude, codex, and gemini adapters. Runs adapter conformance suite on a real Windows CI runner for claude, codex, and gemini adapters. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Feature | Medium |
Introduces cross‑platform fake‑CLI test harness with Windows batch shim and Unix shell wrapper. Introduces cross‑platform fake‑CLI test harness with Windows batch shim and Unix shell wrapper. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Feature | Medium |
Reduces platform‑reason test skips; file‑mode, permission cases, and canary worktree round‑trip now run on all platforms. Reduces platform‑reason test skips; file‑mode, permission cases, and canary worktree round‑trip now run on all platforms. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Feature | Medium |
Adds `bernstein skills package image-verify` command to surface provenance verification verdict. Adds `bernstein skills package image-verify` command to surface provenance verification verdict. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Feature | Medium |
Enforces release manifest check to fail if MCP registry listing and Docker catalog entry point to different or unsigned images. Enforces release manifest check to fail if MCP registry listing and Docker catalog entry point to different or unsigned images. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Bugfix | Low |
No configuration migration is required; all v3.4.1 capabilities remain unchanged. No configuration migration is required; all v3.4.1 capabilities remain unchanged. Source: llm_adapter@2026-07-15 Confidence: high |
— |
Full changelog
v3.4.2
Released 2026-07-12.
A patch release on top of v3.4.1. It wires the cost-aware batch and cache
policies into the live run loop, runs the adapter conformance suite on a real
Windows CI runner, and makes the packaged distribution image verifiable. There
are no breaking changes and no configuration migration is required.
Cost-aware scheduling now live in the run loop
- Batch routing is enforced during dispatch. Before a single-task batch is
spawned, the run resolves the adapter that would run the task and takes the
capability-gated routing decision: a batch-eligible task reaches a provider
batch endpoint only on an adapter that has one, a task that is not
batch-eligible never routes to batch, and a batch-eligible task on an adapter
with no batch surface runs interactively rather than being faked onto a batch
path that does not exist. Each routing decision is recorded as a verifiable
cost.batch_routeaudit-chain entry. - Cache-window fan-out is wired into the tournament fan-out. When the resolved
adapter supports a prompt-cache window and the operator has opted in, one
warm-up call primes the shared prompt prefix before the sibling attempts
spawn, so each attempt hits the warm cache instead of racing to write it. The
feature stays off by default.
Windows conformance on a real Windows runner
- The adapter conformance suite for the claude, codex, and gemini adapters now
runs on awindows-latestCI runner and exercises the real spawn, stop, and
restart contract against a cross-platform fake-CLI harness, alongside the
Windows worktree-isolation contract. This replaces the previous mock-only
Windows coverage for those paths. - The fake-CLI test harness is cross-platform: it installs a batch shim on
Windows and a shell wrapper on Unix, and the fake reads its own configuration
so the same integration tests drive a real subprocess on every runner. - The count of platform-reason test skips is reduced, with the file-mode and
permission cases and the canary worktree round-trip now running on every
platform.
Packaging
- Signed-image provenance verification. The MCP registry listing and the Docker
catalog entry are checked, offline, to resolve to the same signed container
image pinned to the release version. A newbernstein skills package image-verifycommand surfaces the verdict, and the release manifest check
fails a release that would publish a listing pointing at a different or
unsigned image. The registry and plugin manifests are version-synced with the
release.
Upgrading
pipx upgrade bernstein # or: uv tool upgrade bernstein
No configuration migration is required. Every capability available in v3.4.1
is unchanged.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About chernistry/bernstein
Deterministic multi-agent orchestrator for 18 CLI coding agents (Claude Code, Codex, Cursor, Aider, Gemini CLI, OpenAI Agents SDK, and more). MCP server mode (stdio + HTTP/SSE) exposes the orchestrator to any MCP client. Git worktree isolation per agent, HMAC-chained audit trail, cost-aware model routing via contextual bandit. ~11K monthly PyPI downloads, Apache 2.0.
Related context
Related tools
Earlier breaking changes
- v3.7.1 `bernstein approve` and `bernstein reject` now enforce identifier regex `[A-Za-z0-9._-]{1,64}`.
- v3.7.1 Tampered mission ledger reports as unverified rather than not-found.
- v3.7.1 `mission define` now refuses phases without gate tasks.
- v3.5.0 MCP client, transport, and gateway become stateless; calls carry content‑derived trace IDs in _meta.
Beta — feedback welcome: [email protected]