pub async fn repository_report_playback_stopped(
db: State<'_, DatabaseWrapper>,
manager: State<'_, RepositoryManagerWrapper>,
handle: String,
item_id: String,
position_ms: i64,
) -> Result<(), String>Expand description
Report playback stopped
A stop-report that cannot reach the server is queued rather than dropped: this is the position the resume point is built from, and losing it is exactly the “it forgot where I was” the sync queue exists to prevent. The drain (DR-131) pushes it on the next reconnect. Queueing is best-effort — failing the command because the queue write failed would tell the caller the report was lost when the local position was already saved.
TRACES: UR-025 | DR-154 | UT-151