From 321f11dd8f2d245a0041f05ff93e46ac4fc54db5 Mon Sep 17 00:00:00 2001 From: Esa Kataja Date: Sat, 16 May 2026 20:39:20 +0300 Subject: [PATCH] =?UTF-8?q?chore:=20document=20SIGINT=20cancellation=20in?= =?UTF-8?q?=20=C2=A74?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit After bug #9's context plumbing, a signal interrupts the current encode immediately rather than waiting for the poll cycle. Document the new shutdown semantics: children killed, work dir cleaned via the deferred RemoveAll, source routed to failed/. --- MANUAL.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MANUAL.md b/MANUAL.md index 6258383..119d967 100644 --- a/MANUAL.md +++ b/MANUAL.md @@ -100,7 +100,7 @@ Flags: - `-d` — delete the source `.mkv` after a successful encode instead of moving it to `originals/`. - `-c PATH` — path to config file. -Stop with `Ctrl+C` (SIGINT) or `SIGTERM`. A signal triggers a clean shutdown after the current poll cycle. +Stop with `Ctrl+C` (SIGINT) or `SIGTERM`. The signal cancels any in-flight encode immediately — the ffmpeg / ffprobe / opusenc children are killed, the per-job work directory is removed by its deferred cleanup, and the source `.mkv` is routed to `paths.failed` so the next run sees a clean `paths.input`. The program runs as a foreground daemon. It scans the input directory on startup and every 15 seconds thereafter.