v1.12.2: live tok/s + ctx display next to status indicator
ChatThroughput renders inline beside StatusDot while streaming or tool_running. Subscribes to existing usage frames via sessionEvents. Hides when status drops to idle/error or data is older than 10s. Addresses the 2026-05-21 spike's UX gap where slow streams looked identical to dead streams — now there's a live token velocity readout that immediately distinguishes the two. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -332,6 +332,17 @@ export type WsFrame =
|
||||
// to the client without a refetch.
|
||||
metadata?: MessageMetadata | null;
|
||||
}
|
||||
// v1.12.2: live throughput frame, published mid-stream every ~500ms with
|
||||
// the latest token + ctx counts so ChatThroughput can render tok/s and
|
||||
// ctx_used while the model is still generating.
|
||||
| {
|
||||
type: 'usage';
|
||||
message_id: string;
|
||||
chat_id?: string;
|
||||
completion_tokens: number | null;
|
||||
ctx_used: number | null;
|
||||
ctx_max: number | null;
|
||||
}
|
||||
| { type: 'messages_deleted'; message_ids: string[]; chat_id?: string }
|
||||
| { type: 'chat_renamed'; chat_id: string; name: string }
|
||||
// v1.11: published by services/compaction.ts after the new anchored
|
||||
|
||||
Reference in New Issue
Block a user