| Signal Type | Check Node | Question it answers |
|---|---|---|
| Track State | Track Checks (Type I, II, III) | “What is this specific track doing?” |
| Zone State | Zone Activity Check | ”What is happening in this zone?” |
Track Checks
The Track Checks node provides three check types that can be composed together. Each type examines a different aspect of track behavior.Type I
Track in ZoneIs a track in a zone meeting threshold conditions?
Type II
Zone SequenceDid a track visit zones in a specific order?
Type III
Track InteractionDid two tracks interact with each other?
Zone Activity Check
Zone Activity
Zone Activity CheckAre enough tracks in a zone meeting threshold conditions? Used for congestion, congregation, and occupancy monitoring.
Composing use cases
Most real-world detection use cases map to one or more check types:| Use Case | Signal Type | Check Types | Description |
|---|---|---|---|
| Obstruction / loitering | Track State | Type I | Track in zone with high dwell time, low velocity |
| Wrong-way detection | Track State | Type II | Track visits zones in forbidden order |
| Safety near-miss | Track State (batch) | Type III | Person track interacts with vehicle track |
| PPE compliance | Track State (batch) | Type III | Person bbox overlapping with PPE detection |
| Congestion | Zone State | Zone Activity | Multiple vehicles in an aisle zone |
| Congregation | Zone State | Zone Activity | Multiple people gathering in an area |
| Unauthorized zone entry | Track State | Type I + II | Track enters restricted zone after bypassing checkpoint |
| Person-vehicle proximity in zone | Track State (batch) | Type I + III | Track in specific zone AND interacting with another track type |
How checks compose
Each check type writes its results to a separate namespace (checks.type1, checks.type2, checks.type3) and preserves all input data. This means you can chain them in sequence:
checks object and evaluates all results together using AND or OR logic.
Common output structure
All three types share the same output pattern:| Field | Description |
|---|---|
passed | Whether the check conditions were met |
matching_zones / matching_interactions | Which zones or tracks matched |
zone_details / interaction_details | Detailed per-zone or per-interaction results with threshold breakdowns |
reason | If passed is false, explains why (e.g., no_zones_met_all_thresholds) |

