Review story 2.1: aircraft data model and fetcher passes all ACs
All 5 ACs verified clean: field mapping, safe defaults, timeout propagation, MLAT detection, and FileFixtureFetcher. 64 tests pass, ruff check and format clean. Sprint status updated to done, deferred-work updated with runtime verification note for HttpFetcher on live dump1090. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -83,3 +83,12 @@ Description: `provision.py` calls `app.run(port=80)` which requires root privile
|
||||
Story: `1-5-provisioning-execution-tile-download-cache-validation-and-wifi-kill`
|
||||
Category: Technical debt
|
||||
Description: The `POST /submit` handler is fully synchronous — the browser connection stays open while tile download, airspace download, and cache validation complete (potentially 2–5 minutes). This is acceptable for MVP but a streaming response (using `flask.stream_with_context` or a background thread with server-sent events) would improve UX by allowing the browser to render progress feedback without holding an open connection.
|
||||
|
||||
---
|
||||
|
||||
## Story 2.1: Aircraft Data Model & Fetcher
|
||||
|
||||
### [2-1] HttpFetcher live dump1090 runtime verification
|
||||
Story: `2-1-aircraft-data-model-and-fetcher`
|
||||
Category: Runtime verification
|
||||
Description: `HttpFetcher` is tested with mocks only. Live feed at `http://localhost:8080/data/aircraft.json` can only be verified on device with an RTL-SDR dongle connected and dump1090 running. No automated test covers the real HTTP path to dump1090.
|
||||
|
||||
Reference in New Issue
Block a user