UNDP Crisis Impact Reporting · Submission 95de975b

The first
forty-eight hours
decide everything.
Sigil/Field turns every neighbour
with a phone into calibrated crisis intelligence.

A field-grade open-source protocol that fuses citizen photos, EXIF GPS, official air-raid feeds, satellite footprints and validator review into one trusted damage map. We assume the worst conditions — congested cell networks, exhausted reviewers, adversarial actors — and we ship anyway.

Sources cross-referenced per report
OSMOverture BuildingsUSGS FDSNGDACSalerts.in.uaGDELT ProjectReliefWebCopernicus EMSHXL CSV exportMicrosoft FootprintsNASA FIRMSukrainealarm.comOSMOverture BuildingsUSGS FDSNGDACSalerts.in.uaGDELT ProjectReliefWebCopernicus EMSHXL CSV exportMicrosoft FootprintsNASA FIRMSukrainealarm.com
live operations
Mission console · Iziar
22 May 2026 · 08:24 UTC
loading vector tile…
Active alert
ALT-2026-0521-19:42
air-raid alert · 19:42→21:08
Queue
10 reports in queue
4 verified · 2 in-review
Reviewer
Olena V. · enumerator
session 47 of 90 min
Why this · the problem

After a strike, an earthquake, a flood — the data exists. It's in every passerby's pocket. The 48-hour window closes before anyone collects it.

International triage protocols agree on one number: the first 48 hours after a sudden-onset event are when survivors are found and shelter is assigned. Yet humanitarian dashboards stay empty for days. The Standby Task Force's volunteer network of 103+ countries waits for verified reports that never come. MapSwipe has mapped 1.3 million km2 of crisis-affected geography — almost entirely from satellite, almost none from the ground.

Meanwhile xView2 winners hit 80 % damage-classification accuracy on aerial imagery; the wildfire-ViT goes deeper on the ground. The technology is sitting on the shelf. Sigil/Field is the protocol that picks it up, hardens it for adversarial conditions, and hands the result to the humanitarian system in HXL CSV by Tuesday morning.

≤ 48 h
First-window response time we are targeting
USGS DYFI auto-maps quakes within 3 min. We extend the same speed to ground-level damage triage.
8 signals
AI validation per report before a validator sees it
Vision, EXIF GPS, alert window, news mention, duplicate hash, footprint match, time sanity, reporter trust.
7 languages
Six UN officials plus Ukrainian for the seeded case study
Whisper on-device transcription bridges anyone who would rather speak than type.
Seven non-obvious problems

The differentiator manifesto — what every other submission forgot to name.

The standard crisis-mapping tooling assumes a rational adult enumerator on a clean network, with no adversaries, no fatigue, no fraud. The real first 48 hours look nothing like that. Here is what we built for instead.

B-1043 · Voznesenska 162 of 4 façades covered
Problem · 01Photo angle coverage

Same building, two damage levels — both reporters are honest.

A homeowner sees the collapsed wing. A passer-by sees the intact façade. Sigil clusters reports by Overture building footprint and tracks which façades have been photographed, not just how many people reported. Reviewers see a per-façade damage level, not one averaged score.
OVERTURE FOOTPRINT · ANGLE DIVERSITY WEIGHT
Problem · 02Triple-signal fraud check

Staged-photo trickery, caught before a reviewer sees the file.

EXIF GPS must sit inside a known impact polygon. Capture time must fall within 0–72 h of the disaster timestamp. The damage pattern must match the disaster type via a per-event CNN. All three or it goes to deep-investigate.
EXIF · TIME WINDOW · DAMAGE PATTERN
PhoneiOS 17.5 · 12 MPWildfire-ViT (ground-level)
DroneDJI Air 3 · 4KBRIGHT (optical + SAR)
SatellitePlanet Skysat · 50 cmxView2 (DIU first-place)
Problem · 03Provenance routing

Three sources, three pipelines — never averaged by accident.

Sigil reads EXIF Make/Model and image resolution heuristics to classify provenance, then routes the photo to the right model. An analyst never mixes 50 cm satellite output with a 2014 Android screenshot.
EXIF MAKE/MODEL · RESOLUTION HEURISTIC
Reporting on behalf of:
a neighbour
Problem · 04Vulnerable-reporter modes

The 9-year-old, the grandmother, the refugee with PTSD — all first-class users.

Whisper on-device transcribes whichever language a reporter speaks. A zero-text mode accepts photos + GPS + a damage slider. A behalf-of field protects the elderly whose grandchildren submit for them.
WHISPER · ZERO-TEXT MODE · ON-DEVICE
47/ 90 min
current sessionOlena V.Take a break in 43 min
streak · 6 days
Problem · 05Reviewer burnout protocol

Sessions capped at 90 min. The dashboard insists on the break.

