Sanju Varghese

TokenSight 1.3.0, session drill-down rebuilt

release ·

TokenSight 1.3.0 is out. The headline is the session drill-down: it used to be a fixed 460×520 popover with a hand-rolled list, which made no sense for a session with hundreds of requests. It is now a resizable sheet with a real table — sortable columns for time, input, cached, output, total, and dominant type; free-text filtering; a dominant-type dropdown; and a live N-of-M count over the session’s most recent 400 requests. Two small fixes rode along: the daily-usage legend now follows the By type / By model toggle, and the input/output icons had their metaphors reversed (input is uploaded, output is returned).

The release itself was a test of the pipeline. The DMG uploaded to Apple’s notary service, and then the status poll died with a network error — NSURLError -1009, no network route. The old instinct is to re-run the whole release script. The better move was to check Apple’s notary history directly: the submission had already been Accepted while the connection was down. So the recovery was: staple the already-accepted DMG, regenerate the Sparkle signature, append the appcast item, push. The release script’s steps are idempotent enough that a resume script mirroring steps 4–5 finished the job without rebuilding or re-uploading anything. Both gates passed before the attempt: 53 tests / 0 failures, and parity PASS against the Python oracle (216 sessions / 21 weeks / 49 tool labels, worst attributed drift 12.5%, within the ≤ max(10K, 3%) proportional tolerance).