H3 Features And Travel Time

Summary

H3 features and travel time are the scoring substrate for geo opportunity. The platform does not ask only what is inside one hex. It asks what opportunity is reachable from an origin within a configured drive-time radius.

Reader Question

How do parcel features, H3 aggregation, road-network travel time, and score families become inspectable opportunity surfaces?

Surface Or Workflow

Operators see this as heat maps, deciles, confidence, score-family controls, and tooltips. Engineers trace the surface through feature services, routing matrix services, scoring jobs, and tests for drive-time behavior.

Lifecycle

Canonical parcels become parcel features. Features aggregate into observed H3 features and smoothed context. Road-network jobs build travel-time matrices. Drive-time aggregation then computes reachable opportunity, operational context, and score explanations. Scoring jobs publish score rows and export safe map layers.

Child Threads

  • geo-feature-build-jobs: parcel, hex, smoothing, and accessibility jobs.
  • geo-routing-matrix: road-network ingestion and OD matrix generation.
  • geo-score-families: component and strategic score publication.
  • Geo Analysis Console Orientation

Implementation Boundaries

services/geo/features owns feature logic. services/geo/routing owns drive-time and matrix behavior. Jobs under jobs/geo rebuild features, matrices, accessibility, scores, and map layers. Production serving should use precomputed/promoted data rather than recomputing heavy matrices inline.

Tradeoffs

Travel-time scoring is heavier than simple distance scoring, but it is closer to operational reality. The cost is compute complexity and stronger separation between compute environments and normal serving.

Visual

The current visual is a graph neighborhood. The intended visual is a data-flow diagram from parcel features to H3 aggregation, travel-time matrix, score families, map export, and console rendering.

Source Evidence

  • services/geo/features
  • services/geo/routing
  • jobs/geo/build_hex_features/run.py
  • jobs/geo/build_hex_travel_time_matrix/run.py
  • jobs/geo/build_hex_accessibility_features/run.py
  • jobs/geo/score_hexes/run.py
  • tests/geo/test_features_and_scoring.py
  • tests/geo/test_routing_drive_time.py