Robotics · bag audit & anomaly report

ros2-bag-data-audit

A structured audit of synthetic ROS2 bag exports that measures topic health, detects planted anomalies independently, and separates evidence from candidate causes.

Public · synthetic demo
The problem

A bag can record cleanly and still contain operationally bad data.

Rate drops, dropout gaps, clock skew, sensor-range violations, command/odometry disagreement, and missing transforms need one evidence-graded report before anyone diagnoses the robot.

The money shot

All deliberately planted anomalies were independently detected

Audit result
7topics audited
6 / 6planted anomalies caught
10total findings
/scan       rate drop: 10Hz → ~4Hz, t=[20, 30]
/odom       dropout gap: ~3s, t=[15, 18]
/imu        header stamp ~0.15s behind receive time
/battery    voltage out-of-range dip, t=37
/cmd_vel    commands motion while /odom stays ~0, t=[25, 29]
/tf         odom → base_link disappears, t=[33, 43]
Evidence grading
sectionfindings
Confirmed evidence5
Likely causes1
Unverified hypotheses1
Additional data required3

The auditor does not read the planted-case list. It surfaces evidence and candidate causes only; it does not confirm root cause. The full separation lives in audit_report.md.

Honest limitations

This is a synthetic bag audit, not a robot diagnosis. “Likely causes,” “Unverified hypotheses,” and “Additional data required” remain explicitly separate because one bag cannot establish root cause.

This page reports the supplied sample output and its stated limits. Inspect the code and evidence ↗