fix(web-probe): keep rounds in compact analyze output (#775)
Co-authored-by: Codex <codex@noreply.local>
This commit is contained in:
@@ -8664,13 +8664,16 @@ function runNodeWebProbeObserveAnalyze(options: NodeWebProbeObserveOptions, spec
|
||||
"const compactOutput = (value) => JSON.stringify(value);",
|
||||
"let output = compactOutput(compact);",
|
||||
"if (Buffer.byteLength(output, 'utf8') > compactStdoutLimitBytes) {",
|
||||
" const minimalRounds = takeTail(firstNonEmptyArray(compact.sampleMetrics?.rounds, compact.sampleMetrics?.roundItems, source?.sampleMetrics?.rounds, fullRecentMetrics?.rounds, fullArchiveMetrics?.rounds), 8).map(slimRound);",
|
||||
" const minimalTurnColumns = takeTail(firstNonEmptyArray(compact.sampleMetrics?.turnColumns, source?.sampleMetrics?.turnColumns, fullRecentMetrics?.turnColumns, fullArchiveMetrics?.turnColumns), 8).map(slimTurnColumn);",
|
||||
" const minimal = {",
|
||||
" ok: compact.ok,",
|
||||
" counts: compact.counts ?? null,",
|
||||
" analysisWindow: compact.analysisWindow ?? null,",
|
||||
" archiveSummary: compact.archiveSummary ?? null,",
|
||||
" sampleMetrics: compact.sampleMetrics ? {",
|
||||
" rounds: Array.isArray(compact.sampleMetrics.rounds) ? compact.sampleMetrics.rounds : compact.sampleMetrics.rounds ?? null,",
|
||||
" roundItems: minimalRounds,",
|
||||
" rounds: minimalRounds,",
|
||||
" sampleCount: compact.sampleMetrics.sampleCount ?? null,",
|
||||
" loadingSampleCount: compact.sampleMetrics.loadingSampleCount ?? null,",
|
||||
" loadingMaxCount: compact.sampleMetrics.loadingMaxCount ?? null,",
|
||||
@@ -8697,7 +8700,7 @@ function runNodeWebProbeObserveAnalyze(options: NodeWebProbeObserveOptions, spec
|
||||
" turnTimingRecentUpdateJumpCount: compact.sampleMetrics.turnTimingRecentUpdateJumpCount ?? null,",
|
||||
" turnTimingRecentUpdateSawtoothJumpCount: compact.sampleMetrics.turnTimingRecentUpdateSawtoothJumpCount ?? null,",
|
||||
" turnTimingRecentUpdateMaxIncreaseSeconds: compact.sampleMetrics.turnTimingRecentUpdateMaxIncreaseSeconds ?? null,",
|
||||
" turnColumns: Array.isArray(compact.sampleMetrics.turnColumns) ? compact.sampleMetrics.turnColumns.slice(-6) : []",
|
||||
" turnColumns: minimalTurnColumns",
|
||||
" } : null,",
|
||||
" runtimeAlerts: compact.runtimeAlerts ?? null,",
|
||||
" pagePerformance: compact.pagePerformance ?? null,",
|
||||
@@ -8871,14 +8874,26 @@ function withWebObserveAnalyzeRendered(value: Record<string, unknown>): Rendered
|
||||
}
|
||||
|
||||
function renderWebObserveAnalyzeTable(value: Record<string, unknown>): string {
|
||||
const analysis = record(value.analysis);
|
||||
const analysis = record(value.analysis) ?? value;
|
||||
const analyzer = record(analysis?.analyzer);
|
||||
const result = record(value.result);
|
||||
const counts = record(analysis?.counts);
|
||||
const jsonlScope = record(analysis?.jsonlScope);
|
||||
const analysisWindow = record(analysis?.analysisWindow);
|
||||
const archiveSummary = record(analysis?.archiveSummary);
|
||||
const sampleMetrics = record(analysis?.sampleMetrics);
|
||||
const nestedSampleMetrics = record(analysis?.sampleMetrics);
|
||||
const directSampleMetrics = record(value.sampleMetrics);
|
||||
const hasRenderableTurnMetrics = (item: Record<string, unknown> | null): boolean => {
|
||||
if (!item) return false;
|
||||
return (Array.isArray(item.roundItems) && item.roundItems.length > 0)
|
||||
|| (Array.isArray(item.rounds) && item.rounds.length > 0)
|
||||
|| (Array.isArray(item.turnColumns) && item.turnColumns.length > 0);
|
||||
};
|
||||
const sampleMetrics = hasRenderableTurnMetrics(nestedSampleMetrics)
|
||||
? nestedSampleMetrics
|
||||
: hasRenderableTurnMetrics(directSampleMetrics)
|
||||
? directSampleMetrics
|
||||
: nestedSampleMetrics ?? directSampleMetrics;
|
||||
const archiveMetrics = record(archiveSummary?.sampleMetrics);
|
||||
const archivePagePerformance = record(archiveSummary?.pagePerformance);
|
||||
const runtimeAlerts = record(analysis?.runtimeAlerts);
|
||||
|
||||
Reference in New Issue
Block a user