What the thing actually does
Flock's "Raven" module (internal codename, not marketing) takes historical plate data across their 4,000+ camera network and builds movement profiles per vehicle. Not "this car was here at 2:14 PM" — more like "this vehicle pattern matches 87% probability of drug corridor transit based on dwell time, route deviation, and known associate vehicles."
The model weights are in the leak. So are the feature definitions.
FEATURE_VECTOR = [
"plate_read_count_7d",
"unique_camera_count_24h",
"interstate_transition_freq",
"night_read_ratio",
"known_associate_proximity_score", # ← this one
"registered_address_income_quartile", # ← and this one
"prior_stop_outcome_flag"
]
That known_associate_proximity_score
joins plate reads within 200m/5min windows across the network. registered_address_income_quartile
pulls census tract data at registration time. Neither requires a warrant. Neither appears in any public Flock documentation.
The training data problem
They trained on 2.3B plate reads from 2021-2023. Labels came from "confirmed criminal interdictions" — meaning arrests where drugs/weapons/stolen property were found. But the arrest data only covers jurisdictions that shared outcomes back with Flock. That's ~340 agencies out of 18,000+ in the US. Heavy skew toward Sun Belt suburbs and exurbs. Almost zero rural, almost zero dense urban.
Result: the model learns what "suspicious" looks like in Frisco, TX and applies it to everywhere else.
False positive rate in the validation set: 23%. But that's on their curated test split. When I ran the weights against a separate dataset from a midwestern city that didn't feed Flock outcomes? 41% false positive on vehicles registered to bottom-income-quartile addresses. 12% on top quartile.
Deployment reality
Agencies don't run inference locally. Every plate read hits Flock's cloud, gets scored, alerts push back to MDTs in <3 seconds. The contract language (also in the leak) lets Flock retain "derived analytics" indefinitely for "model improvement." Your movement profile becomes their training data forever.
One agency's procurement email thread (attached in the repo) shows a captain asking: "Can we get the model card? Our city attorney needs it for the surveillance ordinance review." Flock rep replied: "Model cards are proprietary. We provide outcome summaries for governance committees."
What's missing from the leak
No inference API docs. No audit logs. No explanation of how prior_stop_outcome_flag
gets set — is it conviction? Arrest? Stop with no action? The code references a stop_disposition
enum but the values are redacted.
Also no sign of the facial recognition integration Flock demoed at IACP last October. Separate module, separate repo, probably.
Bottom line
This is predictive policing dressed up as "investigative lead generation." The code confirms what privacy advocates have assumed for years: Flock is building a national movement graph with income and association proxies as features, trained on biased outcomes, deployed without transparency requirements.
If your city uses Flock, ask for the model card. When they can't produce it, ask why a proprietary risk score is generating reasonable suspicion for stops.
Flock cameras are basically building a real-time map of every 1d ago
Nvidia Jetson chips are showing up in Russian cruise missiles 5d ago
Flock Cameras: When AI Surveillance Creates a Crash Risk 20d ago
Next Asana just wiped out half a decade of technical debt in fourteen →
these AI tool field notes, with plenty of directly applicable cases.