User Journey · SAR Platform · v3.0 + privacy · animals · objects · decay

Search for anything.
Everyone protected, everything tracked.

People, animals, or objects. Any creator, any volunteer. GDPR-compliant from the first tap. Zones stay honest — checked areas expire and need re-verification.

Search Creator (logged in)
System
Volunteer (link, no account needed)
Privacy / GDPR moment
Phase 00 — New
What Are We Searching For?
C
Creator Selects subject type — first decision in the flow new

Before anything else — what's missing? This single choice changes the search model, the probability logic, the zone decay rate, and the profile form that follows. Shown as three large, clear options with no jargon.

🧍
Person
Adult, child, elderly. Moves with intent. Behaviour-based probability model.
🐾
Animal
Pet or wild animal. Follows instincts — water, shelter, terrain edges.
📦
Object
Drone, bag, vehicle, equipment. Stationary unless moved by someone.
S
System Loads correct model, profile form, and decay rules

Each subject type uses a fundamentally different search model. This is invisible to the creator — the form and map just behave correctly for what's being searched.

Subject Search model Area expands with time? Zone decay window
🧍 Person Behaviour + terrain isochrone. Speed by age / mobility. Yes — grows per time step ~1–2 hours. Person may re-enter a cleared zone.
🐾 Animal Instinct model — water sources, forest edges, hiding spots weighted. Yes — but slower, tends to loop back ~2–4 hours. Animals often return to same areas.
📦 Object Pure coverage model. No movement. Full area must be visually swept. No — fixed area No decay. Once cleared = permanently cleared (unless creator resets).
creator fills subject profile
Phase 01
Account & Subject Profile
C
Creator Signs up or logs in

Account required to create and track a search over time. Quick sign-up: email + password or social login. No account needed to volunteer.

C
Creator Fills subject profile — form adapts to subject type

The form changes based on what's being searched. Person gets health and mobility fields. Animal gets species and behaviour. Object gets description and last known state.

── Person ───────────────────────────────────
Name / description [ Marco Rossi, grey jacket ]
Age [ 72 ] Mobility [ walking stick ]
Health notes [ mild dementia ]
Last seen when [ Today · 08:30 ]
Last seen where [ ⊙ pin or address ]
Intended direction [ morning walk, stays on paths ]

── Animal ───────────────────────────────────
Species / breed [ Golden Retriever, 3 yrs ]
Behaviour [ friendly, follows water ]
Microchip / tag [ IT123456789 ]

── Object ───────────────────────────────────
Description [ DJI Mini 4 Pro, grey ]
Last known state [ lost signal at waypoint ]
Approx. weight [ 249g ]
S
System Derives mobility profile and decay rules silently
Auto-derived (invisible to creator)
Person: elderly, ~1.5 km/h, path-following, low transit probability Animal: ~5 km/h roaming radius, water-source affinity, forest-edge bias Object: zero mobility, pure coverage model, no time expansion
search area generated
Phase 02
Search Area Generation
S
System Generates time-stepped areas — once, saved to database

Runs once at search creation. Person and animal searches get multiple time steps (area grows). Object searches get a single fixed coverage area. All results saved — no recomputation needed later.

Generated output by type
Person / animal: T+1h, T+3h, T+6h, T+12h polygons Object: single fixed area from last known point All time steps saved to PostGIS immediately
C
Creator Reviews map · picks time window · chooses resource mode

Creator sees the heatmap and picks the time window matching how long the subject has been missing. Then chooses resource mode — "I have X" or "What do I need?" — before segmentation runs.

Mode A
I have resources

Enter counts of foot, bike, motorbike, car, drone. System distributes optimally.

Mode B
What do I need?

System recommends a resource mix for the area. Creator uses it to call for help.

volunteers join via link
Phase 03 — Revised
Volunteer Onboarding & Privacy
V
Volunteer Opens link · sees search context before committing

Before any form, the volunteer sees a short summary of the search — what's missing, where, how long ago. This lets them decide if they can realistically help before they're asked for anything personal.

Search: Marco Rossi · missing person
──────────────────────────────────────
Missing since 08:30 today · ~2 hours ago
Last seen Sentiero 401, Trento
Search area ~3.1 km²
Volunteers 3 active · 2 zones still open

[ Join this search → ]
V
Volunteer Fills resource type form new

The volunteer says how they're searching. This determines which zone they get assigned — forest zones go to foot volunteers, road zones to vehicles. Simple, fast, one screen.

How are you searching?
──────────────────────────────────────
On foot
Bicycle
Motorbike
Car
Drone operator

Your name (shown to coordinator)
[ Paolo Ricci ]

Phone (optional · only shared with coordinator)
[ +39 333 ········· ]
🔒
Privacy · GDPR Explicit consent screen — required before joining new

Under GDPR (Art. 7), consent must be freely given, specific, informed, and unambiguous. Location data is special-category personal data when it can identify a person in real time. The consent screen is clear, unbundled, and non-coercive — the volunteer can join without sharing location if they choose.

🔒 Before you join — how your data is used
GDPR compliance notes
Consent is granular — location, name, and phone are separate toggles Consent can be withdrawn mid-search at any time from the volunteer's view Location data is processed in-memory only — not written to permanent storage All search data deleted or anonymised within 30 days of search close Link to full privacy policy shown before consent (not buried after) No dark patterns — declining location tracking still allows joining the search
S
System Assigns best-fit zone based on resource type

The system matches the volunteer to the highest-priority unclaimed zone that suits their transport mode. Foot volunteer → forest or trail zone. Car → road zone. They see their assigned zone immediately after consent.

