{
  "available": true,
  "source": "postgres",
  "reason": null,
  "schemaVersion": "alert_history.v2",
  "generatedAt": "2026-05-01T18:27:39.933Z",
  "windowDays": 30,
  "windowStartedAt": "2026-04-01T18:27:39.933Z",
  "limit": 20,
  "filters": {
    "code": null,
    "severity": null,
    "surface": null
  },
  "summary": {
    "totalEntries": 50,
    "distinctCaptures": 10,
    "distinctCodes": 8,
    "distinctFingerprints": 30,
    "criticalCount": 0,
    "highCount": 28,
    "mediumCount": 11,
    "lowCount": 11,
    "infoCount": 0
  },
  "breakdowns": {
    "codes": [
      {
        "key": "grounded_ratio_low",
        "count": 10
      },
      {
        "key": "stalled_jobs_detected",
        "count": 10
      },
      {
        "key": "summary_history_unavailable",
        "count": 10
      },
      {
        "key": "export_gate_pressure",
        "count": 9
      },
      {
        "key": "analysis_progress_stale",
        "count": 4
      },
      {
        "key": "jobs_stale",
        "count": 4
      },
      {
        "key": "alert_history_stale",
        "count": 2
      },
      {
        "key": "summary_stale",
        "count": 1
      }
    ],
    "severities": [
      {
        "key": "high",
        "count": 28
      },
      {
        "key": "low",
        "count": 11
      },
      {
        "key": "medium",
        "count": 11
      }
    ],
    "surfaces": [
      {
        "key": "freshness",
        "count": 11
      },
      {
        "key": "jobs",
        "count": 10
      },
      {
        "key": "summary",
        "count": 10
      },
      {
        "key": "summary_history",
        "count": 10
      },
      {
        "key": "report_exports",
        "count": 9
      }
    ]
  },
  "trends": {
    "dailyEntries": [
      {
        "day": "2026-04-24",
        "count": 3
      },
      {
        "day": "2026-04-25",
        "count": 8
      },
      {
        "day": "2026-04-26",
        "count": 6
      },
      {
        "day": "2026-04-27",
        "count": 5
      },
      {
        "day": "2026-04-28",
        "count": 6
      },
      {
        "day": "2026-04-29",
        "count": 7
      },
      {
        "day": "2026-04-30",
        "count": 9
      },
      {
        "day": "2026-05-01",
        "count": 6
      }
    ]
  },
  "recentAlerts": [
    {
      "alertEventId": "a6de4ff6-d6d1-47db-b479-e5bf441e5623",
      "captureId": "145c1a5a-c836-4d64-b683-c26ad3abc864",
      "code": "stalled_jobs_detected",
      "severity": "high",
      "surface": "jobs",
      "focusId": "analytics-recent-jobs",
      "title": "Stalled jobs detected",
      "message": "47 queued or running jobs have gone past the heartbeat threshold.",
      "recommendation": "Inspect worker logs and replay the affected jobs from telemetry history.",
      "metricLabel": "stalled_jobs",
      "metricValueText": "47",
      "metricValueNumeric": 47,
      "alertFingerprint": "349318a329bda54afdc8154e245987e3",
      "surfaceQuery": {
        "stalledOnly": "true"
      },
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 5,
      "analyticsRecentLimit": 5,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-05-01T10:15:24.300Z",
      "capturedAt": "2026-05-01T10:15:24.428Z"
    },
    {
      "alertEventId": "6215d09d-46a1-44d5-926d-c207643e4b70",
      "captureId": "145c1a5a-c836-4d64-b683-c26ad3abc864",
      "code": "jobs_stale",
      "severity": "low",
      "surface": "freshness",
      "focusId": "analytics-recent-jobs",
      "title": "Jobs telemetry looks stale",
      "message": "Jobs has not recorded fresh activity for 7h, beyond the expected 6h window.",
      "recommendation": "Verify whether the platform is genuinely idle or whether the telemetry write path for this surface has stalled.",
      "metricLabel": "age_minutes",
      "metricValueText": "413",
      "metricValueNumeric": 413,
      "alertFingerprint": "1582d5354f819402df99f4bb1a250c15",
      "surfaceQuery": {
        "status": "stale",
        "surfaceKey": "jobs"
      },
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 5,
      "analyticsRecentLimit": 5,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-05-01T10:15:24.300Z",
      "capturedAt": "2026-05-01T10:15:24.428Z"
    },
    {
      "alertEventId": "039d9429-4811-4243-9b17-6f320a273d3a",
      "captureId": "145c1a5a-c836-4d64-b683-c26ad3abc864",
      "code": "summary_history_unavailable",
      "severity": "medium",
      "surface": "summary_history",
      "focusId": "analytics-recent-summary-history",
      "title": "summary history telemetry unavailable",
      "message": "The summary history analytics surface is currently unavailable, so summary data may be partial.",
      "recommendation": "Check database connectivity and the corresponding analytics feature flag.",
      "metricLabel": "reason",
      "metricValueText": "analytics_summary_history_failed",
      "metricValueNumeric": 0,
      "alertFingerprint": "2a9e69a6b097233b280d8b1d14c8ed86",
      "surfaceQuery": {},
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 5,
      "analyticsRecentLimit": 5,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-05-01T10:15:24.300Z",
      "capturedAt": "2026-05-01T10:15:24.428Z"
    },
    {
      "alertEventId": "f191058b-099d-4ea3-8397-a3bdd5539322",
      "captureId": "145c1a5a-c836-4d64-b683-c26ad3abc864",
      "code": "grounded_ratio_low",
      "severity": "high",
      "surface": "summary",
      "focusId": "analytics-disease-breakdown",
      "title": "Grounded evidence ratio is trending low",
      "message": "Average grounded ratio is 30% for the current run window.",
      "recommendation": "Review recent pathway and evidence extraction outputs for low-grounding contexts.",
      "metricLabel": "grounded_ratio",
      "metricValueText": "0.299",
      "metricValueNumeric": 0.299,
      "alertFingerprint": "f87b4aa9e3fd497c07700d3da0241da4",
      "surfaceQuery": {},
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 5,
      "analyticsRecentLimit": 5,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-05-01T10:15:24.300Z",
      "capturedAt": "2026-05-01T10:15:24.428Z"
    },
    {
      "alertEventId": "68d0a00e-dee4-4701-8cd0-7bdf1b495014",
      "captureId": "145c1a5a-c836-4d64-b683-c26ad3abc864",
      "code": "analysis_progress_stale",
      "severity": "low",
      "surface": "freshness",
      "focusId": "analytics-recent-progress",
      "title": "Analysis Progress telemetry looks stale",
      "message": "Analysis Progress has not recorded fresh activity for 7h, beyond the expected 6h window.",
      "recommendation": "Verify whether the platform is genuinely idle or whether the telemetry write path for this surface has stalled.",
      "metricLabel": "age_minutes",
      "metricValueText": "413",
      "metricValueNumeric": 413,
      "alertFingerprint": "ebd3dd3a8954904c1ff5a3d049c392b9",
      "surfaceQuery": {
        "status": "stale",
        "surfaceKey": "analysis_progress"
      },
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 5,
      "analyticsRecentLimit": 5,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-05-01T10:15:24.300Z",
      "capturedAt": "2026-05-01T10:15:24.428Z"
    },
    {
      "alertEventId": "a01b7075-034b-401a-a883-fe000bad8b17",
      "captureId": "145c1a5a-c836-4d64-b683-c26ad3abc864",
      "code": "export_gate_pressure",
      "severity": "high",
      "surface": "report_exports",
      "focusId": "analytics-recent-exports",
      "title": "Export gate pressure is elevated",
      "message": "59 of 59 exports were blocked or failed in the current window.",
      "recommendation": "Review blocker reasons and malformed citation drops in recent export attempts.",
      "metricLabel": "issue_rate",
      "metricValueText": "1",
      "metricValueNumeric": 1,
      "alertFingerprint": "2d5c00e3bf51485a5ff9bf6132a48e11",
      "surfaceQuery": {
        "outcomeStatus": "blocked"
      },
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 5,
      "analyticsRecentLimit": 5,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-05-01T10:15:24.300Z",
      "capturedAt": "2026-05-01T10:15:24.427Z"
    },
    {
      "alertEventId": "c839b109-1eb8-4d6a-8c4b-a498f1a3c502",
      "captureId": "40a52d05-64a2-42c4-a5d8-a7220754e548",
      "code": "export_gate_pressure",
      "severity": "high",
      "surface": "report_exports",
      "focusId": "analytics-recent-exports",
      "title": "Export gate pressure is elevated",
      "message": "53 of 53 exports were blocked or failed in the current window.",
      "recommendation": "Review blocker reasons and malformed citation drops in recent export attempts.",
      "metricLabel": "issue_rate",
      "metricValueText": "1",
      "metricValueNumeric": 1,
      "alertFingerprint": "a5c824a7cd6258b0d7bc371c2ada1ee3",
      "surfaceQuery": {
        "outcomeStatus": "blocked"
      },
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 8,
      "analyticsRecentLimit": 10,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-04-30T22:06:29.244Z",
      "capturedAt": "2026-04-30T22:06:29.307Z"
    },
    {
      "alertEventId": "ddb82294-4ad9-4e2b-9d81-244b3d973f3e",
      "captureId": "40a52d05-64a2-42c4-a5d8-a7220754e548",
      "code": "summary_history_unavailable",
      "severity": "medium",
      "surface": "summary_history",
      "focusId": "analytics-recent-summary-history",
      "title": "summary history telemetry unavailable",
      "message": "The summary history analytics surface is currently unavailable, so summary data may be partial.",
      "recommendation": "Check database connectivity and the corresponding analytics feature flag.",
      "metricLabel": "reason",
      "metricValueText": "analytics_summary_history_failed",
      "metricValueNumeric": 0,
      "alertFingerprint": "2a9e69a6b097233b280d8b1d14c8ed86",
      "surfaceQuery": {},
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 8,
      "analyticsRecentLimit": 10,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-04-30T22:06:29.244Z",
      "capturedAt": "2026-04-30T22:06:29.307Z"
    },
    {
      "alertEventId": "6761a428-98c6-4c0c-9c1c-cb030d54ae71",
      "captureId": "40a52d05-64a2-42c4-a5d8-a7220754e548",
      "code": "grounded_ratio_low",
      "severity": "high",
      "surface": "summary",
      "focusId": "analytics-disease-breakdown",
      "title": "Grounded evidence ratio is trending low",
      "message": "Average grounded ratio is 30% for the current run window.",
      "recommendation": "Review recent pathway and evidence extraction outputs for low-grounding contexts.",
      "metricLabel": "grounded_ratio",
      "metricValueText": "0.298",
      "metricValueNumeric": 0.298,
      "alertFingerprint": "9affee371e73283f520671c90feb5789",
      "surfaceQuery": {},
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 8,
      "analyticsRecentLimit": 10,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-04-30T22:06:29.244Z",
      "capturedAt": "2026-04-30T22:06:29.307Z"
    },
    {
      "alertEventId": "6c96f7b6-dc6c-44c2-84ba-884e49b96aef",
      "captureId": "40a52d05-64a2-42c4-a5d8-a7220754e548",
      "code": "stalled_jobs_detected",
      "severity": "high",
      "surface": "jobs",
      "focusId": "analytics-recent-jobs",
      "title": "Stalled jobs detected",
      "message": "46 queued or running jobs have gone past the heartbeat threshold.",
      "recommendation": "Inspect worker logs and replay the affected jobs from telemetry history.",
      "metricLabel": "stalled_jobs",
      "metricValueText": "46",
      "metricValueNumeric": 46,
      "alertFingerprint": "6c1ca04750fdc7c195553d2ac28b2c6c",
      "surfaceQuery": {
        "stalledOnly": "true"
      },
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 8,
      "analyticsRecentLimit": 10,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-04-30T22:06:29.244Z",
      "capturedAt": "2026-04-30T22:06:29.307Z"
    },
    {
      "alertEventId": "a9801b0f-cb10-4a63-8f4f-0cb352130083",
      "captureId": "cad2dcad-8fb4-4f34-9016-d0fb946b1821",
      "code": "export_gate_pressure",
      "severity": "high",
      "surface": "report_exports",
      "focusId": "analytics-recent-exports",
      "title": "Export gate pressure is elevated",
      "message": "53 of 53 exports were blocked or failed in the current window.",
      "recommendation": "Review blocker reasons and malformed citation drops in recent export attempts.",
      "metricLabel": "issue_rate",
      "metricValueText": "1",
      "metricValueNumeric": 1,
      "alertFingerprint": "a5c824a7cd6258b0d7bc371c2ada1ee3",
      "surfaceQuery": {
        "outcomeStatus": "blocked"
      },
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 5,
      "analyticsRecentLimit": 5,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-04-30T19:51:56.209Z",
      "capturedAt": "2026-04-30T19:51:56.283Z"
    },
    {
      "alertEventId": "e39d0227-b6b9-48ff-b95c-9bcb61869cd9",
      "captureId": "cad2dcad-8fb4-4f34-9016-d0fb946b1821",
      "code": "alert_history_stale",
      "severity": "low",
      "surface": "freshness",
      "focusId": "analytics-recent-alert-history",
      "title": "Alert History telemetry looks stale",
      "message": "Alert History has not recorded fresh activity for 2d, beyond the expected 24h window.",
      "recommendation": "Verify whether the platform is genuinely idle or whether the telemetry write path for this surface has stalled.",
      "metricLabel": "age_minutes",
      "metricValueText": "2569",
      "metricValueNumeric": 2569,
      "alertFingerprint": "a60c3dbc358d20c4fffd413dfbf36bfe",
      "surfaceQuery": {
        "status": "stale",
        "surfaceKey": "alert_history"
      },
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 5,
      "analyticsRecentLimit": 5,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-04-30T19:51:56.209Z",
      "capturedAt": "2026-04-30T19:51:56.283Z"
    },
    {
      "alertEventId": "0cb8b9ee-769f-4e0b-bb51-5859b22bfd9a",
      "captureId": "cad2dcad-8fb4-4f34-9016-d0fb946b1821",
      "code": "summary_history_unavailable",
      "severity": "medium",
      "surface": "summary_history",
      "focusId": "analytics-recent-summary-history",
      "title": "summary history telemetry unavailable",
      "message": "The summary history analytics surface is currently unavailable, so summary data may be partial.",
      "recommendation": "Check database connectivity and the corresponding analytics feature flag.",
      "metricLabel": "reason",
      "metricValueText": "analytics_summary_history_failed",
      "metricValueNumeric": 0,
      "alertFingerprint": "2a9e69a6b097233b280d8b1d14c8ed86",
      "surfaceQuery": {},
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 5,
      "analyticsRecentLimit": 5,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-04-30T19:51:56.209Z",
      "capturedAt": "2026-04-30T19:51:56.283Z"
    },
    {
      "alertEventId": "f49e8eea-ef28-4cac-bd83-d8647a50f93e",
      "captureId": "cad2dcad-8fb4-4f34-9016-d0fb946b1821",
      "code": "grounded_ratio_low",
      "severity": "high",
      "surface": "summary",
      "focusId": "analytics-disease-breakdown",
      "title": "Grounded evidence ratio is trending low",
      "message": "Average grounded ratio is 30% for the current run window.",
      "recommendation": "Review recent pathway and evidence extraction outputs for low-grounding contexts.",
      "metricLabel": "grounded_ratio",
      "metricValueText": "0.298",
      "metricValueNumeric": 0.298,
      "alertFingerprint": "9affee371e73283f520671c90feb5789",
      "surfaceQuery": {},
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 5,
      "analyticsRecentLimit": 5,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-04-30T19:51:56.209Z",
      "capturedAt": "2026-04-30T19:51:56.283Z"
    },
    {
      "alertEventId": "ca21350c-5bfa-402b-9039-fac3cb2e7b14",
      "captureId": "cad2dcad-8fb4-4f34-9016-d0fb946b1821",
      "code": "stalled_jobs_detected",
      "severity": "high",
      "surface": "jobs",
      "focusId": "analytics-recent-jobs",
      "title": "Stalled jobs detected",
      "message": "46 queued or running jobs have gone past the heartbeat threshold.",
      "recommendation": "Inspect worker logs and replay the affected jobs from telemetry history.",
      "metricLabel": "stalled_jobs",
      "metricValueText": "46",
      "metricValueNumeric": 46,
      "alertFingerprint": "6c1ca04750fdc7c195553d2ac28b2c6c",
      "surfaceQuery": {
        "stalledOnly": "true"
      },
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 5,
      "analyticsRecentLimit": 5,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-04-30T19:51:56.209Z",
      "capturedAt": "2026-04-30T19:51:56.283Z"
    },
    {
      "alertEventId": "a318915c-e6be-4f96-9cd9-e420eb2cd85b",
      "captureId": "cbc22dfa-91d2-4f45-9502-847ff1cd661f",
      "code": "jobs_stale",
      "severity": "low",
      "surface": "freshness",
      "focusId": "analytics-recent-jobs",
      "title": "Jobs telemetry looks stale",
      "message": "Jobs has not recorded fresh activity for 8h, beyond the expected 6h window.",
      "recommendation": "Verify whether the platform is genuinely idle or whether the telemetry write path for this surface has stalled.",
      "metricLabel": "age_minutes",
      "metricValueText": "479",
      "metricValueNumeric": 479,
      "alertFingerprint": "279deeb1c578007334210d1022f8073f",
      "surfaceQuery": {
        "status": "stale",
        "surfaceKey": "jobs"
      },
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 8,
      "analyticsRecentLimit": 10,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-04-29T01:02:43.447Z",
      "capturedAt": "2026-04-29T01:02:43.558Z"
    },
    {
      "alertEventId": "c273aa45-5702-4c78-8b63-06b64583efee",
      "captureId": "cbc22dfa-91d2-4f45-9502-847ff1cd661f",
      "code": "summary_stale",
      "severity": "low",
      "surface": "freshness",
      "focusId": "analytics-recent-runs",
      "title": "Analysis Runs telemetry looks stale",
      "message": "Analysis Runs has not recorded fresh activity for 2d, beyond the expected 24h window.",
      "recommendation": "Verify whether the platform is genuinely idle or whether the telemetry write path for this surface has stalled.",
      "metricLabel": "age_minutes",
      "metricValueText": "2239",
      "metricValueNumeric": 2239,
      "alertFingerprint": "405ed12021927bbd81db9de4e8e5c043",
      "surfaceQuery": {
        "status": "stale",
        "surfaceKey": "summary"
      },
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 8,
      "analyticsRecentLimit": 10,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-04-29T01:02:43.447Z",
      "capturedAt": "2026-04-29T01:02:43.558Z"
    },
    {
      "alertEventId": "4b249ed6-0b81-4334-8a33-1dfd6cfabf27",
      "captureId": "cbc22dfa-91d2-4f45-9502-847ff1cd661f",
      "code": "analysis_progress_stale",
      "severity": "low",
      "surface": "freshness",
      "focusId": "analytics-recent-progress",
      "title": "Analysis Progress telemetry looks stale",
      "message": "Analysis Progress has not recorded fresh activity for 8h, beyond the expected 6h window.",
      "recommendation": "Verify whether the platform is genuinely idle or whether the telemetry write path for this surface has stalled.",
      "metricLabel": "age_minutes",
      "metricValueText": "480",
      "metricValueNumeric": 480,
      "alertFingerprint": "c89f72fb201f8c61881d35b4b4d19dd5",
      "surfaceQuery": {
        "status": "stale",
        "surfaceKey": "analysis_progress"
      },
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 8,
      "analyticsRecentLimit": 10,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-04-29T01:02:43.447Z",
      "capturedAt": "2026-04-29T01:02:43.558Z"
    },
    {
      "alertEventId": "47d1f62c-dbf4-4d3a-a008-99baef7cab84",
      "captureId": "cbc22dfa-91d2-4f45-9502-847ff1cd661f",
      "code": "export_gate_pressure",
      "severity": "high",
      "surface": "report_exports",
      "focusId": "analytics-recent-exports",
      "title": "Export gate pressure is elevated",
      "message": "42 of 42 exports were blocked or failed in the current window.",
      "recommendation": "Review blocker reasons and malformed citation drops in recent export attempts.",
      "metricLabel": "issue_rate",
      "metricValueText": "1",
      "metricValueNumeric": 1,
      "alertFingerprint": "d12bf5ad79aec99b1b3e2cc7be784169",
      "surfaceQuery": {
        "outcomeStatus": "blocked"
      },
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 8,
      "analyticsRecentLimit": 10,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-04-29T01:02:43.447Z",
      "capturedAt": "2026-04-29T01:02:43.558Z"
    },
    {
      "alertEventId": "850eb073-6ee6-4193-a937-c893020bf8ba",
      "captureId": "cbc22dfa-91d2-4f45-9502-847ff1cd661f",
      "code": "stalled_jobs_detected",
      "severity": "high",
      "surface": "jobs",
      "focusId": "analytics-recent-jobs",
      "title": "Stalled jobs detected",
      "message": "41 queued or running jobs have gone past the heartbeat threshold.",
      "recommendation": "Inspect worker logs and replay the affected jobs from telemetry history.",
      "metricLabel": "stalled_jobs",
      "metricValueText": "41",
      "metricValueNumeric": 41,
      "alertFingerprint": "3201867e4b12ed8b117798b771079f35",
      "surfaceQuery": {
        "stalledOnly": "true"
      },
      "analyticsWindowDays": 30,
      "analyticsBreakdownLimit": 8,
      "analyticsRecentLimit": 10,
      "dedupeWindowMinutes": 15,
      "generatedAt": "2026-04-29T01:02:43.447Z",
      "capturedAt": "2026-04-29T01:02:43.558Z"
    }
  ]
}