fix: scope web-probe turn timing by page (#676)
Co-authored-by: Codex <codex@noreply.local>
This commit is contained in:
@@ -3241,7 +3241,9 @@ function buildTurnTimingTable(samples, timeline) {
|
||||
lastPromptIndex: metric.promptIndex ?? null,
|
||||
traceId: metric.traceId ?? null,
|
||||
messageId: metric.messageId ?? null,
|
||||
domIndex: metric.domIndex ?? null
|
||||
domIndex: metric.domIndex ?? null,
|
||||
pageRole: metric.pageRole ?? sample.pageRole ?? null,
|
||||
pageId: metric.pageId ?? sample.pageId ?? null
|
||||
};
|
||||
registry.set(metric.key, column);
|
||||
columns.push(column);
|
||||
@@ -3258,6 +3260,9 @@ function buildTurnTimingTable(samples, timeline) {
|
||||
status: metric.status ?? null,
|
||||
promptIndex: metric.promptIndex ?? null,
|
||||
source: metric.source,
|
||||
pageRole: metric.pageRole ?? sample.pageRole ?? null,
|
||||
pageId: metric.pageId ?? sample.pageId ?? null,
|
||||
sampleGroupSeq: sample.sampleGroupSeq ?? null,
|
||||
traceId: metric.traceId ?? null,
|
||||
messageId: metric.messageId ?? null,
|
||||
textHash: metric.textHash ?? null
|
||||
@@ -3266,6 +3271,9 @@ function buildTurnTimingTable(samples, timeline) {
|
||||
rows.push({
|
||||
ts: sample.ts ?? null,
|
||||
seq: sample.seq ?? null,
|
||||
sampleGroupSeq: sample.sampleGroupSeq ?? null,
|
||||
pageRole: sample.pageRole ?? null,
|
||||
pageId: sample.pageId ?? null,
|
||||
promptIndex: timelineItem.promptIndex ?? 0,
|
||||
routeSessionId: sample.routeSessionId ?? null,
|
||||
activeSessionId: sample.activeSessionId ?? null,
|
||||
@@ -3322,6 +3330,8 @@ function detectTurnTimingNonMonotonic(columns, rows) {
|
||||
messageId: cell.messageId ?? column.messageId ?? null,
|
||||
promptIndex: cell.promptIndex ?? row.promptIndex ?? null,
|
||||
source: cell.source ?? column.source ?? null,
|
||||
pageRole: cell.pageRole ?? column.pageRole ?? null,
|
||||
pageId: cell.pageId ?? column.pageId ?? null,
|
||||
valuesRedacted: true
|
||||
};
|
||||
anomalies.push(event);
|
||||
@@ -3352,6 +3362,8 @@ function detectTurnTimingNonMonotonic(columns, rows) {
|
||||
messageId: cell.messageId ?? column.messageId ?? null,
|
||||
promptIndex: cell.promptIndex ?? row.promptIndex ?? null,
|
||||
source: cell.source ?? column.source ?? null,
|
||||
pageRole: cell.pageRole ?? column.pageRole ?? null,
|
||||
pageId: cell.pageId ?? column.pageId ?? null,
|
||||
valuesRedacted: true
|
||||
});
|
||||
}
|
||||
@@ -3377,6 +3389,8 @@ function detectTurnTimingNonMonotonic(columns, rows) {
|
||||
messageId: cell.messageId ?? column.messageId ?? null,
|
||||
promptIndex: cell.promptIndex ?? row.promptIndex ?? null,
|
||||
source: cell.source ?? column.source ?? null,
|
||||
pageRole: cell.pageRole ?? column.pageRole ?? null,
|
||||
pageId: cell.pageId ?? column.pageId ?? null,
|
||||
valuesRedacted: true
|
||||
});
|
||||
}
|
||||
@@ -3408,6 +3422,8 @@ function detectTurnTimingNonMonotonic(columns, rows) {
|
||||
messageId: cell.messageId ?? column.messageId ?? null,
|
||||
promptIndex: cell.promptIndex ?? row.promptIndex ?? null,
|
||||
source: cell.source ?? column.source ?? null,
|
||||
pageRole: cell.pageRole ?? column.pageRole ?? null,
|
||||
pageId: cell.pageId ?? column.pageId ?? null,
|
||||
valuesRedacted: true
|
||||
});
|
||||
if (increase < 0) {
|
||||
@@ -3428,6 +3444,8 @@ function detectTurnTimingNonMonotonic(columns, rows) {
|
||||
messageId: cell.messageId ?? column.messageId ?? null,
|
||||
promptIndex: cell.promptIndex ?? row.promptIndex ?? null,
|
||||
source: cell.source ?? column.source ?? null,
|
||||
pageRole: cell.pageRole ?? column.pageRole ?? null,
|
||||
pageId: cell.pageId ?? column.pageId ?? null,
|
||||
valuesRedacted: true
|
||||
});
|
||||
}
|
||||
@@ -3452,6 +3470,8 @@ function detectTurnTimingNonMonotonic(columns, rows) {
|
||||
messageId: cell.messageId ?? column.messageId ?? null,
|
||||
promptIndex: cell.promptIndex ?? row.promptIndex ?? null,
|
||||
source: cell.source ?? column.source ?? null,
|
||||
pageRole: cell.pageRole ?? column.pageRole ?? null,
|
||||
pageId: cell.pageId ?? column.pageId ?? null,
|
||||
valuesRedacted: true
|
||||
});
|
||||
}
|
||||
@@ -3484,7 +3504,9 @@ function isTerminalTurnStatus(value) {
|
||||
|
||||
function turnMetricItems(sample, timelineItem) {
|
||||
const promptIndex = timelineItem.promptIndex ?? 0;
|
||||
const sessionKey = sample?.routeSessionId || sample?.activeSessionId || "unknown-session";
|
||||
const pageRole = sample?.pageRole || "control";
|
||||
const pageId = sample?.pageId || "unknown-page";
|
||||
const sessionKey = pageRole + ":" + pageId + ":" + (sample?.routeSessionId || sample?.activeSessionId || "unknown-session");
|
||||
const roundKey = String(promptIndex);
|
||||
const items = [];
|
||||
if (Array.isArray(sample?.turns) && sample.turns.length > 0) {
|
||||
@@ -3503,6 +3525,8 @@ function turnMetricItems(sample, timelineItem) {
|
||||
items.push({
|
||||
key,
|
||||
source: "turn",
|
||||
pageRole,
|
||||
pageId,
|
||||
promptIndex,
|
||||
traceId,
|
||||
messageId,
|
||||
@@ -3531,6 +3555,8 @@ function turnMetricItems(sample, timelineItem) {
|
||||
? "message:" + sessionKey + ":id-" + stableId
|
||||
: "message:" + sessionKey + ":round-" + roundKey + ":dom-index-" + String(domIndex),
|
||||
source: "message",
|
||||
pageRole,
|
||||
pageId,
|
||||
promptIndex,
|
||||
traceId,
|
||||
messageId,
|
||||
@@ -3548,6 +3574,8 @@ function turnMetricItems(sample, timelineItem) {
|
||||
return [{
|
||||
key: "aggregate:" + sessionKey + ":round-" + roundKey,
|
||||
source: "aggregate",
|
||||
pageRole,
|
||||
pageId,
|
||||
promptIndex,
|
||||
traceId: null,
|
||||
messageId: null,
|
||||
|
||||
Reference in New Issue
Block a user