Files
Oleksandr Bezdieniezhnykh 8e2ecf50fd Initial commit
Made-with: Cursor
2026-03-26 00:20:30 +02:00

55 lines
3.8 KiB
Markdown

# Autopilot State
## Current Step
step: 3
name: Decompose
status: in_progress
sub_step: 1 — Bootstrap Structure Plan
## Completed Steps
| Step | SubStep | Name | Completed | Key Outcome |
| ---- | ------- | -------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| 0 | 4/4 | Problem | 2026-03-19 | Semantic detection for camouflaged positions via two-level scan, 3 submodules |
| 1 | 4/4 | Research (Mode A) | 2026-03-19 | Draft01: three-tier architecture (YOLOE-26 + CNN + VLM) |
| 1 | 8/8 | Research (Mode B R1) | 2026-03-19 | Draft02: 11 weak points addressed — thermal, robustness, degradation, VLM availability hedge |
| 1 | 8/8 | Research (Mode B R2) | 2026-03-19 | Draft03: 11 more weak points — vLLM replaced with NanoLLM, dual backbone, NVMe mandatory, CRC UART, recording/logging, power management |
| 2 | 6/6 | Plan | 2026-03-20 | 6 components + 2 helpers, 93 tests across 6 specs, 8 epics (42-68 pts), 96% AC coverage, FINAL_report.md complete |
## Key Decisions
- Three-tier architecture with graceful degradation
- YOLOE backbone configurable: benchmark YOLO11 vs YOLO26 before committing
- FP16 TRT only for initial deployment (INT8 unstable on Jetson)
- NanoLLM replaces vLLM as VLM runtime (vLLM unstable on Jetson)
- VILA1.5-3B primary VLM via NanoLLM; UAV-VL-R1 via llama.cpp if GGUF available
- NVMe SSD mandatory (SD card corruption documented)
- UART integrity: check ViewLink spec first for native checksum, then add CRC-16 if needed
- Detection logger + frame recorder for post-flight review and training data
- Power monitoring via INA sensors + load shedding
- Ruggedized carrier board (MILBOX-ORNX or similar)
- V1 path tracing: minimal heuristic, no CNN (ship fast, validate)
- **V2 CNN removed from plan** — heuristic + VLM sufficient; CNN adds unnecessary complexity
- Version pinning: Ultralytics, JetPack, NanoLLM
- E2E test coverage of 76% accepted
- Data model simplified: no traditional DB, only runtime structs + persistent flat files (NVMe)
- Architecture simplified: 5 system flows, inline health checks, capability flags, 2 environments
- ScanController: Behavior Tree (py_trees 2.4.0) — ADR-008
- **Dynamic Search Scenarios** — data-driven YAML configs with 4 investigation types (path_follow, cluster_follow, area_sweep, zoom_classify)
- **GIL is not a concern** — all compute-heavy ops release GIL; VLM in separate process; single-threaded by design
- **Tier2PathTracer generalized to Tier2SpatialAnalyzer** — supports mask tracing (footpaths) and cluster tracing (AA networks, vehicle groups) via unified SpatialAnalysisResult/Waypoint output
- Jira epics created: AZ-130 (Bootstrap), AZ-131 (Tier1), AZ-132 (Tier2), AZ-133 (VLM), AZ-134 (Gimbal), AZ-135 (Output), AZ-136 (ScanController), AZ-137 (Integration Tests)
## Last Session
date: 2026-03-20
ended_at: Step 2 Plan — SubStep 6/6 complete
reason: Plan step completed, auto-chaining to Step 3 Decompose
notes: Steps 5 (Test Specifications) and 6 (Jira Epics) completed. 93 tests written across 6 component test specs (50 integration, 14 performance, 9 security, 20 acceptance). 8 epics documented in epics.md (Jira MCP auth skipped). FINAL_report.md written. 96% AC coverage (27/28 — AC-28 training dataset is data annotation scope, not runtime).
## Blockers
- R05 (Critical): Seasonal generalization — mitigated by phased rollout (winter first)