Skip to content

Isochrone Provider Integration & Redis Caching #59

Description

@hoangsonww

Summary
Generate travel-time polygons via a pluggable provider (Mapbox, OpenRouteService, Google) and cache by normalized request hash to meet latency goals.

Acceptance Criteria

  • POST /api/commute/isochrone returns GeoJSON polygon(s) for { destinations[], mode, window, minutes }.
  • Requests normalized and hashed; cached results returned when available.
  • P95 cached response ≤ 5s; cold path ≤ 10s on happy path.
  • Rate limiting and retry/backoff with exponential jitter.

Tasks

  • Provider abstraction + config flags
  • Request normalization + hashing
  • Redis get/set with TTL; metrics on hit ratio
  • Error mapping to user-friendly messages
  • Unit tests: hashing, caching, retries

Metadata

Metadata

Labels

backendPR that updates the backend codebugSomething isn't workingchoreProject chore tasksci/cdCI/CD Pipeline updatesdocumentationImprovements or additions to documentationenhancementNew feature or requestfrontendPR that updates the frontend codegood first issueGood for newcomershelp wantedExtra attention is needed

Projects

Status
Todo
Status
Backlog

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions