# dronewatch — Changelog

## v0.1.1 — 2026-06-22

- Add `--full` extended-help flag per SUITE_STANDARDS.md §3.

## v0.1.0 — 2026-06-20

Phase 1 of the dronewatch passive drone detection CLI. Source-complete;
binary release signed + rsynced operator-side. See
`TO_ADD/DRONEWATCH_SPEC.md` for the full multi-phase blueprint.

- `dronewatch run` — live detection loop on a monitor-mode WiFi
  interface. Pipes 802.11 management frames → rule engine → correlator
  → one-line alert or NDJSON.
- `dronewatch scan` — one-shot capture with a duration timeout; prints
  a `packets_seen / sensor_events / rule_hits` summary.
- `dronewatch decode <pcap>` — offline replay through the same
  pipeline; no root needed.
- `dronewatch list-hw` — enumerates `/sys/class/net` and flags WiFi
  interfaces.
- `dronewatch version` — version + tagline.
- WiFi sensor: radiotap RSSI + Beacon (0x80) and Probe Response (0x50)
  management-frame parser. Extracts SA MAC + SSID + vendor IEs.
- OpenDroneID WiFi-vendor-IE decoder (pure Rust, no `opendroneid-core-c`
  FFI). Handles Basic ID + Location + Operator ID; recognises and
  skips Authentication / SelfID / System (queued for v0.2).
- Rule engine: drone-vendor OUI match (DJI / Parrot / Autel / Skydio /
  Yuneec), drone-shaped SSID substring match (mavic, phantom, tello,
  anafi, ardrone, evo, skydio, typhoon), RemoteID-always (escalates
  to MEDIUM if speed > 30 m/s per spec §7.4).
- Correlator: dedup by MAC and UAS-ID with a configurable window
  (default 30 s). Probabilistic confidence combination.
- Tracker: Acquiring → Active → Coasting → Lost state machine.
- Output: NDJSON one line per `contact_update`; canonical one-line
  alert formatter; optional daily-rotated log in `--log-dir`.
- Mandatory tagline footer on every `--help` and `version`:
  `[ dronewatch ] ─ an independent project by johlem.net`.
- 25 unit + 5 integration tests green; zero compiler warnings.

### Deferred to later phases (per spec §15)

- v0.2: BLE RemoteID + ADS-B Beast TCP + ratatui TUI + TOML config-file
  loader.
- v0.3: SoapySDR + FFT + FHSS detection + rule-engine hot-reload.
- v0.4: Webhook + syslog/journald output; full §7.4 escalation rules.
- v0.5: MAVLink + acoustic sensors (both feature-gated) + MQTT output.
- v1.0: ONNX `ort`-backed RF classifier + Ed25519 NDJSON log signing
  + full integration test suite.
