mirror of
https://github.com/storytold/filmcraft.git
synced 2026-10-26 11:06:58 -06:00
make_sequence had ffmpeg write numbered stills straight into the shared seq_<ext> directory and treated it as ready once frames 1 and 12 existed. Two tests generating it at once (png_sequence_exact and missing_frames_hold_the_previous_frame) read each other's half-written PNGs; one that fails to decode is held as missing, so frame 6 equalled frame 3. Six parallel processes on a fresh fixture dir failed 18 of 120 runs before, 0 of 120 after. ffmpeg now writes into a testkit temp_path directory that is renamed into place (with a .complete marker) only when all twelve frames are there; the gap copy is private to its test. Fixes #125 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>