Improve active run timing and turn limits
This commit is contained in:
@@ -426,7 +426,12 @@ export function toReplayRepository(
|
||||
role: message.role,
|
||||
parts,
|
||||
...(message.role === "assistant"
|
||||
? { metadata: { sessionId: session.session_id ?? fallbackSessionId } }
|
||||
? {
|
||||
metadata: {
|
||||
sessionId: session.session_id ?? fallbackSessionId,
|
||||
elapsedMs: normalizeElapsedMs(message.metadata?.elapsed_ms),
|
||||
},
|
||||
}
|
||||
: {}),
|
||||
} as UIMessage;
|
||||
const threadMessage = {
|
||||
@@ -442,7 +447,10 @@ export function toReplayRepository(
|
||||
unstable_annotations: [],
|
||||
unstable_data: [],
|
||||
steps: [],
|
||||
custom: { sessionId: session.session_id ?? fallbackSessionId },
|
||||
custom: {
|
||||
sessionId: session.session_id ?? fallbackSessionId,
|
||||
elapsedMs: normalizeElapsedMs(message.metadata?.elapsed_ms),
|
||||
},
|
||||
},
|
||||
}
|
||||
: { metadata: { custom: {} } }),
|
||||
@@ -536,8 +544,9 @@ function buildActiveRunParts(runStatus: ClawActiveRunStatus) {
|
||||
? "当前会话已有任务在执行,本轮正在排队。"
|
||||
: runStatus.current_stage || "后端正在执行这个会话。";
|
||||
const reasoningText = eventLines.length ? eventLines.join("\n") : fallback;
|
||||
const runStartedAtMs = normalizeRunTimestampMs(runStatus.started_at);
|
||||
return [
|
||||
{ type: "reasoning", text: reasoningText },
|
||||
{ type: "reasoning", text: reasoningText, runStartedAtMs },
|
||||
...buildRunToolParts(runStatus.events ?? []),
|
||||
];
|
||||
}
|
||||
@@ -694,6 +703,11 @@ function normalizeRunTimestampMs(value: unknown) {
|
||||
return value < 10_000_000_000 ? Math.round(value * 1000) : Math.round(value);
|
||||
}
|
||||
|
||||
function normalizeElapsedMs(value: unknown) {
|
||||
if (typeof value !== "number" || !Number.isFinite(value)) return undefined;
|
||||
return Math.max(0, Math.round(value));
|
||||
}
|
||||
|
||||
function findLastAssistantContentIndex(messages: readonly ClawStoredMessage[]) {
|
||||
for (let index = messages.length - 1; index >= 0; index -= 1) {
|
||||
const message = messages[index];
|
||||
|
||||
Reference in New Issue
Block a user