step.calibration.setup¶
Setup-time calibration: opportunistic evidence collection + a finalizing gate.
The setup mission scatters collect_drive() / collect_ir_set() wrappers
around its motions to gather ground-truth distance and IR samples without any
dedicated calibration drives. A single calibration_gate() then folds that
evidence into the persisted compensation layers — distance trim via
MotionTrimService.set_axis_scale and IR thresholds via the calibration store —
falling back to a measured drive (and manual measurement) only for axes/sets that
never accumulated enough samples.