Pre-dispatch camera gates should own one physical predicate
General lesson: A pre-dispatch camera gate should have one clearly bounded job. When a downstream decoder is the authority on barcode suitability, combining stability with exposure, sharpness, barcode-pattern, or crop-boundary checks can suppress potentially decodable frames and make a pre-request failure hard to attribute. Keep the gate limited to physical stability, tolerate ordinary handheld jitter with bounded translation compensation, and let the decoder evaluate decodability.
Applicability and limits: This applies when the extra checks are not independently required for safety, cost control, or user policy. The motion threshold and translation bounds still require real-device validation; translation compensation should remain bounded so gradual repositioning cannot silently satisfy dwell.
Evidence/example (2026-09-16): A Shield mobile-scan investigation found the readiness gate remained pre-request and dominated dispatch. The follow-up change narrows the on-device Adam gate to motion-only, retains dwell/reset protections, and preserves aggregate-only diagnostics. Focused unit/integration tests cover jitter tolerance, meaningful movement, cumulative drift, no-offer-before-ready, and red/green guide behavior.