Disaster-relief volunteers burn out in 2–4 weeks. We borrow MapSwipe's swipe-UX (1 photo at a time, not long forms) and auto-assign so two reviewers never collide. Light gamification, no public leaderboard.
MAPSWIPE-STYLE UX · AUTO-ROTATE QUEUE
Problem · 06Cold-start solver

The map is already populated when the first citizen opens the app.

GDACS impact zones, GDELT news clusters and Copernicus EMS rapid-mapping polygons pre-seed the surface within minutes of the event. The first citizen pin lands on top of structure, not on a vacant grid.
GDACS · COPERNICUS · GDELT · PRE-SEEDED
device-bound idactive
sgl-7f4a2b91-c6d3...e02f
47 prior reports · 6 weeks continuous
k-anonymity threshold4 / 5

Public dashboard reveals reports only after five independent reporters cover the polygon. Differential-privacy ε ≈ 1.2 on exported counts.

Problem · 07Pseudonymous-by-default

A reporter can be trusted without being known.

Device-bound key pairs. Continuous identity. A burn button that wipes the local key if the operator must disappear. Public dashboards only surface reports once a k-anonymity threshold is reached. Differential-privacy noise on publicly exported counts.
GDPR-ALIGNED · BURN-IDENTITY READY
Credibility engine

Eight signals combine into one score before a human sees the file.

Each report runs through vision, EXIF GPS, official alerts, news cross-reference, perceptual-hash duplicate check, building-footprint match, timestamp sanity, and a reporter-trust ledger. A weighted composite drives the brief that lands on the validator's queue.

ReportSGL-A4Q7-91
95trust
high trustWeighted composite of 8 AI signals + reporter trust ledger.
BuildingVoznesenska 16
ReporterPetro K. · verified
Corroboration4 sources
Affected persons48
Eight AI signalsweight × score = contribution
Vision model: structural collapse pattern
w · 0.1896

Bearing wall fracture + pancake debris matches G4 archetype.

EXIF GPS within 22 m of report pin
w · 0.1298

Photo metadata coordinates 47.4017°N · 36.2747°E.

Air-raid alert active at capture time
w · 0.18100

Alert ALT-2026-0521-19:42 (alarm.in.ua) running from 19:42 to 21:08 UTC.

3 independent news sources match region
w · 0.1494

Reuters, Iziar Oblast Press, Hromadske all reference Voznesenska damage.

Image perceptual hash unique
w · 0.1092

No prior pHash match in archive. Not a repost.

Footprint match: B-1043 Voznesenska 16
w · 0.1295

Photo angle aligns with 9-storey wide footprint.

Capture time 04:22, daylight match
w · 0.0688

Sun azimuth in image is plausible for local time.

Reporter Petro K. — 14 prior valid reports
w · 0.1090

Account verified by enumerator chain.

Weighted contribution mixtotal · 95 / 100
Vision model17.3
EXIF GPS within 22 m of report pin11.8
Air-raid alert active at capture time18.0
3 independent news sources match region13.2
Image perceptual hash unique9.2
Footprint match11.4
Capture time 045.3
Reporter Petro K. — 14 prior valid reports9.0

“We don't ask the reviewer to be a detective. We hand them a calibrated brief in 12 seconds.”

— Sigil/Field operating principle 4 of 9
Three surfaces · one protocol

Citizen, validator, mobile field — built so each surface respects the rhythm of its user.

Citizen reporter · web + PWA

Three screens, four minutes, no account. Photo, location, send.

Open the link, take three photos, tap on the building footprint, slide the damage grade. The on-device wildfire-ViT gives you instant feedback. Submit; the report queues locally if your network is down.

Report draftSGL-A4Q7-91
IMG · iziar-voznG4 · Uninhabitable
G4· Uninhabitable
Captured
Photos
3
EXIF GPS
22 m
Persons
48
building
Voznesenska 16B-1043 · 9 storeys
Submit report · queue offline
Validator desk · web

A queue of calibrated briefs. Swipe through fatigue without breaking quality.

Each card lands with its credibility score, photo coverage diagram, and the 8-signal stack. Reviewers triage at MapSwipe speed; the desk auto-rotates them off the queue at 90 min.

Queue10
SGL-A4Q7-91G4
Voznesenska 16
Petro K.92
SGL-K2M3-44G3
Voznesenska 18
Olena V.81
SGL-B7X1-08G2
Voznesenska 14
Kateryna L.84
SGL-Z9P2-77G5
School № 27
Anonymous38
SGL-A4Q7-91Verified
IMG · iziar-voznG4 · Uninhabitable
92
4 corroborating · 8 signals OK
signals — top 3
Vision · G4 archetype
w 0.18 · 96
Alert window match
w 0.18 · 100
EXIF GPS · 22 m
w 0.12 · 98
desk session · 47 min
Mobile field app · iOS + Android

For enumerators living offline for weeks at a time — without compromise.

