- SITREP 020-A1, addendum to SITREP 020 (which stays as issued): the 29 passes inside 020's window that the archive listed late and the
Version history
Every change to the Roger Wilco Imagery pipeline and this site, numbered and dated. Versions follow semantic versioning while the project is pre-alpha (0.x).
Pipeline
v0.8.9
commit
7fca7d59Frontend
v0.24.0
built 03 Nov 2026 00:46 UTC
Pipeline
Data collection, analysis and reporting.
- Same-day pickups add up instead of replacing each other. Each pickup wrote
data/<run date>/manifest.jsonfrom scratch, so a second - No overwriting of imaging passes (owner's rule, 1 Nov, until a condition for replacing a pass is agreed). A pass or baseline already
- Baseline backfill (
scripts/baseline_backfill.py, *Baseline backfill* workflow; roadmapbaseline-imagery). 208 of 214 enabled - Lead close-out: RWI-SITREP-017-L1 (CFB Gagetown fire) is now published: Prime Rogue's blog, 30 Oct 08:51 UTC (self-published; RWI
- Roadmap:
baseline-imagery(shipped),pickup-continuity(merging shipped; gap-free windows next), andlead-to-storyin progress
- RWI-HC-007 V1: blind hindcast benchmark on an interview answer (interview text not published), kept with the owner's grading;
reports/desk-notes.yaml: notes pushed to the journalist desk, addressed to all journalists or to listed accounts, optionally
- GPT benchmark run taken out of the live pipeline (BENCH-010, graded FAIL). From 30 Oct 11:34 UTC a GPT run pushed about 110 commits
- SITREPs 020–024, BRIEF 006 and hindcasts HC-005/HC-006 were GPT products: unregistered; their PDFs are attached to BENCH-010 on the
- GPT leftovers deleted: its data folders (ADS-B profiles, Antarctic watch, research packets), the Panhandle and New Zealand Watch
- Roadmap:
benchmark-attachments, the interim fix (model output only as graded benchmark entries); the permanent fix goes through the - Removed GPT's 14 workflows (several ran automatically, e.g. per-detection research after every daily pickup and an Antarctic flight
- Kept: Claude's 0.8.5 VIIRS fix, SITREP 019, and the daily pickup data collected during the run (normal pipeline output).
incident_pull.py, VIIRS granules: with the 0.8.3 token fix the near-real-time downloads no longer came back as a login page; instead they hung until the 2-hour job limit with nothing logged (29 Oct, Gagetown, 20 granules). Each download now has 20 s connect / 60 s read timeouts and 2 tries. VIIRS downloads stop after a 25-minute budget (the rest are listed as skipped; FIRMS covers the same pixels). Each granule logs its HTTP status, size, time and the hosts it was redirected through, so the next run shows where it stalls.
- Workflows free about 20 GB of unused runner toolchains (dotnet, Android, GHC, CodeQL, Boost) before checking out the repo. The 29 Oct daily pickup failed with "No space left on device": the checkout is now about 8 GB of data, too much for the runner's free space once the pickup's downloads are added. Longer term, raw chips and logs need to move out of git.
- Cloud mask v2 everywhere Sentinel-2 is read.
incident_pull.py(baseline must pass it; dNBR compares only pixels both masks call clear; cloudmask.mask(min_area=…): extra-test cloud patches smaller than this are left alone.detect.pyuses 200 px (aircraft are at most 60 px) and- Heat sources (roadmap
flare-vs-fire, step 1).scripts/heat_sources.pylearns which hot spots burn all the time from FIRMS history (a incident_pull.py: VIIRS near-real-time granules (*_NRT, from LANCE) failed with "file signature not found" since 27 Oct: requests droppedtask.py: the imagery step passed--bbox W,S,E,Nas two arguments, so a western-hemisphere box (leading minus) failed with "expected one- *Incident pull* workflow: no longer reports failure when trigger line 2 (GOES) is empty.
- Tasking (custom runs), phase 1.
sources.yamllists what can be tasked: Sentinel-2, Sentinel-1, Landsat, VIIRS granules, FIRMS, incident_pull.py: Sentinel-1 scenes that only have HH/HV (most Canadian and Arctic SDH acquisitions) are read as HH instead of
- Cloud mask v2 for the daily pickup (
scripts/cloudmask.py). SCL let fair-weather cumulus and haze through as clear: Rzeszów on 27 Oct scored - Sentinel-2 raw chips gain a sixth layer, B11 (SWIR 1.6 µm), used for snow vs cloud.
- On the 103 saved passes with a baseline (
tools/cloudmask_eval.py): Rzeszów 27 Oct 09:36 1.00 → 0.46 clear (no longer usable), 09:46 change - Not yet:
detect.py,incident_pull.pyandwilco_analysis.pystill use SCL alone.
- Lead differentiation test (journalist hold). SITREPs 014 and 015 were built as a test of differentiated leads: the full report (with
- Lead status register (
reports/lead-status.yaml). - NASA FIRMS map key:
scripts/firms_area.pyand the *FIRMS area pull* workflow (any box, any dates, every satellite). Two keys as named - Tracks end as closed or aborted and stay in the Track archive; TRK-001–007 ended.
- ADS-B archive scanner:
--hex(whole-day traces) and abasesprofile (aircraft using each detect site); commit step keeps any scripts/identify_counts.py: names for ship and aircraft counts from transponders (roadmap item ship-air-counts; first run pending).- Reports: SITREP 014 (Israel election day), SITREP 015 (four zones, 21–27 Oct); Wainwright airlift whole-route plate.
- Ship counts from Sentinel-1 radar (CFAR detector on a JRC surface-water mask) and transient-aircraft counts from Sentinel-2 (change vs a multi-scene median on OpenStreetMap aprons), with size classes and annotated plates (
scripts/detect.py). - ADS-B logging of military-flagged aircraft near watchlist sites every 20 minutes (adsb.lol, no key) and optional AIS logging (aisstream.io, needs
AISSTREAM_API_KEY), stored on thetracksbranch; detections are matched to these for identities. - Pilot sites flagged
detect: true: Halifax, Esquimalt, Norfolk, Trenton, Winnipeg, Barksdale.
- Added 65 radar sites: the full North Warning System (45 in Canada, 6 on Alaska's North Slope) and 14 Alaska Radar System (NORAD) long-range radars. New
programfield. - Added 12 Canadian installations and detachments abroad: operational support hubs (Kuwait, Germany, Senegal, Jamaica), Formation Europe/SHAPE, NATO Geilenkirchen, Stavanger, Lille, Izmir, and NORAD sites in Colorado Springs and Alaska.
- Watchlist now 164 sites (160 active).
- Added 38 Canadian military installations (all CAF bases, wings, support bases and stations on DND's footprint list, plus major training areas, Ottawa HQ sites, and northern forward operating locations). Canada now has 43 sites; watchlist 87.
- Added Taman Peninsula (Crimean energy-bridge substation area) and a coarse peninsula-wide Crimea box after the 23–24 Oct blackout strike. Watchlist now 49 sites.
- Every site tagged with a geographic region, US combatant command (area of responsibility) and a list of countries, for filtering.
- Every watchlist site now carries an
addedtimestamp (backfilled from git history). - SITREP register (
reports/index.yaml) for numbered reports; frontend builds from it. - SITREP 002 issued; shared report styles.
- Southern Lebanon box extended north to cover the Nabatieh area.
- Gaza box flagged: rectangle includes Israeli territory; polygon support pending.
- Quicklook-only mode with georeference sidecars for long look-back windows.
- 7-day pull; weekly SITREP 001 (7 d / 72 h / 24 h) with annotated plates and news correlation.
- Watchlist expanded to 47 sites: +10 bases, +3 conflict zones, +10 infrastructure sites.
- 3-hourly FIRMS thermal watch with persistent-site baselines, seeded with 7 days.
- First watchlist (18 bases, 6 zones), daily pickup of Sentinel-2, Sentinel-1, Landsat 8/9 and FIRMS.
- First 48-hour run and analyst SITREP.
Frontend
This website.
- Journalist holds: every held report or lead shows "Released automatically on <date>, or released manually earlier" and a "Click here to receive status updates on this hindcast/report" link (mailto; address from repo variable
RWI_UPDATES_EMAIL, else the desk inbox for now). - Hold reason shown:
hold_reason: tasking | reviewon the register entry; otherwise the general note that holds are due to tasking or to sensitive, potentially personal identifiers reviewed before public release. Desk rules list it too.
- The build writes the site's password protection into
.htaccess(Basic auth, bcrypt.htpasswdfrom repo secrets), so a Git deploy no longer drops hPanel's directory protection.public/(version history) stays open;.ht*files are denied. Without the secrets the build warns that the site is unprotected.
- Watch pages count Canadian military aircraft as "Canadian military" (the pipeline used to file them as foreign military).
- Watch publication delay. A Watch with
publish_delay_hin the pipeline'swatches.yamlkeeps each issue off the site until that many - The 18 new regional benchmark Watches and their 165 sites come from the pipeline (watches.yaml, watchlist.yaml); no other change was needed.
- Checklist page (More → Checklist): the pipeline's running pre-alpha checklist (
docs/CHECKLIST.md, written by
- Time standard (pipeline
docs/TIME-STANDARD.md). UTC is the record: every date the site prints now reads25 Oct 2026 10:07 UTC; - Month repos (#16): the build reads the pipeline's daily folders from
rwi-sitreps-<month>-<year>from November 2026.
- Place pages show baseline imagery. They listed only the passes in the pipeline's pickup manifests, never the clear baseline image
- Desk notes (pipeline
reports/desk-notes.yaml): requests for comment, updates and corrections pushed to the journalist desk under
- Google Analytics (gtag.js, G-ZNE290R17G) on every page: the site shell (all pages, desk included), the public version-history
- GPT benchmark run removed from the site (pipeline BENCH-010, graded FAIL).
build.py,v2.py,build.ymland the README are - Benchmark entries can attach the files they evaluate (
attachments:in the front matter, paths in the pipeline repo). They are
- The v2 interface is the site. Its pages now live at the root, so the address bar shows
/,place/…,report/…andmap.htmlinstead of/v2/…. - The classic site is archived at
/v1/: the last build that still had it (29 Oct 2026, 06:26 UTC), frozen bytools/make_v1_archive.pyinarchive/v1/. tests/hold_leak_test.pychecks the root pages.
- A carried-forward lead now stays held until the lead it repeats is released. SITREP 017's L4 repeats SITREP 016's L1 word for word; under a live hold it would have published 016's lead early. The deploy's hold-leak test caught it and blocked every build since the pipeline published SITREP 017.
- Build: blobless pipeline checkout, and runner disk freed before checkout (deploys had been failing with "no space left on device").
- Tasking, phase 1 (admins only): a Task page (v2/task.html, "Task" in the rail, "Task a pass" on every place page) to order a custom run of all sources, a preset (imagery, fire, air) or a hand-picked set, for one to ten targets (a watchlist site, a point and radius, or a box) over a date range.
- Fixed: the full-screen Map was 2 px tall (a 0.16.1 rule for the map's fallback message overrode its layout), so on phones it showed no map at all.
- Map on phones: the Layers and time panel folds to one line at the top of the map; tap it to open.
- The CSS and JS links carry a hash of their content (
v2.css?v=…), so phones and browsers pick up a new deploy instead of an old cached stylesheet (the stray "▶ More" over the phone tab bar).
- The classic site is retired. Every page now uses the v2 interface:
- Place pages now carry everything the classic site page had: every pass, every heat detection, resolution and status.
- Fixed: links from place-page timelines to Thermal watch and Tracks pointed inside v2/ (broken since 0.16.1); Watch reports' links to files in the day folder; the Roadmap status filter showed only "All" (the lead status labels had replaced the roadmap's); Thermal watch's feed list showed a raw Python dict.
- Removed the classic page builders that are now redirects.
- Thermal watch and Tracks have native v2 pages:
- Signals, MILAIR and Wilco Watch have native v2 pages too:
- The home page is now the v2 analyst interface. The classic Overview moved to overview.html; "Classic site" in v2 and "New interface" on the classic site switch between them, and the home page remembers the choice. No other URL changed.
- Watches in v2: a Watches page (latest day of each Area Watch, with plates, plus Wilco Watch) and a page per Watch with every day and the full report. Today links there.
- Signed-in accounts keep their starred places and last visit on the account (account/prefs.php), so they follow you between devices; stars made before signing in are kept.
- Lead status from the site (account/lead-status.php): admins (config.php
admin_emails) set a lead's status on the Leads board or a report page; approved journalists report an outcome (confirmed, story published…) with a link and note, which an admin accepts or dismisses on the Leads page. Status shows live on v2 and in leads.php.php accounts.php lead-status-yamlprints the site's statuses for the pipeline's reports/lead-status.yaml;php accounts.php outcomeslists reports waiting for review.
- v2 respects the journalist hold: held leads never appear on Today, Leads, report pages or in search. Report pages show "N new leads held for journalists until …" and fill in from leads.php for approved journalists, or once the hold ends.
- The build now refuses to publish if any held lead's text is in a public file (anything outside desk/ and account/), and the deploy runs a simulated-hold leak test first.
- Today: routine heat (flares, refineries, known sources) is folded into one line per day; Watches with nothing notable are folded into one "Nothing out of pattern on N Watches" line, so every Watch is counted.
- Plain satellite names (VIIRS (NOAA-21), MODIS) instead of feed codes; times just ahead of the clock read "just now".
- Maps render again: CARTO now answers keyless requests with an "API KEY REQUIRED" image, so v2 uses keyless Esri grey basemaps (light or dark with the theme) with a Map / Satellite switch, falls back to OpenStreetMap, and says so if no tiles load. Leaflet 1.9.4 is bundled in assets/vendor instead of loaded from unpkg.
- Phone filter rows fade at the edge to show they scroll.
- Preview of the new analyst interface at /v2/, built alongside the classic site (nothing in it changes).
- Leads page and journalist desk say when the 24-hour journalist hold is paused (read from the pipeline's HOLD_PAUSED_UNTIL), instead of promising an exclusive that is not running. The usual wording returns on its own when the pause ends.
- New Watches page (Reports → Watches): the latest day of every Area Watch (Vegas, Mojave, San Diego, Central Coast, LA, NorCal) with its notable items, flight and heat counts and new satellite plates, plus Wilco Watch. Each Watch has its own page (watch/<area>.html) with every day on record and the full report.
- New MILAIR page (Monitor → MILAIR): military, state, contractor and police aircraft over 18 Canadian cities, with the daily CSVs.
- Menu: the "Watch" group is now "Monitor", so it no longer clashes with the Watch reports; Wilco Watch moved under Reports.
- Capabilities: each card links to where you can see it, and shows one filled status badge (Live / Testing / Paused) with a separate New badge.
- Header: one row on every device. The 15 links are grouped into Overview · Reports (SITREPs, Hindcasts, Briefs) · Leads · Watch (Sites, Tracks, Thermal watch, Signals, Wilco Watch) · About (Method, Capabilities, Proofs, Benchmarking, Versions, Roadmap); every page keeps its URL. Phones and tablets get a Menu button that lists every page under its group.
- Header stays pinned while scrolling again (the 0.12 account widget had turned that off); links to a SITREP or lead ID land below it.
- The two sign-in buttons are now one Sign in menu; once signed in it shows your name, with the desk and account links.
- Overview banner is shorter, from the brand pack's website header, so the latest report shows on the first screen.
- Journalist hold: a report's new leads are exclusive to approved journalists for 24 hours. Public pages and PDFs show a "held" notice; leads.php, report.php and plate.php release them on the minute, without a rebuild. Full PDFs, lead data and held plates sit in desk/_data and desk/_files, which the web server refuses.
- New public Leads tab: every lead after its hold, with status and links back to its report.
- Journalist desk is now a lead dashboard: permanent lead IDs (<report>-L<n>), desk exclusives with countdowns, status (open / confirmed / killed / stale / story published), lineage (carried from / carried into), filters.
- Accounts: separate journalist and corporate sign-in (PHP; own tables, cookies and approval queues). Sign-in buttons top right on every page.
- Journalist desk (/desk/), gated to approved journalist accounts: every reporter lead from SITREPs, hindcasts and briefs in one searchable list, newest reports, live tracks, and how to credit RWI. Press styling (Sky / Mountain Blue accent).
- SITREPs: reporter leads (things in our data that no reporting explains yet) shown first on each report, with a lead count tag, a revision tag, and a "Leads only" filter (?leads=1). Leads are searchable.
- New SITREP type: Intra-day.
- Privacy page (draft placeholder, PIPEDA / Alberta PIPA) rendered from docs/PRIVACY.md and linked in the footer.
- Terms of Use page, rendered from the pipeline's docs/TERMS.md, with a draft banner while it is not in force; linked from the footer of every page (private and public sites).
- SITREPs page: strictly newest first (by issue time), with search and filters for type (daily, weekly, special…), place and month, plus an oldest-first toggle. Filters are kept in the URL so a filtered view can be shared. Each SITREP shows its type and the places it covers.
- Overview "Latest report" now picks the most recently issued SITREP.
- Wilco Watch: each day now carries an automated daily read (optical and radar change with labelled patches, snow, weather, night lights, thermal) and a change plate.
- Wilco Watch is now filed under DOGINT (type label "DOGINT · neighbourhood watch", page kicker). Small DOGGOINT easter egg in the page footer.
- Wilco Watch page now reads from the wilco-watch archive repo when it is available (falls back to the pipeline's copy). Only the marked images are published; the unmarked chips stay in the archive.
- SITREP imagery is now collapsed behind an expandable "Imagery — N plates" toggle.
- Deploy fix: the staging branch now keeps a normal history so Hostinger's Git redeploy can pull it; HTML/JSON are served no-cache so a redeploy shows at once.
- New Wilco Watch page: daily Killarney-to-Beltline look (newest and latest clear Sentinel-2 pass, newest Sentinel-1 radar, 24 h thermal count), house marked as Wilco HQ. No address is published.
- SITREPs page shows each report's plates as thumbnails that open the full image.
- New Benchmarking section: graded evaluations of RWI output against Prime Rogue's published analysis and other coverage (BENCH-001 self-evaluation #1, BENCH-002 Global News coverage benchmark), bylined Roger Wilco Imagery.
- Place names and site IDs anywhere on the site (thermal watch, signals, SITREP list, roadmap, site pages) now link to that place's page.
- Sites: new Visual change column and filter — latest clear Sentinel-2 pass vs baseline, graded No change / Minor / Undetermined change / Change + heat / Scene-wide (season, snow).
- Method page corrected: SITREPs are LLM-generated and automated (not analyst-written); Analyses are human and signed.
- Disclosure on the SITREPs and Method pages and in every footer: SITREPs are LLM-generated and automated; Analyses are human-written and signed by their author.
- Footer links Prime Rogue Inc. to primerogueinc.com.
- Roger Wilco brand (tentative): Wilco mark and wordmark in the header, brand palette in dark and light modes, Wilco hero on the overview, Wilco favicon/home-screen icon, footer motto.
- All timestamps shown in Calgary time (MST/MDT) with UTC in brackets after.
- Signals page: night-lights flags (VIIRS) and dark-ship candidates (radar ships with no AIS).
- Proofs page: SHA-256 manifest of every SITREP and data drop, with its OpenTimestamps anchor.
- Markdown tables (thermal watch, signals) now render with proper headers.
- Roadmap page: releases 0.8–0.11 with every planned item's purpose, sources, method, outputs, done-when, risks and dependencies; filter by status. Built from the pipeline's
roadmap.yaml.
- Site register: separate filters for geographic region, US combatant command and country (plus type and search), with counts; filters are kept in the page link so a filtered view can be shared.
- Region and combatant command shown in the register and on each site page.
- Dark mode is now the default, with a light/dark toggle in the header (remembered per browser).
- First build: overview, site register with dates added and map, per-site history pages (imagery + thermal detections), numbered SITREP archive, thermal watch, method page.
- Version history page shared by the private site and a standalone public build.
- Static output (
dist/private,dist/public) for Hostinger; daily rebuild via GitHub Actions with optional SFTP deploy.
Pipeline commit log private
Latest 60 commits, including automated pickups.
| Commit | When | Message |
|---|---|---|
7fca7d59 | 03 Nov 2026 00:43 UTC | Alerts 20261103T0043Z |
3ae1406b | 03 Nov 2026 00:42 UTC | RWI-HC-011: CFB Wainwright training area, 1 Jun – 2 Nov 2026 — every fire dated from 48 Sentinel-2 passes and FIRMS, origins and spread (17 Oct fire ~56 ha off-base; 20 Sep fire ~450 ha unreported), controlled-burn and firefighting checks, temporary-installation search; journalist desk only (tasking, 30-day hold) |
6fdf8d71 | 03 Nov 2026 00:39 UTC | ADS-B history 2026-09-29 |
97431169 | 03 Nov 2026 00:39 UTC | ADS-B history 2026-09-18 |
0cf5264c | 03 Nov 2026 00:38 UTC | ADS-B history 2026-09-22 |
fe6786ca | 03 Nov 2026 00:37 UTC | ADS-B history 2026-09-21 |
bfe26d34 | 03 Nov 2026 00:37 UTC | ADS-B history 2026-09-19 |
a32e73a0 | 03 Nov 2026 00:37 UTC | ADS-B history 2026-09-17 |
54fef16d | 03 Nov 2026 00:36 UTC | ADS-B history 2026-09-30 |
e949c95b | 03 Nov 2026 00:36 UTC | ADS-B history 2026-09-20 |
a319b8df | 03 Nov 2026 00:32 UTC | Provenance 20261103T0031Z |
cacb8d3c | 03 Nov 2026 00:29 UTC | ADS-B history 2026-08-28 |
0245c042 | 03 Nov 2026 00:29 UTC | ADS-B history 2026-07-06 |
4405d94e | 03 Nov 2026 00:28 UTC | ADS-B history 2026-09-15 |
6a7040e2 | 03 Nov 2026 00:28 UTC | ADS-B history 2026-07-08 |
510c005d | 03 Nov 2026 00:28 UTC | ADS-B history 2026-07-07 |
ca690d37 | 03 Nov 2026 00:27 UTC | Reports: linked sources ('as reported by <outlet, linked> at <time>') from reports/news-sources.yaml; hold notices read 'released automatically on <date>, or released manually earlier' with the hold reason (tasking or review of potentially personal identifiers); HC-010 hold_reason tasking; HC-010 and SITREP 026 rebuilt |
ba540776 | 03 Nov 2026 00:27 UTC | ADS-B history 2026-08-29 |
922ae8b1 | 03 Nov 2026 00:27 UTC | ADS-B history 2026-08-27 |
4dec4329 | 03 Nov 2026 00:26 UTC | ADS-B history 2026-07-05 |
b753afe8 | 03 Nov 2026 00:26 UTC | ADS-B history 2026-08-26 |
0e55fb7c | 03 Nov 2026 00:25 UTC | ADS-B history 2026-09-16 |
773db901 | 03 Nov 2026 00:12 UTC | Queue: HC-011 Wainwright flight scan on the June–Sep fire days (firefighting aircraft check) |
6259430f | 03 Nov 2026 00:11 UTC | Detections 20261103T0009Z |
51df3794 | 03 Nov 2026 00:10 UTC | tracks 2026-11-03T00:10Z |
34f902bd | 03 Nov 2026 00:06 UTC | History pull 2026-11-03T00:06Z: data/history/wainwright-jun-nov2026 |
291fa5cb | 02 Nov 2026 23:30 UTC | History pull: commit only its own output, from a fresh remote tip (a nightlights conflict lost the HC-011 pull); re-run HC-011 |
25faf0c8 | 02 Nov 2026 22:53 UTC | FIRMS area pull 2026-11-02T22:53Z |
37b2cb9a | 02 Nov 2026 22:53 UTC | Night lights 20261102T225309Z |
6e21a360 | 02 Nov 2026 22:51 UTC | Roadmap (alpha): journalist desk on the static site (form application, email approve/deny) and journalist accounts on the VPS, with deliverables and steps |
f2df5df8 | 02 Nov 2026 22:46 UTC | Retry HC-011 FIRMS pull (FIRMS unreachable on the first run) |
469acb3f | 02 Nov 2026 22:44 UTC | Provenance 20261102T2244Z |
5a651033 | 02 Nov 2026 22:40 UTC | Queue RWI-HC-011: CFB Wainwright, 1 June – 2 Nov 2026 (FIRMS and history pull) |
f73ecbd3 | 02 Nov 2026 22:40 UTC | RWI-HC-010: journalist desk only for now (all three leads held 30 days; public PDF is the notice) |
c413ece6 | 02 Nov 2026 22:39 UTC | Area Watch 2026-11-02 |
937379b9 | 02 Nov 2026 22:34 UTC | Provenance 20261102T2234Z |
71d043a8 | 02 Nov 2026 22:30 UTC | RWI-HC-010 revision 2: public-reporting pass (17 Oct fire killed four; 14 and 18 Oct detections and the pre-October scar unreported); hindcast standard makes the reporting pass mandatory |
3f48eece | 02 Nov 2026 22:27 UTC | Area Watch: Canadian military is its own category (was 'foreign military' in the Ottawa Watch); approach/departure traffic at a listed airport is not a visit to a nearby site; Ottawa airports listed |
2a691f3b | 02 Nov 2026 22:26 UTC | Provenance 20261102T2226Z |
3573d1c1 | 02 Nov 2026 22:24 UTC | Alerts 20261102T2224Z |
358fda62 | 02 Nov 2026 22:23 UTC | RWI-HC-010: ad hoc hindcast, CFB Wainwright and the training area, 1 Oct – 2 Nov 2026 |
61a0233c | 02 Nov 2026 22:16 UTC | ADS-B history 2026-10-28 |
dcb9e47e | 02 Nov 2026 22:16 UTC | ADS-B history 2026-10-27 |
240294fc | 02 Nov 2026 22:16 UTC | ADS-B history 2026-10-29 |
3bfdd106 | 02 Nov 2026 22:16 UTC | ADS-B history 2026-10-30 |
0f5652c1 | 02 Nov 2026 22:15 UTC | ADS-B history 2026-11-01 |
a533febd | 02 Nov 2026 22:15 UTC | ADS-B history 2026-10-31 |
bb241743 | 02 Nov 2026 22:15 UTC | ADS-B history 2026-10-13 |
92485f71 | 02 Nov 2026 22:13 UTC | ADS-B history 2026-10-12 |
09a43194 | 02 Nov 2026 22:13 UTC | ADS-B history 2026-10-11 |
f5d481fb | 02 Nov 2026 22:08 UTC | History pull 2026-11-02T22:08Z |
2892c6a6 | 02 Nov 2026 22:06 UTC | ADS-B history 2026-10-08 |
99d2d01a | 02 Nov 2026 22:06 UTC | ADS-B history 2026-10-07 |
805f0536 | 02 Nov 2026 22:05 UTC | ADS-B history 2026-10-04 |
fabf1761 | 02 Nov 2026 22:05 UTC | ADS-B history 2026-10-06 |
0611cf4b | 02 Nov 2026 22:05 UTC | ADS-B history 2026-10-05 |
0518fdc4 | 02 Nov 2026 22:05 UTC | ADS-B history 2026-10-02 |
a6bd54ae | 02 Nov 2026 22:04 UTC | ADS-B history 2026-10-01 |
9a9d2cfa | 02 Nov 2026 22:04 UTC | ADS-B history 2026-10-10 |
c5efe221 | 02 Nov 2026 22:03 UTC | Benchmarks: regional Watches #5 Baltic 0.5/3 and #6 Poland–Ukraine airlift 1.0/3 |