release: v0.62.1
FreeBSD Smoke / FreeBSD Smoke (x86_64) (push) Has been cancelled
Release / Create release (push) Has been cancelled
Release / Build (aarch64-unknown-linux-gnu) (push) Has been cancelled
Release / Build (x86_64-unknown-linux-gnu) (push) Has been cancelled
Release / Build (aarch64-apple-darwin) (push) Has been cancelled
Release / Build (x86_64-apple-darwin) (push) Has been cancelled
Release / Build (aarch64-pc-windows-msvc) (push) Has been cancelled
Release / Build (x86_64-pc-windows-msvc) (push) Has been cancelled
Release / Sign and publish Windows assets (push) Has been cancelled
Release / Build (x86_64-unknown-freebsd) (push) Has been cancelled
Release / Finalize release (push) Has been cancelled

Patch release so a tagged build actually contains the fix for the reported
fresh-spawn lag. v0.62.0 shipped only the first half.

- fix(tui): stop burning 60fps full frames on an animation nobody can see
  (in v0.62.0): a fresh client ran 63 full renders/sec changing 0 of 7680 cells
  because the redraw scheduler paced the loop off "this screen wants a donut"
  while the renderer had dropped it behind a full-screen overlay.

- perf(tui): cut the decorative animation's cost on a real session (this
  release, and the change that actually fixed the symptom): the animation-only
  partial repaint cloned the whole screen twice per frame (~920k cell copies a
  second at 60fps to update ~2200 cells), and the decoration ran at 60fps where
  its cost is linear in frame rate but its smoothness is not.

Measured on a real session, before and after:

| | before | after |
|---|---|---|
| keystroke latency p50 | 6.6ms | 1.08ms |
| keystroke latency p95 | 13.8ms | 1.21ms |
| animation CPU | 0.257 cores | 0.121 cores |
This commit is contained in:
jeremy
2026-07-29 17:20:46 -07:00
parent a129aa4792
commit d9ca2a232b
2 changed files with 2 additions and 2 deletions
Generated
+1 -1
View File
@@ -3555,7 +3555,7 @@ checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2"
[[package]]
name = "jcode"
version = "0.62.0"
version = "0.62.1"
dependencies = [
"anyhow",
"async-stream",
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "jcode"
version = "0.62.0"
version = "0.62.1"
description = "Possibly the greatest coding agent ever built — blazing-fast TUI, multi-model, swarm coordination, 30+ tools"
edition = "2024"
autobins = false