fix(workbench): keep main card timing on durable message projection (#1965)

This commit is contained in:
Lyon
2026-06-23 12:50:19 +08:00
committed by GitHub
parent ce4b3333ce
commit befd0f01d3
@@ -299,8 +299,11 @@ function messageActivityMeta(message: ChatMessage): { text: string; label: strin
}
function messageTimingForDisplay(message: ChatMessage): ChatMessage["timing"] {
if (!isRunningMessage(message)) return message.timing ?? message.runnerTrace?.timing ?? null;
return message.runnerTrace?.timing ?? message.timing ?? null;
// The main message card consumes only the durable message timing projection.
// Trace timing belongs to TraceTimeline/details; letting trace hydration drive the
// card timer makes running turns jump when a later trace snapshot carries an
// older startedAt/lastEventAt window.
return message.timing ?? null;
}
function terminalMessageDurationMs(message: ChatMessage, timing: ChatMessage["timing"]): number | null {