If Shaman is used to submit the job files, store the job's checkout ID (i.e. the path relative to the checkout root) in the database. This will make it possible in the future to remove the Shaman checkout along with the job itself.
{ffmpeg}
os.IsNotExist()
errors.Is(err, fs.ErrNotExist()
require.
assert.
job_compilers/path.go
js_path.go
job_compilers/process.go
js_process.go