Flock insures commercial vehicle fleets, and every vehicle on a Flock policy carries a telematics device that streams accelerometer, GPS and speed data. When a device detects a sudden impact it writes a crash file to Amazon S3, but most of these files are false alarms from potholes, speed bumps or door slams; only about one in forty events that look like crashes is real. Flock engineers Jacob Holland and Aleks Yaneva described in June 2026 how the company built a system that separates real collisions from noise and issues an automatic first notification of loss (FNOL) that starts the claims workflow.
The pipeline has three stages linked by queues. In classification, an ECS Fargate service reads each crash file, finds the moment of peak G-force and computes 42 features around it, covering G-force shape, speed and energy loss, time of day, data quality and two rule-based signals: a crash signature and a high-G false-trigger signal. An XGBoost model trained with class weighting rather than synthetic oversampling, and validated with five-fold stratified cross-validation, scores the event. Flock set a 0.80 threshold to favour precision over recall; every prediction is written to Amazon Data Firehose as an audit trail and training set, and only high-confidence crashes go forward.
In verification, a Lambda function runs two agents built with the strands-agents framework on Claude Haiku in Amazon Bedrock. A Crash Analyst scores the quality of the telemetry around the peak and queries Flock's data lake for how often similar detections on that vehicle turned into claims and how many events it has triggered that day. A Judge then decides: poor data quality or three or more detections in a day mean no action, and otherwise the vehicle's crash-to-claim history confirms or contradicts the model. Field names in the hand-off are fixed in both agents' prompts, and every verdict, including no-action ones, is archived.
In broadcast, verified results land in S3, trigger an EventBridge rule, and a Lambda function publishes the crash event to claims handlers, notification systems and dashboards. The whole system is defined in one Terraform module, and failed messages are retried and then moved to a dead-letter queue so that no crash event is lost.
Details
- City
- London
- Organization
- Flock