Skip to content

Surface source-data age (tiles + Photon index) via the API/health surface for staleness monitoring #8

Description

@davidnmbond

Summary

Expose the age / last-updated timestamp of the underlying source data (OpenStreetMap-derived tiles/Protomaps blob and the Photon geocoding index) via the service API/health surface, so consumers and operators can tell how stale the map data is.

Motivation

Raised at the Panoramic Data Operations Weekly on 2026-08-17. maps.panoramicdata.com (production, public) and maps-test.panoramicdata.com now self-host OSM-derived data in our datacentre. There is currently no rolling update of that source data and no way to see how old it is — it will silently drift stale until a customer notices.

Operations wants to add an Ops Dashboard page with RAG thresholds (warning at 90 days, critical at 180 days) for source-data age, per service URL. That dashboard needs the services to report the age of the data they are serving. This issue tracks the upstream capability that makes that possible.

Proposed

  • Surface, per data source, the timestamp/age of the loaded source data:
    • the tile / Protomaps (.pmtiles/blob) dataset build or import date;
    • the Photon geocoding index build date.
  • Expose it in a machine-readable way (e.g. a /health or /status / /version endpoint field, or dataset metadata) that a monitoring client can poll without authentication side effects.
  • Ideally include the source snapshot date (e.g. the OSM planet extract date) rather than just the local import time, where available.

Downstream consumer

  • Ops Dashboard staleness page — Panoramic Data Jira MS-25425 (90d warning / 180d critical, for both maps.panoramicdata.com and maps-test.panoramicdata.com).

Filed by Daisy on behalf of the Panoramic Data Operations team.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions