Chat: Adsb For Heli Videos (Bead)

**Chat log** from Bead: Bead · [canonical source](https://redfish.acequia.io/guerin/.agents/2986ff41-41ea-4629-bc6b-3ce22f55e628/2026-06-13/chats/2026-06-13-adsb-for-heli-videos.md) · session 2026-06-13 · discussion: Talk: Bead *Verbatim chat log: immutable provenance. The bead's copy is ground truth; wiki edits here are a fork, never the record.*

Bead `2986ff41-41ea-4629-bc6b-3ce22f55e628`, child of media-forager `58c0a5e0`. CE scribe session. This is the verbatim-prompt + summarized-work record per beads.md Implementation Detail #5.

## Verbatim task prompt (parent → CE) > You are a CE (write-capable) bead scribe in the Redfish/acequia agent ecology. Your job: recover the **ADS-B flight telemetry** (historical tracks) for a set of LA-area wildfire **news-helicopter videos**, and persist the work as a **child bead** with skills + notes + artifacts. This is a background research task; partial success is fine — document what you find and what you can't. > > [Ground rules: follow beads.md; write only inside the child bead + Downloads scratch; mount-don't-copy the prior ADS-B skill via reference + names.json. Child bead GUID `2986ff41-…`, slug `adsb-for-heli-videos`, birth-parent media-forager `58c0a5e0`. Mount prior bead `65783732` (firewatch-camera-grid) which built+validated the adsb.lol pipeline; key facts: adsb.lol unfiltered ODbL archive, N828AP=Helinet AS350 icao ab4ea1, squawk 1255=fire, dbFlags&1=mil. Five target videos (ABC Palisades, CBS Creek, KTLA Sky5 Palisades, ABC10 Hughes/Castaic, Vertical+ Palisades). Build the news-heli N→ICAO fleet table from scanriverside t=1246 + Welk ENG. Method: yt-dlp -J → bound window → resolve adsb.lol release → stream-filter to fire bbox → pick news/fire/mil → emit sidecars + summary. Deliverables: about/README/agent/keywords/names + skill recover-heli-adsb-from-video.md + notes 00/01/02 + artifacts adsb-<event>/. Cross-link tracks as the camera-position-prior/geometry for the parent's STAC items. Return a concise per-video summary.]

## Work done (summary; durable detail lives in the notes/skills/artifacts) 1. **Read mounts:** beads.md; firewatch-camera-grid `65783732` skill `pull-adsblol-history.{md,py}` + note 08 (Sandy result, N828AP de-blur). Confirmed the parent bead `58c0a5e0` not yet on local disk (sibling scaffolding it) → referenced by URI only. 2. **yt-dlp -J** all 5 videos → bounded UTC windows. Key finding: `timestamp` = YouTube *publish* time (upper bound) for `not_live` re-uploads; only `was_live` clips give a true broadcast window. Recorded in note 00. 3. **Fleet table** (note 01): built N→ICAO for AIR7/N71HD, ABC-backup/N828AP, SkyCal/N29HD, NBC4/N358TV+N29LW, Sky5/N925TV, SkyFOX/N93DD+N39CL, pool/N50Q. ICAO hexes via hexdb.io (verified N828AP→AB4EA1). Validated against the `r` field returned by the pulls. 4. **Pulled + stream-filtered 5 adsb.lol days** (`globe_history_2025`, ~2.1 GB each, streamed not unpacked): Jan 7, 8, 9 (Palisades), Jan 10 (Creek/Sylmar), Jan 23 (Hughes/Castaic). Pruned each to news/fire/mil keepers; deleted ~10 GB raw tars as scratch. 5. **Results** (note 02): 4/5 videos recovered to a strong camera-ship candidate (ABC→N828AP, KTLA→N925TV, ABC10 Hughes→N71HD, CBS Creek→N358TV pool + N29HD inferred). #5 (Vertical Plus) not recovered — produced retrospective, indeterminate capture date; firefighting-fleet candidate priors supplied. 6. **Scaffolded the bead:** about/README/agent.md/agent.json/keywords/names + adapter skill + notes 00/01/02 + artifact sidecars. Background-synced per beads.md dirty gate.

## Tool calls (by outcome) - `yt-dlp -J <url>` ×5 → metadata. `curl api.github.com/.../releases/tags/...` → confirmed 5 release tags exist. `curl -L .../tar.aa|.ab` → downloaded to Downloads scratch (background). `cat parts | pull-adsblol-history.py --bbox --t0 --t1 --out` ×5 → filtered. Python prune scripts → keeper-only summaries. `hexdb.io/reg-hex` → ICAO resolution. WebSearch/WebFetch (scanriverside, Welk, Helinet) → fleet table.

## Note on a leak caught + fixed First `mkdir` ran before the bead dir existed and created an empty `2026-06-13/` at the `.agents/` root (failed `cd`). Detected immediately, removed the stray empty dirs, recreated under the correct bead GUID. No files were lost (the stray dirs were empty).