Persist active run state for replay
This commit is contained in:
@@ -1884,7 +1884,6 @@ const ActivityChainSummary: FC<{
|
||||
partIndex: number | undefined;
|
||||
}> = ({ messageId, partIndex }) => {
|
||||
const { openItem } = useActivityPanel();
|
||||
const startedAtRef = useRef(Date.now());
|
||||
const metadataRunStartedAtMs = useAuiState((s) => {
|
||||
const value = readMetadataValue(s.message.metadata, "runStartedAtMs");
|
||||
return typeof value === "number" && Number.isFinite(value) ? value : null;
|
||||
@@ -1933,9 +1932,11 @@ const ActivityChainSummary: FC<{
|
||||
const startedAt =
|
||||
metadataRunStartedAtMs ??
|
||||
contentRunStartedAtMs ??
|
||||
(storedElapsedMs === null
|
||||
? startedAtRef.current
|
||||
: Date.now() - storedElapsedMs);
|
||||
(storedElapsedMs === null ? null : Date.now() - storedElapsedMs);
|
||||
if (startedAt === null) {
|
||||
setElapsedMs(storedElapsedMs);
|
||||
return;
|
||||
}
|
||||
setElapsedMs(Math.max(0, Date.now() - startedAt));
|
||||
const timer = window.setInterval(() => {
|
||||
setElapsedMs(Math.max(0, Date.now() - startedAt));
|
||||
@@ -2021,11 +2022,12 @@ function summarizeActivityChainLabel(
|
||||
(isGenericActivityLine(lastReasoningLine) ? "" : lastReasoningLine);
|
||||
|
||||
if (status === "running") {
|
||||
const elapsed = `用时 ${formatActivityDuration(elapsedMs ?? 0)}`;
|
||||
const elapsed =
|
||||
elapsedMs === null ? "" : `,用时 ${formatActivityDuration(elapsedMs)}`;
|
||||
if (activeDetail) {
|
||||
return `${compactActivityLabel(activeDetail, 15)},${elapsed}`;
|
||||
return `${compactActivityLabel(activeDetail, 15)}${elapsed}`;
|
||||
}
|
||||
return `思考中,${elapsed}`;
|
||||
return elapsed ? `思考中${elapsed}` : "思考中";
|
||||
}
|
||||
|
||||
const label = compactActivityLabel(
|
||||
|
||||
Reference in New Issue
Block a user