Measurement
The system's numbers are measured against human labels. The labels drove detector gates that suppress the observed false alarm mechanisms, and every dispatch narrative must pass a gate that only accepts claims its source events support.
Labelled precision
| Alert type | Labels | Marked real | Measured precision, used as the risk weight |
|---|---|---|---|
| near-miss | 243 | 34 | 0.09 |
| tailgating | 240 | 31 | 0.07 |
| pedestrian or cyclist in the roadway | 192 | 15 | 0.05 |
| wrong-way | 140 | 13 | 0.06 |
From the 2026 August soak review queues. Recomputed after every labelling pass with tools/label_review.py. The precision column is not the raw ratio of the two columns beside it: the queue over-samples rare alert types on purpose, so each labelled bucket is weighted by how many alerts it actually stood for. Weighting lowers every figure here, because the busiest buckets are the least precise, and the unweighted ratio would flatter the detectors.
What the labels changed
Every false alarm above was traced to a mechanism, and each mechanism now
has a gate: frame-edge tracks neither teach the learned flow nor get judged
against it, followers inside the leader's own box are rejected, mismatched
depths cannot pair, and motionless pedestrians are ignored. The learned flow
and roadway maps were rebuilt alongside them. A validation soak of the gated
detectors has since completed; until its review queue is labelled, the effect
on precision is unmeasured, and the numbers above remain the pre-gate
measurement.
What stands behind a report
- Narratives are assembled from retrieved events. Numbers and incident words without support in the machine record are violations, and violating reports are quarantined.
- Weather maps to a fixed vocabulary, so no external response can inject wording into a narrative.
- Road context is hand filled from public sources with provenance, and free text from that file can never ground an incident claim.
- Four verifier suites run 108 checks over these guarantees on every change.