release: bump workspace to 0.9.10 (candidate)

Version surfaces moved together: workspace Cargo.toml, all 21 crate
dependency pins, Cargo.lock (workspace crates only — zero external changes),
CHANGELOG slice with the 0.9.10 section and compare link, crates/tui
CHANGELOG sync, web facts (derive-facts), npm/codewhale, npm/runtime-sdk,
extensions/vscode, and the remote-smoke default tag.

check-versions.sh: 0 errors. This is the candidate label only — no tag, no
package publication, no release creation.
This commit is contained in:
Codewhale
2026-08-18 16:19:23 -07:00
committed by CodeWhale Bot
parent 54b89c2df7
commit 610d3091c0
25 changed files with 181 additions and 164 deletions
+43 -2
View File
@@ -7,11 +7,51 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased]
## [0.9.10] - Unreleased candidate
Codewhale v0.9.10 is a retention-and-identity release: the shell and
transcript can no longer retain unbounded tool output in memory or on disk,
mid-turn history inserts no longer strand in-flight tool rows, every agent
that ran this session is visible from `/agents list`, the PTY acceptance
lane has a stall watchdog and bounded CI steps, approval outcomes are
durable and fail closed (cyq1017, #5360), and three $HOME disk leaks are
reclaimed. Test threads get an 8 MiB stack so the lib suite can no longer
abort under load.
### Fixed
- `fix(tui): rebase active-cell tool bindings on every mid-turn history
insert` — `/rename` mid-turn left the running tool row spinning forever
(#5478).
- `fix(tui): bound what the shell and transcript retain from tool output`
a 1.1 MB Bash call kept over a megabyte resident for up to an hour; raw
streams now cap at 16 MiB in flight and release delivered output, and
retained tool outputs cap at 64 KiB per record / 8 MiB per transcript
(#5472).
- `fix(tui): reclaim the three $HOME disk leaks` — orphaned session dirs,
the unbounded audit.log, and stranded writer temp files.
- `fix(tui): persist approval outcomes before execution` (cyq1017) —
approval receipts are committed to a session-owned log before execution
proceeds; unpersistable evidence blocks the tool; resume reconstructs
closed and interrupted approvals (#5360).
- `test(tui): break the LazyLock/env-barrier deadlock in the test harness`.
- `ci: give test threads the 8 MiB stack they need` — the lib suite aborted
with SIGABRT under load on the default 2 MiB stack.
### Added
- The TUI header now identifies the active repository or linked worktree before
the branch and dirty marker, so operators can see where the agent is working
- `feat(tui): show repository context in git chrome` (wuisabel-gif) — the TUI
header now identifies the active repository or linked worktree before the
branch and dirty marker, so operators can see where the agent is working
without opening the worktree manager (#5437).
- `feat(tui): first slice of the agents roster` — every agent that ran this
session, receipts-only, via `/agents list` and the sidebar fan-out rows
(#5479 spec items 1 and 5).
- `ci: bound PTY acceptance and add a stall watchdog to the harness`
QA_PTY_STALL_TIMEOUT_SECS aborts a wedged PTY run with a diagnostic;
the isolated PTY step is capped at 15 minutes; Windows NSIS provisioning
gets a bounded retry (#5496).
- `chore(scripts): dev-cache warns before it fills a disk` (#5465 class).
## [0.9.9] - 2026-08-18
@@ -6190,6 +6230,7 @@ overflow report and `/theme` picker edge-wrapping patch in #1814.
Older releases (v0.8.39 and earlier) are archived in [docs/CHANGELOG_ARCHIVE.md](docs/CHANGELOG_ARCHIVE.md).
[Unreleased]: https://github.com/Hmbown/CodeWhale/compare/v0.9.9...HEAD
[0.9.10]: https://github.com/Hmbown/CodeWhale/compare/v0.9.9...v0.9.10
[0.9.9]: https://github.com/Hmbown/CodeWhale/compare/v0.9.8...v0.9.9
[0.9.8]: https://github.com/Hmbown/CodeWhale/compare/v0.9.7...v0.9.8
[0.9.7]: https://github.com/Hmbown/CodeWhale/compare/v0.9.6...v0.9.7
Generated
+21 -21
View File
@@ -757,7 +757,7 @@ dependencies = [
[[package]]
name = "codewhale-agent"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"codewhale-config",
"serde",
@@ -765,7 +765,7 @@ dependencies = [
[[package]]
name = "codewhale-app-server"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"anyhow",
"axum",
@@ -793,11 +793,11 @@ dependencies = [
[[package]]
name = "codewhale-build-support"
version = "0.9.9"
version = "0.9.10"
[[package]]
name = "codewhale-cli"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"anyhow",
"chrono",
@@ -837,14 +837,14 @@ dependencies = [
[[package]]
name = "codewhale-command-contract"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"codewhale-core",
]
[[package]]
name = "codewhale-config"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"anyhow",
"codewhale-execpolicy",
@@ -864,7 +864,7 @@ dependencies = [
[[package]]
name = "codewhale-core"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"anyhow",
"async-trait",
@@ -890,7 +890,7 @@ dependencies = [
[[package]]
name = "codewhale-execpolicy"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"anyhow",
"codewhale-protocol",
@@ -899,7 +899,7 @@ dependencies = [
[[package]]
name = "codewhale-hooks"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"anyhow",
"async-trait",
@@ -914,7 +914,7 @@ dependencies = [
[[package]]
name = "codewhale-lane"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"anyhow",
"chrono",
@@ -929,7 +929,7 @@ dependencies = [
[[package]]
name = "codewhale-mcp"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"anyhow",
"serde",
@@ -939,14 +939,14 @@ dependencies = [
[[package]]
name = "codewhale-paths"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"dirs",
]
[[package]]
name = "codewhale-protocol"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"chrono",
"serde",
@@ -956,7 +956,7 @@ dependencies = [
[[package]]
name = "codewhale-release"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"anyhow",
"reqwest 0.13.4",
@@ -970,7 +970,7 @@ dependencies = [
[[package]]
name = "codewhale-secrets"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"chrono",
"codewhale-paths",
@@ -985,7 +985,7 @@ dependencies = [
[[package]]
name = "codewhale-state"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"anyhow",
"chrono",
@@ -1000,7 +1000,7 @@ dependencies = [
[[package]]
name = "codewhale-telemetry"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"anyhow",
"chrono",
@@ -1020,7 +1020,7 @@ dependencies = [
[[package]]
name = "codewhale-tools"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"anyhow",
"async-trait",
@@ -1034,7 +1034,7 @@ dependencies = [
[[package]]
name = "codewhale-tui"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"ahash",
"anyhow",
@@ -1130,7 +1130,7 @@ dependencies = [
[[package]]
name = "codewhale-workflow"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"serde",
"serde_json",
@@ -1142,7 +1142,7 @@ dependencies = [
[[package]]
name = "codewhale-workflow-js"
version = "0.9.9"
version = "0.9.10"
dependencies = [
"async-trait",
"jsonschema",
+1 -1
View File
@@ -26,7 +26,7 @@ default-members = ["crates/cli"]
resolver = "2"
[workspace.package]
version = "0.9.9"
version = "0.9.10"
edition = "2024"
# Rust 1.88 stabilized `let_chains` in `if`/`while` conditions, which the
# codebase relies on extensively. Cargo enforces this so users on older
+1 -1
View File
@@ -8,5 +8,5 @@ repository.workspace = true
description = "Model/provider registry and fallback strategy for Codewhale"
[dependencies]
codewhale-config = { path = "../config", version = "0.9.9" }
codewhale-config = { path = "../config", version = "0.9.10" }
serde.workspace = true
+10 -10
View File
@@ -12,16 +12,16 @@ autobins = false
[dependencies]
anyhow.workspace = true
axum.workspace = true
codewhale-agent = { path = "../agent", version = "0.9.9" }
codewhale-config = { path = "../config", version = "0.9.9" }
codewhale-core = { path = "../core", version = "0.9.9" }
codewhale-execpolicy = { path = "../execpolicy", version = "0.9.9" }
codewhale-hooks = { path = "../hooks", version = "0.9.9" }
codewhale-mcp = { path = "../mcp", version = "0.9.9" }
codewhale-protocol = { path = "../protocol", version = "0.9.9" }
codewhale-release = { path = "../release", version = "0.9.9" }
codewhale-state = { path = "../state", version = "0.9.9" }
codewhale-tools = { path = "../tools", version = "0.9.9" }
codewhale-agent = { path = "../agent", version = "0.9.10" }
codewhale-config = { path = "../config", version = "0.9.10" }
codewhale-core = { path = "../core", version = "0.9.10" }
codewhale-execpolicy = { path = "../execpolicy", version = "0.9.10" }
codewhale-hooks = { path = "../hooks", version = "0.9.10" }
codewhale-mcp = { path = "../mcp", version = "0.9.10" }
codewhale-protocol = { path = "../protocol", version = "0.9.10" }
codewhale-release = { path = "../release", version = "0.9.10" }
codewhale-state = { path = "../state", version = "0.9.10" }
codewhale-tools = { path = "../tools", version = "0.9.10" }
serde.workspace = true
serde_json.workspace = true
rustls.workspace = true
+14 -14
View File
@@ -15,19 +15,19 @@ path = "src/main.rs"
anyhow.workspace = true
clap.workspace = true
clap_complete.workspace = true
codewhale-tui = { path = "../tui", version = "0.9.9" }
codewhale-agent = { path = "../agent", version = "0.9.9" }
codewhale-app-server = { path = "../app-server", version = "0.9.9" }
codewhale-config = { path = "../config", version = "0.9.9" }
codewhale-lane = { path = "../lane", version = "0.9.9" }
codewhale-workflow = { path = "../workflow", version = "0.9.9" }
codewhale-execpolicy = { path = "../execpolicy", version = "0.9.9" }
codewhale-mcp = { path = "../mcp", version = "0.9.9" }
codewhale-paths = { path = "../paths", version = "0.9.9" }
codewhale-release = { path = "../release", version = "0.9.9" }
codewhale-secrets = { path = "../secrets", version = "0.9.9" }
codewhale-state = { path = "../state", version = "0.9.9" }
codewhale-telemetry = { path = "../telemetry", version = "0.9.9" }
codewhale-tui = { path = "../tui", version = "0.9.10" }
codewhale-agent = { path = "../agent", version = "0.9.10" }
codewhale-app-server = { path = "../app-server", version = "0.9.10" }
codewhale-config = { path = "../config", version = "0.9.10" }
codewhale-lane = { path = "../lane", version = "0.9.10" }
codewhale-workflow = { path = "../workflow", version = "0.9.10" }
codewhale-execpolicy = { path = "../execpolicy", version = "0.9.10" }
codewhale-mcp = { path = "../mcp", version = "0.9.10" }
codewhale-paths = { path = "../paths", version = "0.9.10" }
codewhale-release = { path = "../release", version = "0.9.10" }
codewhale-secrets = { path = "../secrets", version = "0.9.10" }
codewhale-state = { path = "../state", version = "0.9.10" }
codewhale-telemetry = { path = "../telemetry", version = "0.9.10" }
chrono.workspace = true
console = "0.16.3"
dirs.workspace = true
@@ -45,7 +45,7 @@ webbrowser = "1.0"
zeroize = "1.8.2"
[build-dependencies]
codewhale-build-support = { path = "../build-support", version = "0.9.9" }
codewhale-build-support = { path = "../build-support", version = "0.9.10" }
# Parent-death cleanup for delegated server children (#3259): on Linux the
# dispatcher sets PR_SET_PDEATHSIG so the child is signalled if the dispatcher
+1 -1
View File
@@ -8,4 +8,4 @@ repository.workspace = true
description = "Prototype command capability and dispatch shapes for the staged TUI command extraction"
[dependencies]
codewhale-core = { path = "../core", version = "0.9.9" }
codewhale-core = { path = "../core", version = "0.9.10" }
+3 -3
View File
@@ -9,9 +9,9 @@ description = "Config schema and precedence model for Codewhale"
[dependencies]
anyhow.workspace = true
codewhale-execpolicy = { path = "../execpolicy", version = "0.9.9" }
codewhale-paths = { path = "../paths", version = "0.9.9" }
codewhale-secrets = { path = "../secrets", version = "0.9.9" }
codewhale-execpolicy = { path = "../execpolicy", version = "0.9.10" }
codewhale-paths = { path = "../paths", version = "0.9.10" }
codewhale-secrets = { path = "../secrets", version = "0.9.10" }
fd-lock = "4.0.4"
libc = "0.2"
serde.workspace = true
+8 -8
View File
@@ -13,14 +13,14 @@ chrono.workspace = true
serde.workspace = true
thiserror.workspace = true
tokio-util.workspace = true
codewhale-agent = { path = "../agent", version = "0.9.9" }
codewhale-config = { path = "../config", version = "0.9.9" }
codewhale-execpolicy = { path = "../execpolicy", version = "0.9.9" }
codewhale-hooks = { path = "../hooks", version = "0.9.9" }
codewhale-mcp = { path = "../mcp", version = "0.9.9" }
codewhale-protocol = { path = "../protocol", version = "0.9.9" }
codewhale-state = { path = "../state", version = "0.9.9" }
codewhale-tools = { path = "../tools", version = "0.9.9" }
codewhale-agent = { path = "../agent", version = "0.9.10" }
codewhale-config = { path = "../config", version = "0.9.10" }
codewhale-execpolicy = { path = "../execpolicy", version = "0.9.10" }
codewhale-hooks = { path = "../hooks", version = "0.9.10" }
codewhale-mcp = { path = "../mcp", version = "0.9.10" }
codewhale-protocol = { path = "../protocol", version = "0.9.10" }
codewhale-state = { path = "../state", version = "0.9.10" }
codewhale-tools = { path = "../tools", version = "0.9.10" }
regex = "1.11"
serde_json = { workspace = true, features = ["preserve_order"] }
tokio = { workspace = true, features = ["time"] }
+1 -1
View File
@@ -9,5 +9,5 @@ description = "Execution policy and approval model for Codewhale"
[dependencies]
anyhow.workspace = true
codewhale-protocol = { path = "../protocol", version = "0.9.9" }
codewhale-protocol = { path = "../protocol", version = "0.9.10" }
serde.workspace = true
+2 -2
View File
@@ -11,8 +11,8 @@ description = "Hook dispatch and notifications support for Codewhale"
anyhow.workspace = true
async-trait.workspace = true
chrono.workspace = true
codewhale-protocol = { path = "../protocol", version = "0.9.9" }
codewhale-release = { path = "../release", version = "0.9.9" }
codewhale-protocol = { path = "../protocol", version = "0.9.10" }
codewhale-release = { path = "../release", version = "0.9.10" }
reqwest.workspace = true
serde.workspace = true
serde_json.workspace = true
+1 -1
View File
@@ -10,7 +10,7 @@ description = "Lane registry and Runtime backends for Codewhale workflow instanc
[dependencies]
anyhow.workspace = true
chrono.workspace = true
codewhale-config = { path = "../config", version = "0.9.9" }
codewhale-config = { path = "../config", version = "0.9.10" }
fd-lock = "4.0.4"
serde.workspace = true
serde_json.workspace = true
+1 -1
View File
@@ -8,7 +8,7 @@ repository.workspace = true
description = "Secret storage backends for Codewhale, with OS keyring and file fallback"
[dependencies]
codewhale-paths = { path = "../paths", version = "0.9.9" }
codewhale-paths = { path = "../paths", version = "0.9.10" }
chrono.workspace = true
serde = { workspace = true }
serde_json = { workspace = true }
+2 -2
View File
@@ -10,8 +10,8 @@ description = "Session/thread persistence and recovery model for Codewhale"
[dependencies]
anyhow.workspace = true
chrono.workspace = true
codewhale-paths = { path = "../paths", version = "0.9.9" }
codewhale-protocol = { path = "../protocol", version = "0.9.9" }
codewhale-paths = { path = "../paths", version = "0.9.10" }
codewhale-protocol = { path = "../protocol", version = "0.9.10" }
fd-lock = "4.0.4"
rusqlite.workspace = true
serde.workspace = true
+5 -5
View File
@@ -10,9 +10,9 @@ description = "Anonymous, user-disableable product usage counting for Codewhale"
[dependencies]
anyhow.workspace = true
chrono.workspace = true
codewhale-config = { path = "../config", version = "0.9.9" }
codewhale-paths = { path = "../paths", version = "0.9.9" }
codewhale-release = { path = "../release", version = "0.9.9" }
codewhale-config = { path = "../config", version = "0.9.10" }
codewhale-paths = { path = "../paths", version = "0.9.10" }
codewhale-release = { path = "../release", version = "0.9.10" }
fd-lock = "4.0.4"
reqwest = { workspace = true, features = ["blocking"] }
serde.workspace = true
@@ -22,9 +22,9 @@ tracing.workspace = true
uuid.workspace = true
[build-dependencies]
codewhale-build-support = { path = "../build-support", version = "0.9.9" }
codewhale-build-support = { path = "../build-support", version = "0.9.10" }
[dev-dependencies]
# Used as an *assertion*, never as a filter: every string leaf of a serialized
# batch is run through `redact_for_disclosure` and must come back unredacted.
codewhale-workflow = { path = "../workflow", version = "0.9.9" }
codewhale-workflow = { path = "../workflow", version = "0.9.10" }
+1 -1
View File
@@ -10,7 +10,7 @@ description = "Tool invocation lifecycle, schema validation, and scheduler paral
[dependencies]
anyhow.workspace = true
async-trait.workspace = true
codewhale-protocol = { path = "../protocol", version = "0.9.9" }
codewhale-protocol = { path = "../protocol", version = "0.9.10" }
serde.workspace = true
serde_json.workspace = true
thiserror.workspace = true
+42 -66
View File
@@ -7,11 +7,51 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased]
## [0.9.10] - Unreleased candidate
Codewhale v0.9.10 is a retention-and-identity release: the shell and
transcript can no longer retain unbounded tool output in memory or on disk,
mid-turn history inserts no longer strand in-flight tool rows, every agent
that ran this session is visible from `/agents list`, the PTY acceptance
lane has a stall watchdog and bounded CI steps, approval outcomes are
durable and fail closed (cyq1017, #5360), and three $HOME disk leaks are
reclaimed. Test threads get an 8 MiB stack so the lib suite can no longer
abort under load.
### Fixed
- `fix(tui): rebase active-cell tool bindings on every mid-turn history
insert` — `/rename` mid-turn left the running tool row spinning forever
(#5478).
- `fix(tui): bound what the shell and transcript retain from tool output` —
a 1.1 MB Bash call kept over a megabyte resident for up to an hour; raw
streams now cap at 16 MiB in flight and release delivered output, and
retained tool outputs cap at 64 KiB per record / 8 MiB per transcript
(#5472).
- `fix(tui): reclaim the three $HOME disk leaks` — orphaned session dirs,
the unbounded audit.log, and stranded writer temp files.
- `fix(tui): persist approval outcomes before execution` (cyq1017) —
approval receipts are committed to a session-owned log before execution
proceeds; unpersistable evidence blocks the tool; resume reconstructs
closed and interrupted approvals (#5360).
- `test(tui): break the LazyLock/env-barrier deadlock in the test harness`.
- `ci: give test threads the 8 MiB stack they need` — the lib suite aborted
with SIGABRT under load on the default 2 MiB stack.
### Added
- The TUI header now identifies the active repository or linked worktree before
the branch and dirty marker, so operators can see where the agent is working
- `feat(tui): show repository context in git chrome` (wuisabel-gif) — the TUI
header now identifies the active repository or linked worktree before the
branch and dirty marker, so operators can see where the agent is working
without opening the worktree manager (#5437).
- `feat(tui): first slice of the agents roster` — every agent that ran this
session, receipts-only, via `/agents list` and the sidebar fan-out rows
(#5479 spec items 1 and 5).
- `ci: bound PTY acceptance and add a stall watchdog to the harness` —
QA_PTY_STALL_TIMEOUT_SECS aborts a wedged PTY run with a diagnostic;
the isolated PTY step is capped at 15 minutes; Windows NSIS provisioning
gets a bounded retry (#5496).
- `chore(scripts): dev-cache warns before it fills a disk` (#5465 class).
## [0.9.9] - 2026-08-18
@@ -3827,70 +3867,6 @@ reproductions shaped v0.9.0:
remains available through `?connect=true`. `doctor` now warns on relative-path
stdio MCP commands without `cwd`.
## [0.8.64] - 2026-06-22
### Added
- **Seamless auto-compaction defaults.** Known large-context routes now keep
automatic compaction on by default while carrying summaries forward through
the stable prompt path, reducing surprise context loss without changing
explicit opt-out behavior.
- **Runtime web automation readiness.** Local app automation gains a
loopback-only dev-server readiness primitive so agents can wait for TCP and
optional HTTP health checks before browser verification. Harvested from
#3376 by @cyq1017.
- **Model and integration polish.** `/model pro` and `/model flash` shortcuts
now resolve to the current DeepSeek V4 routes while preserving existing model
IDs. Harvested from #3350 by @KUK4. The WeCom bridge landed with
maintainer follow-up hardening for state permissions and chat-facing error
reporting, from #3370 by @pkeging.
### Fixed
- **Security and trust-boundary hardening.** Project-local config can no longer
loosen user-owned shell or instruction-file policy, file edits now require a
fresh read of the target file, git history inputs reject option-shaped or
control-character revisions, interactive execution surfaces require approval,
and local tool paths are narrowed through workspace/root validation.
- **Runtime and diagnostics redaction.** Generated runtime/app-server tokens,
raw session lineage identifiers, provider registry drift values, review
receipt internals, and webhook URLs are no longer echoed into human-facing
logs or diagnostics.
- **Network and alert safety.** Provider TLS verification bypass requests now
fail closed, fleet alert webhooks require HTTPS, fetch URL hostnames are
resolved before requests, and runtime mobile auth no longer relies on
token-bearing URLs.
- **Path-state hardening.** Config sibling files, project MCP cwd values,
runtime thread store files, sub-agent state, project-local state roots, and
app-server sidecar config paths now resolve through checked roots before
reads/writes.
- **Release CI repair.** Nightly cross-target builds install Rust targets
explicitly and retry transient cargo failures; auto-tag runs are serialized
and treat an already-created remote tag as a no-op. Safe slices harvested
from #3374 by @donglovejava.
- **Provider wait and sidebar regressions.** Provider-wait footers suppress
noisy countdowns until useful while keeping timeout warnings visible,
harvested from #3375 by @idling11. The pinned sidebar can render at a
narrower 64-column boundary, harvested from #3371 by @donglovejava.
- **Delegated server cleanup.** Delegated `serve` / `app-server` children gain
OS-level parent-death cleanup on supported platforms, completing the #3259
follow-up from #3378 and #3317 by @wuisabel-gif.
- **ACP and sandbox correctness.** ACP sessions preserve multi-turn
conversation history across prompt turns, harvested from #3372 by @xulongzhe.
Worktree Git metadata writes are allowed through sandbox policy without
broad trust-mode escalation, from #3356 by @cyq1017 and the #3355 report by
@linletian.
### Changed
- **Community and dependency harvests.** The release train carries focused
community-credit slices from #3379 by @greyfreedom, #3348 by @nightt5879,
#3346 by @hongqitai, #3345/#3333 by @cyq1017, and Dependabot updates for
`windows`, `toml`, `tokio`, `lru`, `similar`, and web tooling security locks.
- **Public release surface cleanup.** Benchmark-specific materials were kept
out of the public release repo; benchmark source fragments belong in the
separate `codewhale-bench` lane.
---
Older releases: [CHANGELOG.md](https://github.com/Hmbown/CodeWhale/blob/main/CHANGELOG.md) and [docs/CHANGELOG_ARCHIVE.md](https://github.com/Hmbown/CodeWhale/blob/main/docs/CHANGELOG_ARCHIVE.md).
+14 -14
View File
@@ -27,19 +27,19 @@ path = "src/main.rs"
[dependencies]
ahash = "0.8"
anyhow.workspace = true
codewhale-config = { path = "../config", version = "0.9.9" }
codewhale-command-contract = { path = "../command-contract", version = "0.9.9" }
codewhale-core = { path = "../core", version = "0.9.9" }
codewhale-execpolicy = { path = "../execpolicy", version = "0.9.9" }
codewhale-lane = { path = "../lane", version = "0.9.9" }
codewhale-paths = { path = "../paths", version = "0.9.9" }
codewhale-protocol = { path = "../protocol", version = "0.9.9" }
codewhale-release = { path = "../release", version = "0.9.9" }
codewhale-secrets = { path = "../secrets", version = "0.9.9" }
codewhale-telemetry = { path = "../telemetry", version = "0.9.9" }
codewhale-tools = { path = "../tools", version = "0.9.9" }
codewhale-workflow = { path = "../workflow", version = "0.9.9" }
codewhale-workflow-js = { path = "../workflow-js", version = "0.9.9" }
codewhale-config = { path = "../config", version = "0.9.10" }
codewhale-command-contract = { path = "../command-contract", version = "0.9.10" }
codewhale-core = { path = "../core", version = "0.9.10" }
codewhale-execpolicy = { path = "../execpolicy", version = "0.9.10" }
codewhale-lane = { path = "../lane", version = "0.9.10" }
codewhale-paths = { path = "../paths", version = "0.9.10" }
codewhale-protocol = { path = "../protocol", version = "0.9.10" }
codewhale-release = { path = "../release", version = "0.9.10" }
codewhale-secrets = { path = "../secrets", version = "0.9.10" }
codewhale-telemetry = { path = "../telemetry", version = "0.9.10" }
codewhale-tools = { path = "../tools", version = "0.9.10" }
codewhale-workflow = { path = "../workflow", version = "0.9.10" }
codewhale-workflow-js = { path = "../workflow-js", version = "0.9.10" }
schemaui = { version = "0.12.0", default-features = false, optional = true }
async-stream = "0.3.6"
async-trait.workspace = true
@@ -108,7 +108,7 @@ shell-words = "1.1.1"
mimalloc.workspace = true
[build-dependencies]
codewhale-build-support = { path = "../build-support", version = "0.9.9" }
codewhale-build-support = { path = "../build-support", version = "0.9.10" }
[dev-dependencies]
cucumber = "0.23.0"
+2 -2
View File
@@ -1,12 +1,12 @@
{
"name": "codewhale-vscode",
"version": "0.9.9",
"version": "0.9.10",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "codewhale-vscode",
"version": "0.9.9",
"version": "0.9.10",
"license": "MIT",
"devDependencies": {
"@types/node": "^20.19.27",
+1 -1
View File
@@ -2,7 +2,7 @@
"name": "codewhale-vscode",
"displayName": "CodeWhale",
"description": "Official CodeWhale VS Code integration scaffold for local runtime attach and terminal launch.",
"version": "0.9.9",
"version": "0.9.10",
"publisher": "codewhale",
"license": "MIT",
"repository": {
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "codewhale",
"version": "0.9.9",
"version": "0.9.10",
"codewhaleBinaryVersion": "0.9.9",
"description": "Terminal coding agent for supported hosted and local models. One runtime on your machine. Rust, MIT.",
"author": "Hmbown",
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@codewhale/runtime-sdk",
"version": "0.9.9",
"version": "0.9.10",
"description": "Typed JavaScript helpers for Codewhale Runtime API Fleet endpoints.",
"license": "MIT",
"type": "module",
+2 -2
View File
@@ -1559,7 +1559,7 @@
}
},
"npm/codewhale": {
"version": "0.9.9",
"version": "0.9.10",
"funding": [
{
"type": "github",
@@ -1600,7 +1600,7 @@
},
"npm/runtime-sdk": {
"name": "@codewhale/runtime-sdk",
"version": "0.9.9",
"version": "0.9.10",
"license": "MIT",
"engines": {
"node": ">=18"
+1 -1
View File
@@ -20,7 +20,7 @@
# Uses prebuilt release binaries instead of a Rust build.
set -euo pipefail
RELEASE_TAG="${RELEASE_TAG:-v0.9.9}"
RELEASE_TAG="${RELEASE_TAG:-v0.9.10}"
REPO_URL="${REPO_URL:-https://github.com/Hmbown/CodeWhale.git}"
REPO_BRANCH="${REPO_BRANCH:-main}"
SECRETS_FILE="${SECRETS_FILE:-/tmp/cw-secrets.env}"
+2 -2
View File
@@ -27,10 +27,10 @@ export interface RepoFacts {
}
export const FACTS: RepoFacts = {
"generatedAt": "2026-08-18T14:31:14.072Z",
"generatedAt": "2026-08-18T23:18:11.237Z",
"sourceRevision": null,
"sourceCommittedAt": null,
"version": "0.9.9",
"version": "0.9.10",
"crates": [
"agent",
"app-server",