mirror of
https://github.com/azaion/gps-denied-onboard.git
synced 2026-06-22 14:41:15 +00:00
[autodev] Step 13 partial: c1/c2/c2_5/c3 cycle-1 doc sync
Item 2 (C1) + item 3 batch 1 of ~5 (C2 VPR, C2.5 Rerank, C3 Matcher) of the cycle-1 component-description reconciliation called out in ripple_log_cycle1.md. For each touched description.md: - Add a "Cycle-1 operational reality" paragraph in section 1 that names the _STRATEGY_REGISTRY + register_airborne_strategies() runtime gate (AZ-591), the pre_constructed dict path through compose_root (AZ-618 umbrella), the per-component AIRBORNE_REQUIRED_PRE_CONSTRUCTED_KEYS row, and any cycle-1 strategy-default vs documented-primary disambiguation (net_vlad as the C2 default; xfeat parked from the C3 airborne registry). - Relax the OpenCV row in section 5 Key Dependencies to the D-CROSS-CVE-1 cycle-1 pin (>=4.11.0.86,<4.12) wherever the component imports cv2 (C2 preprocessors, C2.5 ORB placeholder, C3 RANSAC + reprojection). - Add a "Cycle-1 Tier-2 follow-up dependencies" subsection in section 7 only for components with a strategy module that is built but parked from the airborne registry (C3 xfeat). Refresh ripple_log_cycle1.md follow-up ordering with per-batch progress + extracted batch pattern so the next batch session has a self-contained recipe. Bump _autodev_state.md sub_step.detail to reflect batch 1 completion (10 components + 8 helpers + tests/ remain). Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -6,6 +6,8 @@
|
||||
|
||||
**Architectural Pattern**: Strategy (single concrete implementation today: `InlierCountReRanker`, AZ-343). Future re-rank algorithms can be added as additional `ReRankStrategy` implementations behind the same interface.
|
||||
|
||||
**Cycle-1 operational reality**: the airborne binary registers `c2_5_rerank` into `_STRATEGY_REGISTRY` via `register_airborne_strategies()` (AZ-591) with a single strategy slot (`inlier_count`); the composition root passes infrastructure deps through the `pre_constructed` dict (AZ-618 → AZ-620 c6 phase + AZ-621 c3 helpers phase). The `c2_5_rerank` slot lists `("c6_tile_store", "c3_lightglue_runtime", "c3_feature_extractor", "clock")` in `AIRBORNE_REQUIRED_PRE_CONSTRUCTED_KEYS`; `c13_fdr` is optional. Missing keys raise `AirborneBootstrapError` at composition time, naming the consumer and missing key. The `FeatureExtractor` placeholder remains `OpenCvOrbExtractor` in cycle-1; the TRT-backed DISK/ALIKED swap is parked as a Tier-2 follow-up (carried as the `FeatureExtractor` row in § 6 below).
|
||||
|
||||
**Upstream dependencies**:
|
||||
- C2 → `VprResult` (top-K=10 candidates).
|
||||
- Shared `LightGlueRuntime` helper (used in single-pair mode for inlier counting; the same matcher object is shared with C3 — owned by the helper, not by C3, so neither component depends on the other at build time).
|
||||
@@ -68,6 +70,7 @@ No caching layer beyond C6's mmap. The same tile may be fetched repeatedly acros
|
||||
|---------|---------|---------|
|
||||
| LightGlue (Python) | upstream HEAD pinned per Plan-phase | Single-pair matching for inlier count |
|
||||
| TensorRT | matches C7 | LightGlue inference engine reuse |
|
||||
| OpenCV (`cv2`) | `>=4.11.0.86,<4.12` (cycle-1 relaxed pin; D-CROSS-CVE-1 deferred — see `_docs/_process_leftovers/2026-05-11_d_cross_cve_1_opencv_pin_deferred.md`) | `OpenCvOrbExtractor` placeholder feature extraction (will be swapped to a TRT-backed DISK/ALIKED extractor in a follow-up) |
|
||||
|
||||
**Error Handling Strategy**:
|
||||
- `RerankBackboneError`: LightGlue forward pass failed on one or more candidates. The candidate is dropped from the rerank set; if fewer than N=3 candidates survive, C2.5 returns whatever it has and C3 proceeds with reduced N.
|
||||
|
||||
Reference in New Issue
Block a user