Release notes

FEATURE

Cost and model tracking no longer miss Codex data

When checking your bills or model usage, you will no longer be misled by $0 or "unknown" estimates just because Codex logs are missing. Newer versions of Codex sometimes stash which model was used in a different spot (turn context); if the system can't find it in the usual place, it now knows to dig it out from the new location, keeping your bills and charts perfectly intact. It's like a cashier who, unable to find the main barcode, now knows to check under the box for the backup sticker.

BUGFIX

Animated panels stop flickering on refresh

Panels that feature animated quota progress bars (like the Prism Arcade, Black Hole or Aquarium themes) no longer flash when their numbers update. Previously, on every status refresh, the system would tear down and rebuild the entire animation track, causing the animation to restart and flicker; it now just updates the digits in place without interrupting the moving parts. Like changing the score at a stadium: instead of tearing down the entire scoreboard and installing a new one, they just flip the number cards while the game plays on.

Original changelog

Original changelogCost and model tracking no longer miss Codex data
**Codex model attribution now falls back to turn context**: newer Codex sessions can store the model in `turn_context.payload.model`, while `state_5.sqlite` may not have a matching thread row yet. The reader still prefers SQLite when available, but now uses the turn context as a fallback so cost estimates and model distribution no longer collapse to unknown or $0. (#38, by @ericweichun)
Original changelogAnimated panels stop flickering on refresh
**Animated quota rows no longer restart on every panel refresh**: panels with animated quota tracks, including Prism Arcade, Black Hole, and Aquarium, now mount each quota row once and update it in place instead of rebuilding the markup on every status update. This prevents the CSS animation flicker during normal refreshes. (#39, by @ericweichun)