Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

## Unreleased

## 0.7.19 — 2026-11-10 (Alpha)

- Interactive reports and `pricing --usage` show the existing mascot on stderr while a cached read is still running. The first frame waits 140ms so a fast command does not flash. `--json`, `--quiet`, pipes, and `TERM=dumb` stay clean. The mascot does not change token totals or avoid a full scan when the cache is missing.

## 0.7.18 — 2026-11-10 (Alpha)
Expand Down
15 changes: 15 additions & 0 deletions docs/performance.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,21 @@ First stdout byte equals total time on v0.7.18 because `--quiet` prints nothing

Do not read the missing full-scan row as "the cache is N times faster than parsing." Those are different operations. The cache avoids the parse. It does not make the parse that `wheretoken scan` still does any cheaper except for the v0.7.14 `GLOB` plan, which was not re-benchmarked here.

## Paired check on the release candidate

Same Apple M4, same local ledger, same afternoon. Five runs of the candidate binary built from `1cfc2b2`, through a PTY with `TERM=xterm-256color`. Quiet runs are the same binary with `--quiet` (no mascot). Median is the middle of five. P95 is the highest of five. Cursor's reported total stayed 9,136,507,911.

| Path | First byte median / P95 | Total median / P95 | Mascot frames | Scans Cursor? |
|---|---|---|---|---|
| `wheretoken` | 161 ms / 196 ms | 4564 ms / 5246 ms | 36–42 | no |
| `wheretoken --quiet` | 4538 ms / 4864 ms | 4570 ms / 4890 ms | 0 | no |
| `wheretoken 2026-11-09` | 161 ms / 161 ms | 2655 ms / 2747 ms | 20–22 | no |
| `wheretoken 2026-11-09 --quiet` | 2808 ms / 2944 ms | 2853 ms / 2980 ms | 0 | no |
| `wheretoken pricing --usage` | 161 ms / 165 ms | 4307 ms / 4434 ms | 34–36 | no |
| `wheretoken pricing --usage --quiet` | 4247 ms / 4302 ms | 4271 ms / 4338 ms | 0 | no |

The animated default total (4564 ms) matches the quiet total (4570 ms). The sprite changes when the first byte appears. It does not shorten the aggregate. CPU and RSS were not sampled again in this pair; the earlier v0.7.18 `--quiet` series remains the RSS figure (1.18 GiB median).

## Remaining bottlenecks

- Two aggregates per cached report (`cachedReport` and `report.Build`).
Expand Down
2 changes: 1 addition & 1 deletion npm/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "wheretoken",
"version": "0.7.18",
"version": "0.7.19",
"description": "Local coding-agent token usage as a character table",
"license": "MIT",
"bin": {
Expand Down
Loading