You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[Refactor] Production readiness: thread-safety, performance, and testing
- Add ASAN, UBSAN, TSAN sanitizer options to CMakeLists.txt
- Add sanitizer CI jobs (ASAN+UBSAN, TSAN separately - mutually exclusive)
- Fix null pointer dereference in A* multi-goal search (UBSAN detected)
- Added is_multi_goal_search_ flag to SearchContext
- A* strategy now checks flag before dereferencing goal iterator
- Update README.md with production features section
- Create CHANGELOG.md with unreleased changes
- Update test count to 317 in README
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
-**14 new unit tests** for production features (317 total tests)
18
+
19
+
### Changed
20
+
-**Deterministic tie-breaking**: Priority queue comparators now break ties by `vertex_id` for reproducible results
21
+
22
+
### Fixed
23
+
-**Iterator invalidation**: `Edge` and `Vertex::vertices_from` now use stable `Vertex*` pointers instead of iterators that could invalidate on `unordered_map` rehash
24
+
25
+
## [3.0.1] - 2025-08-19
26
+
27
+
### Fixed
28
+
- Codecov configuration updates
29
+
30
+
## [3.0.0] - 2025-08-19
31
+
32
+
### Added
33
+
- Unified search framework with CRTP strategy pattern
34
+
- Thread-safe concurrent searches via external `SearchContext`
35
+
- Generic cost type support with `CostTraits`
36
+
-`DynamicPriorityQueue` for efficient priority updates
37
+
- Comprehensive exception handling with custom exception types
38
+
- Structure validation for graphs and trees
39
+
- Extensive documentation and tutorials
40
+
41
+
### Changed
42
+
- Major API redesign for thread safety and generic costs
43
+
- Search algorithms now accept `SearchContext&` for thread-safe operation
0 commit comments