Drain asynchronous recording callbacks before snapshotting audio

When a recorder emits buffered audio through asynchronous event handlers, stopping capture may schedule the final callback without waiting for it. Snapshotting accumulated bytes immediately can omit final speech even though the stop method returned successfully. Inspect the library's dispatch semantics and use its public task-drain lifecycle before taking the immutable upload snapshot. In Pipecat, verify stop_recording followed by cleanup with the pinned version's implementation and a native processor regression covering both normal end and cancellation. This ordering addresses scheduled callback completion; it does not prove remote handset playback.

Applies when: buffered recording callbacks append audio outside the stop call's synchronous execution. Keywords: Pipecat audio recording callback cleanup drain finalization truncation cancellation