Release Notes: v0.2.1¶
Date: 18th July 2026
Summary¶
Version 0.2.1 introduces architectural optimisations to the backend pathfinding engine alongside essential accuracy improvements to the frontend region constraints. By overhauling how data flows through our graph processor, route generation times have plummeted from over 1,000ms down to single-digit and double-digit milliseconds.
What Changed¶
The pathfinding pipeline received a major performance overhaul by shifting from localised graph slicing to a gated search architecture on the global graph dataset.
- Eliminated
graph.subgraph()Memory Overhead: Replaced the physical slicing of the 1M-node master graph with an in-memory allowed node set lookup. This eliminates massive CPU spikes, object instantiation costs, and garbage collection pauses during route execution. - Streamlined Spatial Indexing: Removed redundant, per-request local
KDTreegeneration. The algorithm now instantly resolves start and end locations using the global spatial index initialised at boot. - Cache Optimisation: By maintaining a persistent graph structure instead of tearing it down and rebuilding it on every API call, the system now takes full advantage of hardware CPU cache lines, delivering sub-10ms response times on subsequent regional queries.
Bug Fixes¶
- Enhanced Region Boundary Accuracy (Frontend): Significantly increased the density of coordinates within the
cumbria_boundaryarray. Defining the borders with higher resolution eliminates edge-case boundary errors, preventing valid edge coordinates from being incorrectly flagged or rejected as being outside the Cumbria region.