feat: implement landlock
Draft
C4
4d ago+936+936+012345678901234567890123456789-155-155-012345678901234567890123456789
Summary by cubic
Runs every external converter through a per-job Landlock sandbox instead of invoking tools directly, restricting each process to its input, output, and temporary directories and blocking network access. Unsupported systems fall back to unsandboxed execution by default; SANDBOX_STRICT=true makes missing sandbox support fail conversions.
Bug Fixes
- Download endpoint and archive generation now reject symlinked files.
Migration
- The Docker image now builds and installs
landlock-runnerwithgccand enables strict mode. - Set
SANDBOX_DISABLED=trueto disable sandbox discovery, orLANDLOCK_RUNNER_PATHto use a custom runner. - Sandboxed processes use the job directory for
TMPDIR,TEMP,TMP, andHOME. - Adds tests for runner discovery, strict-mode failures, environment propagation, and filesystem and network restrictions.