fix(runner): redirect supervised task stdin to DEVNULL
When the supervisor is launched on a controlling tty (tmux pane), every supervised task inherited that tty as stdin. Tasks that read stdin, including ffmpeg via prepare_audio_segments, ran in a background process group, so the first read raised SIGTTIN and stopped the whole process group; supervisor managed.wait() did not distinguish stopped from running, so hourly sync:plaud runs only surfaced the hang when the 1800s max_runtime watchdog killed them, which has been happening since 2026-05-05.
Pass stdin=subprocess.DEVNULL from ManagedProcess.spawn so every supervised process gets null stdin regardless of how the supervisor was launched, and add -nostdin to the two ffmpeg invocations in think/importers/audio.py as defense in depth.
A future hardening pass should detect WIFSTOPPED in think/supervisor.py::enforce_deadlines, or via os.waitpid(..., os.WUNTRACED), so a buried stop is surfaced immediately instead of at the 1800s cap.
Co-Authored-By: Codex <codex@openai.com>