Commit Graph

7 Commits

Author SHA1 Message Date
edfc567266 feat: lazy graph expansion - hub station selection, on-demand /search, and transfer depth limiting
- Remove Population field from HubStation; hub selection now uses only outgoing flights criterion
- Simplify SelectHubStations criteria (minPopulation removed from function calls)
- Add synthetic edge fallback in FindRoute when lazy expansion fails
- Add ResetCircuitBreaker helper to yandex client for test reset
- Update test criteria to match new hub selection logic
- Remove TestLazySearchCacheIntegration (replaced by integration tests)
2026-08-15 01:15:02 +03:00
15917401a9 feat: complete lazy graph expansion implementation with cache-aware search and transfer depth limiting
- Task 1: Hub station selection and BuildGraphFromHubs
- Task 2: Yandex /search on-demand edge expansion with caching
- Task 3: FindRoute with lazy expansion and 4-5 transfer depth limit
- Task 4: Cache-aware search results with TTL policies (near-term: 2-6h, far-term: 7d)
- Task 5: End-to-end verification and documentation
- Task 6: Final verification - all internal/routing unit tests pass (22/22)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-14 22:54:45 +03:00
0f95e3e2f8 feat: implement lazy graph expansion FindRoute with on-demand /search and transfer depth limit 2026-08-14 15:27:17 +03:00
181575e092 feat: implement Yandex /search method for on-demand edge expansion (Task 2)
- Add SearchRoutes method to yandex client for on-demand station pair searches
- Implement hub expansion via on-demand /search calls in lazy graph expansion
- Integrate cache key generation for search results (search:{from}:{to}:{date})
- Update expandFromStation and expandFromCityHub to use Yandex API
- Add NewGraphWithoutYandex constructor for testability
- Add tests for on-demand search integration and cache TTL policies
2026-08-14 14:14:14 +03:00
829e93fc8f feat: implement lazy graph expansion - Task 1: hub station selection, BuildGraphFromHubs, and ExpandGraphLazy 2026-08-14 14:00:01 +03:00
2101362d31 feat: complete Task 7 - end-to-end integration and full test suite 2026-08-13 21:01:53 +03:00
39f20bff4f feat: implement routing graph and search algorithm (max 1 transfer) - Task 4
- Create Graph type with Node/Edge types and methods
- Implement BuildGraphFromStations, SortEdges
- Implement BFS/Dijkstra FindRoute with 1-transfer limit
- Implement ApplyMCT for Minimum Connection Time rules
- Add search algorithm tests (success route, no-route, transfer limit)
- Add MCT application tests (city hub reduction, mode change)
- Update plan Task 4 checkboxes
2026-08-13 20:13:49 +03:00