Skip to content

feat(ops): add data freshness dashboard #44

Description

@Flickwire-Agent

User Story

As the operator of the service, I want a data freshness dashboard so that I can quickly tell whether scans, caches, and external API ingestion are healthy.

Why This Matters

The app depends on scheduled scans across thousands of item-region combinations. If ingestion falls behind, users may make bad trading decisions. Operator-facing freshness visibility shortens incident detection and debugging.

Acceptance Criteria

  • A dashboard or status page shows scan progress, oldest snapshot age, latest cache generation time, queue depth, failed jobs, and last successful worker activity.
  • The dashboard distinguishes API health from market-data freshness.
  • Freshness thresholds are visually classified as healthy, warning, or stale.
  • The data is available through a documented API endpoint.
  • The page avoids exposing secrets or sensitive infrastructure details.
  • Existing /api/health and /api/worker/status behavior remains intact.

Useful Context

  • /api/worker/status already exposes queue and 24-hour job stats.
  • Market snapshot persistence can provide oldest/newest fetched timestamps.
  • This is useful for both humans and future automated health checks.

Suggested Verification

  • Build API and web packages.
  • Manually compare dashboard values to worker status and database-derived timestamps.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: backendBackend/API workarea: frontendFrontend/UI workarea: opsOperational tooling and observabilityenhancementNew feature or requestpoints: 3Estimated effort: 3 story pointspriority: mediumMedium-impact optimizationsprint: backlogReady for future sprint planning

    Projects

    Status
    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions