On-device quality scoring
Quality runs before the network call so a bad capture never costs a round-trip.
Fingerprint
Each cropped fingertip is scored on-device. Scores run from 0–100; higher is better. The default threshold is 40.
Per-step policy controls how many fingers in a multi-finger capture must pass:
'all'— every finger must pass. This is the default and the right choice for enrollment, where each position is recorded separately.'any'— at least one finger must pass. Use for 1:1 verification, where one clean print is enough.
Face
Two layers:
- Landmark signals — pose, eye openness, face area — gate the hold-steady countdown. If the user is off-angle, blinking, or too far, the session keeps detecting and does not start the countdown.
- Pixel signals — sharpness, brightness, contrast — re-score the captured frame after the countdown completes.
The faceQualityGate config controls how strictly these are enforced:
'strict'(default) — both layers gate capture. Failed pixel scoring triggers a retry up tomaxFaceQualityRetries.'guidance'— scores are emitted via'face_quality'but do not block capture. Useful for instrumenting before tuning.'off'— disables pixel scoring entirely. Landmark gating still runs.
Tuning
Override thresholds via SladeIDConfig.fingerprintQualityThreshold and FaceCaptureConfig.faceQuality. See Tune capture quality for worked examples.