9366a7c5f3
Final step in the v0.8.11 patch release. Bumps the workspace `Cargo.toml`, all 9 internal path-dep version pins, and `npm/deepseek-tui/package.json` to **0.8.11**. `Cargo.lock` regenerated alongside. The v0.8.11 CHANGELOG entry already landed on `main` via the cache-maxing overhaul PR (#684). This commit only stamps the version. Together they ship: * **Cache-maxing for V4 1M context** — engine no longer rebuilds the system prompt on every turn (#684's `Session::last_system_prompt_hash`), the volatile working-set summary moved out of the system prompt into per-turn `<turn_meta>` on the latest user message, the tool array is anchored with `cache_control: ephemeral`, and the `messages_with_turn_metadata` injection skips tool-result messages so the assistant→tool_result invariant stays intact. * **500K compaction floor** — automatic compaction refuses below 500K tokens via `MINIMUM_AUTO_COMPACTION_TOKENS`. Manual `/compact` bypasses (explicit user agency). * **Token-only compaction trigger** — dropped `CompactionConfig::message_threshold` and the message-count branch in `should_compact`; that 128K-era heuristic only fired on long sessions of small messages, exactly the case where rewriting the V4 prefix cache is most wasteful. * **Legacy 128K naming** — `DEFAULT_CONTEXT_WINDOW_TOKENS` → `LEGACY_DEEPSEEK_CONTEXT_WINDOW_TOKENS`. * **`npm install` resilience** — `install.js` now retries with exponential backoff, enforces per-attempt timeout + 30 s stall detector, honors `HTTPS_PROXY` / `HTTP_PROXY` / `NO_PROXY` (pure Node, no new dependencies), and prints download progress to stderr. Driven by a community report that `npm install` took 18 minutes through a CN npm mirror; the GitHub Releases binary fetch was the bottleneck and CN mirrors don't proxy GitHub. Verified locally: * cargo fmt --all -- --check ✓ * cargo clippy --workspace --all-targets --all-features --locked -- -D warnings ✓ * cargo test --workspace --all-features --locked ✓ * parity gates (snapshot, parity_protocol, parity_state) ✓ * bash scripts/release/check-versions.sh ✓ (workspace=0.8.11, npm=0.8.11, lockfile in sync) * node scripts/release/npm-wrapper-smoke.js ✓ Reminder for the maintainer at release time: the npm publish is manual and requires 2FA OTP on every publish. After this PR merges and the GitHub Release is fully drafted by `auto-tag.yml`, publish from a developer machine: cd npm/deepseek-tui npm publish --access public The `prepublishOnly` hook checks all eight binaries plus the SHA256 manifest are present on the GitHub Release before letting `npm publish` proceed, so this must happen *after* the GitHub Release is finalized. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
46 lines
1.2 KiB
TOML
46 lines
1.2 KiB
TOML
[workspace]
|
|
members = [
|
|
"crates/agent",
|
|
"crates/app-server",
|
|
"crates/cli",
|
|
"crates/config",
|
|
"crates/core",
|
|
"crates/execpolicy",
|
|
"crates/hooks",
|
|
"crates/mcp",
|
|
"crates/protocol",
|
|
"crates/secrets",
|
|
"crates/state",
|
|
"crates/tools",
|
|
"crates/tui",
|
|
"crates/tui-core",
|
|
]
|
|
default-members = ["crates/cli", "crates/app-server", "crates/tui"]
|
|
resolver = "2"
|
|
|
|
[workspace.package]
|
|
version = "0.8.11"
|
|
edition = "2024"
|
|
license = "MIT"
|
|
repository = "https://github.com/Hmbown/DeepSeek-TUI"
|
|
|
|
[workspace.dependencies]
|
|
anyhow = "1.0.100"
|
|
async-trait = "0.1.89"
|
|
axum = { version = "0.8.5", features = ["json"] }
|
|
chrono = { version = "0.4.43", features = ["serde"] }
|
|
clap = { version = "4.5.54", features = ["derive"] }
|
|
clap_complete = "4.5"
|
|
dirs = "6.0.0"
|
|
reqwest = { version = "0.13.1", default-features = false, features = ["json", "rustls"] }
|
|
rusqlite = { version = "0.32.1", features = ["bundled"] }
|
|
serde = { version = "1.0.228", features = ["derive"] }
|
|
serde_json = "1.0.149"
|
|
thiserror = "2.0"
|
|
tokio = { version = "1.49.0", features = ["full"] }
|
|
toml = "0.9.7"
|
|
sha2 = "0.10"
|
|
tower-http = { version = "0.6", features = ["cors"] }
|
|
tracing = "0.1"
|
|
uuid = { version = "1.11", features = ["v4"] }
|