fix(web-probe): merge turn timing columns by stable id (#783)

Co-authored-by: Codex <codex@noreply.local>
This commit is contained in:
Lyon
2026-06-24 05:33:05 +08:00
committed by GitHub
parent e6fe4ca053
commit d0913f1ab8
@@ -4504,6 +4504,7 @@ function buildTurnTimingTable(samples, timeline) {
} else {
column.lastSeq = sample.seq ?? null;
column.lastTs = sample.ts ?? null;
if (column.source !== "turn" && metric.source === "turn") column.source = "turn";
if (metric.promptIndex && column.promptIndex !== metric.promptIndex) column.promptIndex = metric.promptIndex;
column.lastPromptIndex = metric.promptIndex ?? column.lastPromptIndex ?? null;
if (!column.traceId && metric.traceId) column.traceId = metric.traceId;
@@ -5793,7 +5794,7 @@ function turnMetricItems(sample, timelineItem) {
const stableId = traceId || messageId || turnId || null;
const domIndex = Number.isFinite(Number(turn.index)) ? Number(turn.index) : items.length;
const key = stableId
? "turn:" + sessionKey + ":id-" + stableId
? "timing:" + sessionKey + ":id-" + stableId
: "turn:" + sessionKey + ":round-" + roundKey + ":dom-index-" + String(domIndex);
items.push({
key,
@@ -5825,7 +5826,7 @@ function turnMetricItems(sample, timelineItem) {
const stableId = traceId || messageId || message.turnId || null;
items.push({
key: stableId
? "message:" + sessionKey + ":id-" + stableId
? "timing:" + sessionKey + ":id-" + stableId
: "message:" + sessionKey + ":round-" + roundKey + ":dom-index-" + String(domIndex),
source: "message",
pageRole,