fix: use artifact request-rate curves in run detail

This commit is contained in:
Codex
2026-07-02 05:42:44 +00:00
parent 7a36978daa
commit 53371afd2a
@@ -951,7 +951,7 @@ function dashboardRunDetail(config: WebProbeSentinelServiceConfig, db: Database,
run: dashboardRunSummary(config, db, row),
summary: record(stored.summary),
memory: dashboardRunMemoryDetail(config, row, stored),
requestRate: dashboardRunRequestRateDetail(config, row, stored),
requestRate: dashboardRunRequestRateDetail(config, row, stored, artifactSummary),
findings,
viewsAvailable: Object.keys(views),
artifacts: {
@@ -1100,15 +1100,18 @@ function dashboardRunMemoryDetail(config: WebProbeSentinelServiceConfig, row: Re
};
}
function dashboardRunRequestRateDetail(config: WebProbeSentinelServiceConfig, row: Record<string, unknown>, stored: Record<string, unknown>): Record<string, unknown> {
function dashboardRunRequestRateDetail(config: WebProbeSentinelServiceConfig, row: Record<string, unknown>, stored: Record<string, unknown>, artifactSummary: Record<string, unknown> = {}): Record<string, unknown> {
const options = dashboardDetailRequestRateOptions(config);
const storedAnalysis = record(record(stored.summary).analysis);
const storedRequestRate = compactDashboardRequestRate(record(storedAnalysis.requestRate), options, "recorded-analysis-summary");
if (storedRequestRate.ok === true && hasDashboardRequestRateSeries(storedRequestRate)) return storedRequestRate;
const storedRequestRateCurve = compactDashboardRequestRate(record(storedAnalysis.requestRateCurve), options, "recorded-analysis-request-rate-curve");
if (storedRequestRateCurve.ok === true && hasDashboardRequestRateSeries(storedRequestRateCurve)) return storedRequestRateCurve;
const artifactRequestRate = compactDashboardRequestRate(record(artifactSummary.requestRate), options, "artifact-summary-request-rate");
if (artifactRequestRate.ok === true && hasDashboardRequestRateSeries(artifactRequestRate)) return artifactRequestRate;
const fromArtifacts = readDashboardRequestRateFromAnalysisReport(config, row, options);
if (fromArtifacts.ok === true) return fromArtifacts;
if (artifactRequestRate.ok === true) return artifactRequestRate;
if (storedRequestRate.ok === true) return storedRequestRate;
if (storedRequestRateCurve.ok === true) return storedRequestRateCurve;
return {