core/agent+cli: separate last-request usage from billed turn totals

Tool-loop rounds re-send history, so summed prompt tokens are billing
not context size. Track last_request_usage and label turn/session as
billed; clarify /status and end-of-turn lines.
This commit is contained in:
2026-07-15 11:04:41 +08:00
parent 58041c6c87
commit a61b536243
7 changed files with 82 additions and 8 deletions
+2
View File
@@ -97,3 +97,5 @@ def test_format_line_marks_estimate() -> None:
assert "(est)" in line
mixed = TokenUsage(prompt_tokens=1, completion_tokens=0, total_tokens=1, source="mixed").format_line()
assert "(api+est)" in mixed
billed = TokenUsage(prompt_tokens=1, completion_tokens=0, total_tokens=1).format_line(billed=True)
assert billed.startswith("billed tokens")