Assignment logic
Pick highest probability unclaimed zone the volunteer's mode can traverse Avoid zones already claimed by another active volunteer Show zone on map with estimated time and terrain summary
search is live
Phase 04
Field Execution
V
Volunteer Searches zone · marks cells · adds remarks

Inside their zone the volunteer taps cells to mark them searched. They can drop remarks — sightings, clues, obstacles — at their current GPS position. All updates appear instantly on the creator's dashboard.

📍
Zone 2 · Paolo · 10:42 "Blue cap found near stream crossing — matches description."
⚠️
Zone 1 · Sara · 10:55 "North section blocked by fallen tree — need drone or reassign."
V
Volunteer Marks zone complete → gets auto-assigned next zone new

When a volunteer marks their zone done, the system immediately suggests the next best zone nearby. The volunteer can accept, decline and pick their own, or stand down. The assignment is never forced.

Zone 2 ✓ complete
System suggests: Zone 5 (adjacent, foot-suitable, high priority)
Accept
or
Decline → see all open zones → pick own
Auto-assignment logic
Closest unclaimed zone the volunteer's mode can traverse Highest remaining probability score among eligible zones Excludes zones with active decay warnings (recently re-opened)
C
Creator Manually marks areas as searched from desktop new

The creator can manually mark any zone or individual cell as searched — useful when they receive verbal confirmation from a team over radio, or when they've personally checked an area. Manual marks trigger the same decay countdown as volunteer marks.

Manual marking options
Click any zone on the map → "Mark as searched" Add a note explaining how it was checked Mark individual H3 cells or entire zones at once Manual marks are attributed to the creator in the log
zone decay runs continuously
Phase 05 — New
Zone Decay & Re-check
S
System Zones age after being marked searched new

A "searched" zone doesn't stay clear forever. For moving subjects, the person or animal may have re-entered the area. The zone colour shifts over time — a visual warning that the check is getting stale and should be repeated.

Just checked
25% elapsed
50% elapsed
75% elapsed
Re-check needed
Subject type Full decay window Reasoning
🧍 Person 60–120 min Person moves, may re-enter. Shorter window for higher mobility profiles.
🐾 Animal 2–4 hours Animals often circle back. Longer window — less predictable path.
📦 Object No decay Objects don't move. Once clear = permanently clear. Creator can manually reset if needed.
C
Creator Sees decaying zones on dashboard · can reassign

When a zone turns orange or red the creator sees it immediately on the dashboard. They can send a volunteer back to re-check it, or manually mark it re-searched after radio confirmation. The decay clock resets on each new check.

Search overview · live
─────────────────────────────────────────
Zone 1 ■ checked 8min ago Paolo · fresh
Zone 2 ■ checked 54min ago Sara · aging
Zone 3 ■ re-check needed checked 1h 58min ago
Zone 4 ● in progress Luca
Zone 5 ○ unclaimed
creator monitors with live locations
Phase 06
Monitoring, Live Locations & Resolution
C
Creator Sees volunteer live locations on desktop map new

For volunteers who consented to location sharing, the creator sees their real-time position on the map as a moving dot labelled with their name. This helps avoid gaps, spot volunteers going off-route, and confirm coverage without phone calls. Volunteers who declined location sharing appear as a name only — no dot.

Location display rules
Consented volunteers — live dot + name, updates every ~10 seconds Non-consented volunteers — name label shown, no position Location data streamed in-memory only — not written to disk Dot disappears if volunteer loses connection or withdraws consent Creator cannot store or export volunteer coordinates
C
Creator Reassigns freed teams · expands time window · responds to remarks

Freed volunteers get directed to the next priority zone. Remarks from the field (sightings, obstacles) appear as pins — the creator can promote a sighting to update the LKP, triggering a probability shift on the map. Wider time windows are already computed and available instantly.

C
Creator Closes search · data handled per GDPR

On resolution, the creator marks the outcome. Live location streams stop immediately. Volunteer personal data (name, phone, location) is anonymised within 30 days per the stated privacy policy. The anonymised search record (zones, coverage, timestamps) is retained for audit and operational improvement.

Data lifecycle on search close
Live location stream — stopped immediately on close Volunteer names and phones — anonymised within 30 days Zone coverage map — retained (anonymised) for debrief Remarks and sightings — retained (anonymised) for operational record Creator can request full deletion at any time
Full Journey — All Touchpoints v3
ActionWhoPhaseOutput
Select subject type Creator 00 Person / animal / object — correct model loaded
Sign up / log in Creator 01 Account, search history persisted
Fill subject profile Creator 01 LKP, elapsed time, mobility/behaviour profile
Generate all time-step areas System 02 Saved to PostGIS, decay rules set
Pick resource mode + segmentation Creator 02 Zones matched to resource types + workload
Open link · see search context Volunteer 03 Informed before committing
Fill resource type + name Volunteer 03 Correct zone type matched
GDPR consent (granular) Privacy 03 Name / location / phone consented individually
Search zone · mark progress · remarks Volunteer 04 Live coverage + field intel on creator map
Zone complete → auto-assign next Volunteer 04 Can accept, decline, or pick own zone
Manually mark areas searched Creator 04 Logged, decay clock starts
Zone decay — green → red System 05 Re-check triggered for person and animal searches
Monitor live locations + remarks Creator 06 Full picture without phone calls
Close search · GDPR data lifecycle Creator 06 Location stopped, PII anonymised within 30 days