Fix script exit on lsof errors with set +e
The cleanup script was failing with exit code 1 because the shell runs
with 'set -e' (exit on error), and lsof was returning a non-zero exit
code when scanning directories with locked files.
Solution:
- Wrap lsof and pgrep loops in subshells with 'set +e'
- Add '|| true' after each subshell to ensure failures don't propagate
- This allows the script to continue even if lsof/pgrep fail
This prevents the pre-checkout cleanup from failing and causing the
entire job to abort.