Skip to content

release: 0.18.1 - #157

Merged
yuanhao merged 1 commit into
mainfrom
release/0.18.1
Aug 23, 2026
Merged

release: 0.18.1#157
yuanhao merged 1 commit into
mainfrom
release/0.18.1

Conversation

@yuanhao

@yuanhao yuanhao commented Aug 23, 2026

Copy link
Copy Markdown
Collaborator

Two commits since v0.18.0. Patch — no API change.

Fixed

Summarization retries panicked in debug builds. RetryConfig::delay_for_attempt documents a 1-indexed attempt and computes attempt - 1; llm_compaction.rs passed the raw 0..=max_retries loop variable, so the first retry underflowed usize. agent_loop.rs increments before calling and was correct — this was confined to compaction.

It landed on a detached task, so nothing surfaced: the summarization vanished, no briefing arrived, and compaction fell back deterministically. That is one of the behaviours #150 was filed about, so some of those fallbacks were this rather than summarizer speed.

A briefing rejected on fingerprint mismatch now reports what it cost. The event carried summary: None, so cost accounting off SummaryStats under-counted the most wasteful failure — contradicting the contract types.rs states explicitly.

Added

LlmCompaction says so when briefings keep losing the race. After five consecutive deterministic fallbacks it warns once, naming the likely cause; a splice that lands resets the streak and clears the latch. Gated on a request having actually been issued, so it cannot claim a cost in the inert configuration.

The module docs now lead with the summarizer choice, which is the actual cause: reusing the loop's ModelConfig is the obvious call and, for a slow loop model, the worst one.

Verification

Tests 627 passed, 0 failed
Clippy clean under -Dwarnings
Feature combos default / openapi / gasp green
Live price audit 26 compared, 0 drifted

Release commit is exactly two files — Cargo.lock is gitignored.

Still open: #150compact_headroom_turns defaults to Some(30), pinning the target ratio to its 0.15 floor for tool-heavy work. That is a defaults change for every user and wants measurement across growth rates first.

🤖 Generated with Claude Code

Two commits since v0.18.0. Patch — no API change.

Fixes a debug-build panic on summarization retries: delay_for_attempt
documents a 1-indexed attempt and computes attempt - 1, and
llm_compaction.rs passed the raw 0-indexed loop variable. The panic
landed on a detached task, so the summarization vanished silently and
compaction fell back deterministically.

Adds a one-shot warning when LlmCompaction briefings keep losing the race
to the budget, gated on a request having actually been issued and on the
briefing surviving into the result, and reports the cost of a briefing
rejected on fingerprint mismatch.

627 tests, clippy clean under -Dwarnings, live price audit 26 compared /
0 drifted.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@yuanhao
yuanhao merged commit 4a053af into main Aug 23, 2026
16 checks passed
@yuanhao
yuanhao deleted the release/0.18.1 branch August 23, 2026 09:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant