Repository navigation
Conversation
Previous review (2026-11-09)Automated review note — AI-generated (Claude+Codex), validated against the live diff. Please sanity-check before acting. Reviewed at head The rate-limit fix works for logs with disarmed logging on, but in some multi-arm logs it now drops a whole flight. Blocking
|
With disarmed logging off the first arm is not logged, so starting disarmed dropped the whole first flight of a multi-flight log.
|
Automated review note — AI-generated (Claude+Codex), validated against the live diff. Please sanity-check before acting. Reviewed at head No problems found at the new head 76381ad. The blocker from the last review is fixed: armed_mask() now starts from the opposite of the first logged arm state (FilterReview/FilterReview.js:2235), so logs with disarmed logging off keep their first flight again. Replaying the SITL logs keeps both flights, and with LOG_DISARMED=1 the batches are still clean ~1000 Hz. |
Fixes #259, following your diagnosis there: with
LOG_DARM_RATEMAXset, rawGYRsamples logged while disarmed are rate limited, and the loader's batch sample rate no longer matches the data.Reproduced in SITL (
LOG_DISARMED 1,LOG_DARM_RATEMAX 10,INS_RAW_LOG_OPT 1, raw IMU logging on, takeoff, hover, land). GYR runs at ~25 Hz disarmed and 1000 Hz armed. The step from 25 Hz to 1000 Hz isn't a gap, so the whole log becomes one batch with a mean rate of 793.5 Hz, and every frequency is scaled by 0.79 (spectrum ends at 397 Hz). If a gap does split off a disarmed first batch,run_batch_ffttakes its rate fromdata_set[0], which gives the very low rate and the oversized spectrogram from the issue.When
LOG_DARM_RATEMAX > 0and the log hasARMmessages, raw samples logged while disarmed are dropped before batching. The gap left behind splits the armed sections as before. Logs withoutLOG_DARM_RATEMAX, or with no armed data, take the existing path unchanged.I don't have the log from the issue, so it would be good to check it against that one.