PoseTrackerProvider alone does not load the model (unless autoPreload).
What starts what
Cold-start modes
Recommended pattern
<PoseTrackerProvider autoPreload> still uses basic (no camera).
Important WebView detail
For the default WebView backend,preload() / warmup() waits until a mounted WebViewPoseView posts ready. Calling preload() with no WebView in the tree waits until timeout.
Usage metering (camera_start) runs when the camera session actually starts — not during basic preload.
Status path
Typical:configuring → downloading → warming → ready (fatal error only if the local/online model path fails hard). Handshake/engine failures degrade to keypoints-only without blocking ready.
Background / battery
Handled inside the WebView page (no host wiring):- App backgrounded → camera tracks stopped, inference loop halted; model stays in RAM for fast resume
- Foreground → camera reacquired (including any quality downgrade)
- Unmount
WebViewPoseView→ page destroyed; camera / WebGL / model freed - ~45 consecutive inference failures → stop loop, release camera,
errorevent - iOS
inactive(Control Center) is not treated as background
client.dispose() tears down everything.