feat/task-slice-reasoning-abort #26
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/task-slice-reasoning-abort"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
zot reports reasoning tokens separately from output — a distinct billed count for reasoning models such as DeepSeek-R1. Both the Rust PaneUsage and the Go Usage projection dropped the `reasoning` field, so the token ledger undercounted by the full reasoning amount even though `cost_usd` stayed correct. An aborted turn (`turn_end{stop:"aborted"}` with no standalone error frame) was also finalized as success: both terminal readers keyed on `done`/`error` only. Map abort to error in the normalized event fold and close the task as failed with its partial usage billed, so the trailing bare `done` cannot flip it back to success. - Go: Usage/ledger/task slice gain reasoning_tokens; Normalized() maps stop:aborted -> error; Consume() finalizes aborted turns as failed. - Rust: PaneUsage/Task/TaskCost/schema/set_task_cost/row_to_task gain reasoning_tokens; zot_event_type maps stop:aborted -> error; the RPC completion reader finalizes aborted turns as failed. - Fixtures: reasoning_tokens expectations across normalized-events.json and task-records.json; new zot-abort.jsonl stream + abort case. Linux proof: check-go.sh green, cargo fmt/clippy clean, glasspane (58), ledger (31), daemon lib (197) all pass.