KoboToolbox-grade offline queueing. Background sync over Wi-Fi only. Whisper voice intake. A burn-identity button for high-risk regions. Ships as a PWA today; native shells follow.

04:315G · ▮▮▮▯
Iziar · field mode
IMG · iziar-voznG4 · Uninhabitable
quick grade
G1
G2
G3
G4
G5
3 queued offlineready to sync
Data + interoperability

The HXL CSV lands on a UN analyst's desk before breakfast.

iziar_damage_2026-05-22.csv
HXL v1.1
ref,grade,building,lat,lng,credibility,reporter_tier,corrob,affected,alert_id
#meta+ref,#severity+code,#loc+name,#geo+lat,#geo+lon,#indicator+confidence,#contact+tier,#count+corrob,#affected+num,#event+id
SGL-A4Q7-91,G4,Voznesenska 16,47.40150,36.27450,92,verified,4,48,ALT-2026-0521-19:42
SGL-K2M3-44,G3,Voznesenska 18,47.40130,36.27590,81,enumerator,2,22,ALT-2026-0521-19:42
SGL-B7X1-08,G2,Voznesenska 14,47.40180,36.27310,84,verified,1,64,ALT-2026-0521-19:42
SGL-F3R6-21,G2,Polyclinic № 4,47.40320,36.27190,88,ngo,2,180,ALT-2026-0521-19:42
SGL-Q1A8-55,G3,Central Market N,47.40450,36.28110,79,enumerator,3,95,ALT-2026-0521-19:42
The HXL hashtag row makes the export readable by HDX / ReliefWeb without a translation step.
Export formats
6 supported
  • GeoJSON
    GIS pipeline
  • KML
    Google Earth
  • OData
    Power BI · Excel
  • HXL CSV
    HDX / ReliefWeb
  • XLSForm
    KoboCollect
  • WMS / TMS
    Map server
Sources cross-referenced
  • USGS FDSNlive
  • GDACSlive
  • ReliefWeblive
  • alerts.in.ualive
  • GDELTlive
  • Copernicus EMSlive
Every report is automatically checked against the live feed before a validator is paged.
Open source · MIT

Rapid deployment to a crisis area in 48 hours.

Every part of Sigil/Field ships as containers under an MIT licence. Operating a deployment requires one engineer-day; sustaining one requires a single regional admin and the Standby Task Force.

48-hour playbook
  1. 01
    Hour 0 · containerised deploy

    One docker-compose pulls the API, the validator desk, the citizen PWA, the Nominatim self-host, and a postgres-with-PostGIS volume. Comes up on any $20/mo VPS.

  2. 02
    Hour 6 · regional admin onboarding

    A local emergency-management officer maps the country into oblasts and assigns the 9 Standby-Task-Force roles via RBAC. XLSForm schema is editable without a redeploy.

  3. 03
    Hour 12 · QR-pushed citizen access

    Local radio, Telegram channels and shelter posters all carry the same QR. The link resolves to a PWA that installs in 2 seconds, in the citizen's language.

  4. 04
    Hour 24 · validator volunteers

    Standby Task Force activates 30-60 cross-timezone validators. The desk auto-rotates them after 90-min sessions. Translation team pulls the i18n strings.

  5. 05
    Hour 48 · public HDX pipeline

    HXL CSV pushes to the country's HDX channel on a cron. ReliefWeb situation reports pull the export. UN analysts run Power BI off the same OData feed.

deployment.yml
open · MIT
# deployment.yml — open-source playbook
crisis_kind: conflict
country: ua
languages: [uk, en]
study_area:
  centroid: { lat: 47.4012, lng: 36.2754 }
  bbox: { s: 47.3958, n: 47.4072, w: 36.2682, e: 36.2842 }

# Data layer
building_footprint_source: overture
osm_overpass_fallback: true
nominatim: self-hosted

# Cross-validation feeds
alert_apis:
  - alarm-in-ua
  - usgs-fdsn
  - gdacs
  - reliefweb
  - gdelt
  - copernicus-ems

# Privacy + ethics
identity_model: device-bound-pseudonymous
burn_identity: enabled
k_anonymity_threshold: 5
differential_privacy_epsilon: 1.2

# Reviewer protocol
reviewer_session_cap_min: 90
auto_rotate: true
peer_debrief_channel: anonymous

# Export
hxl_export_cron: "*/15 * * * *"
hdx_target: hdx-undp-ua
The same YAML is consumed by the citizen PWA, the validator desk, and the API gateway. No drift between surfaces.
Submission ready · 23 June 2026

The next disaster is already being photographed.

The protocol exists. The footprints exist. The volunteers exist. Sigil/Field is the connective tissue that turns photographs in pockets into damage intelligence on a UN analyst's desk — in under 48 hours, every time.

MIT licenceHXL · GeoJSON · ODatak-anonymity 5Submission 95de975b