docs(release): add v0.8.11 fix entries to CHANGELOG + update README What's New

- CHANGELOG: add YOLO sandbox, scroll lock, and capacity controller fixes
- README: replace v0.8.10 highlights with v0.8.11 cache-maxing + fixes
- Date corrected to 2026-05-04
This commit is contained in:
Hunter Bown
2026-05-04 23:50:15 -05:00
parent 4c783be52d
commit abc8751d81
2 changed files with 33 additions and 20 deletions
+24 -1
View File
@@ -5,7 +5,7 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [0.8.11] - 2026-05-05
## [0.8.11] - 2026-05-04
### Changed
- **Cache-maxing prompt path for DeepSeek V4** — the engine now skips
@@ -40,6 +40,29 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
`DEEPSEEK_TUI_QUIET_INSTALL=1`. Reported by a community user from China
whose install through a CN npm mirror took 18 minutes — the bottleneck
was the GitHub fetch, which CN npm mirrors do not proxy.
- **YOLO sandbox dropped to DangerFullAccess** — YOLO mode was still
routing shell commands through the WorkspaceWrite sandbox, which
intercepted legitimate outside-workspace writes (package installs,
sub-agent workspaces, `~/.cache`, brew, `npm install -g`, pipx) and
forced approval round-trips — contradicting the "no guardrails"
contract. YOLO already auto-approves all tools and enables trust mode;
the sandbox was the last residual restriction. Now uses
DangerFullAccess (no sandbox), consistent with the full YOLO posture.
- **Scroll position lock preserved across render resolve** — user
scroll-up during live streaming was being yanked back to the live tail
on the next chunk. The `user_scrolled_during_stream` lock was cleared
prematurely when content briefly fit in one screen, or when the
transcript shrank between renders (e.g. sub-agent card collapsed).
Fixed by snapshotting the prior tail state before `resolve_top` and
only clearing the lock when the user was deliberately at the bottom.
- **Capacity controller disabled by default** — the capacity controller
was silently clearing the transcript (`messages.clear()`) based on
slack-based `p_fail` calculations, independent of token utilization or
the `auto_compact` setting. This contradicted the v0.8.11 default of
`auto_compact = false` — the user opted into trusting the model with
the full 1M-token V4 window, and the controller was auto-managing the
prefix on their behalf. The controller now defaults to `enabled = false`;
power users can opt in via `capacity.enabled = true`.
### Docs
- **README clarity pass** (#685) — title-cased section headings, an explicit
+9 -19
View File
@@ -163,27 +163,17 @@ SGLANG_BASE_URL="http://localhost:30000/v1" deepseek --provider sglang --model d
---
## What's New In v0.8.10
## What's New In v0.8.11
A patch release: hotfixes, UX polish, and runtime API additions for the whalescale desktop integration. No breaking changes. [Full changelog](CHANGELOG.md).
A targeted patch for the V4 cache-maxing overhaul plus three runtime fixes discovered in YOLO long-session dogfooding. [Full changelog](CHANGELOG.md).
- **Stacked toast overlay** — status toasts queue and render together instead of overwriting each other
- **File @-mention frecency** — file mention suggestions learn from recent selections (`~/.deepseek/file-frecency.jsonl`)
- **Runtime API expansion**CORS origins config, full thread editing (`PATCH /v1/threads/{id}`), `archived_only` query filter, aggregate usage endpoint (`GET /v1/usage?group_by=day|model|provider|thread`)
- **Language picker on first run** — new onboarding step selects locale before entering the API key
- **OPENCODE shell.env hook** — lifecycle hooks can inject shell environment into spawned commands
- **Cache-aware compaction** — compaction calls reuse cached prompt prefixes, cutting `/compact` costs significantly
- **glibc 2.28 baseline** — prebuilts now target glibc 2.28 (via `cargo zigbuild`), covering older distros; npm postinstall fails fast with a clear source-build message when incompatible
- **Better markdown rendering** — transcript now handles tables, bold/italic, and horizontal rules; no more infinite loops on unclosed markers
- **MCP SIGTERM on shutdown** — stdio servers receive SIGTERM with a 2-second grace period instead of SIGKILL
- **Shell-child PDEATHSIG on Linux** — children auto-SIGTERM when the parent exits, closing a leak window
- **Windows Terminal paste fix** — Ctrl/Cmd+V during onboarding now works correctly
- **Terminal startup repaint** — no more stale background rows above the first frame
- **Slash-prefix Enter activation** — typing `/mo` and pressing Enter activates the first match
- **Shell `cwd` boundary validation** — path escape returns `PathEscape` on out-of-workspace `cwd`, consistent with file tools
**6 first-time contributors:** [@staryxchen](https://github.com/staryxchen) (#556), [@shentoumengxin](https://github.com/shentoumengxin) (#524), [@Vishnu1837](https://github.com/Vishnu1837) (#565), [@20bytes](https://github.com/20bytes) (#569), [@loongmiaow-pixel](https://github.com/loongmiaow-pixel) (#578), [@WyxBUPT-22](https://github.com/WyxBUPT-22) (#579).
Thanks also to [@lloydzhou](https://github.com/lloydzhou), [@jeoor](https://github.com/jeoor), [@toi500](https://github.com/toi500), [@xsstomy](https://github.com/xsstomy), and [@melody0709](https://github.com/melody0709) for bug reports.
- **Cache-maxing prompt path for DeepSeek V4** — the engine skips system-prompt reassembly when the stable prefix is unchanged, moves the working-set summary out of the system prompt into per-turn metadata, and anchors the tool array with `cache_control: ephemeral`. Net effect: fewer prefix rewrites, higher cache-hit rates, lower cost per turn.
- **500K token compaction floor** — automatic compaction refuses below 500K tokens; manual `/compact` still bypasses. The message-count trigger (a 128K-era heuristic) is removed — token budget is the sole auto-trigger.
- **`npm install` resilience** — retry with exponential backoff, per-attempt timeout + stall detector, `HTTPS_PROXY`/`HTTP_PROXY`/`NO_PROXY` support (pure Node, no new deps), and download progress to stderr. Driven by a community report from China where `npm install` took 18 minutes through a CN mirror.
- **YOLO sandbox dropped** — YOLO now uses DangerFullAccess (no sandbox), consistent with its auto-approval + trust mode posture. Previously, the WorkspaceWrite sandbox was intercepting legitimate outside-workspace writes.
- **Scroll lock preserved during live streaming** — scrolling up mid-stream no longer gets yanked back to the tail on the next chunk. The `user_scrolled_during_stream` lock now survives render-time clamping.
- **Capacity controller off by default** — the controller was silently clearing transcripts independent of token usage or `auto_compact` settings. Now defaults to disabled; opt-in via `capacity.enabled = true`.
- **README clarity pass** (#685) — title-cased headings, explicit prerequisites, China-friendly install variant. *Thanks to [@Agent-Skill-007](https://github.com/Agent-Skill-007) for this PR.*
---