update tests

This commit is contained in:
Oleksandr Bezdieniezhnykh
2025-11-30 16:21:03 +02:00
parent ce9760fcbe
commit b12f37ab01
12 changed files with 1435 additions and 603 deletions
+19 -17
View File
@@ -8,12 +8,14 @@ Validate Acceptance Criterion 5 (partial): "System should try to operate when UA
## Preconditions
1. System with "Atlas" multi-map capability (factor graph with native chunk support)
2. F12 Route Chunk Manager functional
3. F10 Factor Graph Optimizer with multi-chunk support
4. L2 global place recognition functional (chunk semantic matching)
5. L3 metric refinement functional (chunk LiteSAM matching)
6. Geodetic map-merging logic implemented (Sim(3) transform)
7. Test dataset: Simulate 3 disconnected route fragments
2. F02.2 Flight Processing Engine running
3. F11 Failure Recovery Coordinator (chunk orchestration)
4. F12 Route Chunk Manager functional (chunk lifecycle)
5. F10 Factor Graph Optimizer with multi-chunk support (subgraph operations)
6. F08 Global Place Recognition (chunk semantic matching via `retrieve_candidate_tiles_for_chunk()`)
7. F09 Metric Refinement (chunk LiteSAM matching)
8. Geodetic map-merging logic implemented (Sim(3) transform via F10.merge_chunk_subgraphs())
9. Test dataset: Simulate 3 disconnected route fragments
## Test Description
Test system's ability to handle completely disconnected route segments (no overlap between segments) and eventually connect them into a coherent trajectory using global GPS anchors.
@@ -141,24 +143,24 @@ Processing Mode: Multi-Map Atlas
## Architecture Elements
**Multi-Map "Atlas"** (per solution document):
- Each disconnected segment gets own local map
- Local maps independently optimized
- GPS anchors provide global reference
- Geodetic merging aligns all maps
- Each disconnected segment gets own local map via F12.create_chunk()
- Local maps independently optimized via F10.optimize_chunk()
- GPS anchors provide global reference via F10.add_chunk_anchor()
- Geodetic merging aligns all maps via F10.merge_chunk_subgraphs()
**Recovery Mechanisms**:
- **Proactive chunk creation** on tracking loss (immediate, not reactive)
- Chunk semantic matching (aggregate DINOv2) finds location for chunk
- Chunk LiteSAM matching (with rotation sweeps) refines GPS anchor
- Factor graph creates new chunk subgraph
- Sim(3) transform merges chunks into global trajectory
- **Proactive chunk creation** via F11.create_chunk_on_tracking_loss() (immediate, not reactive)
- Chunk semantic matching via F08.retrieve_candidate_tiles_for_chunk() (aggregate DINOv2)
- Chunk LiteSAM matching via F06.try_chunk_rotation_steps() + F09.align_chunk_to_satellite()
- F10 creates new chunk subgraph
- Sim(3) transform merges chunks via F12.merge_chunks() → F10.merge_chunk_subgraphs()
**Fragment Detection**:
- Large displacement (> 500m) from last image
- Low/zero overlap
- Low/zero overlap (F07 VO fails)
- L1 failure triggers **proactive** new chunk creation
- Chunks processed independently with local optimization
- Multiple chunks can exist simultaneously
- Multiple chunks can exist simultaneously (F10 supports multi-chunk factor graph)
## Notes
- AC-5 describes realistic operational scenario (multiple turns, disconnected segments)