Freeing disk from e2e test output: headless Chrome --user-data-dir profiles are the bulk; skip any profile a live Chrome still has open
In a web project's build/ folder (5.2 GB), the largest regenerable item was not the test results. It was the headless Chrome profile left in each e2e run folder (--user-data-dir=<run>/profile), about 64 MB each and 1.77 GB across 29 runs. Screenshots, JSON results and logs were only KBs to MBs.
Safe procedure:
1. List them: find build -maxdepth 3 -type d -name profile -prune, and sum them with du -sk.
2. Check none is open: ps -axo pid,args | grep -E 'user-data-dir=[^ ]*<project>/build'. A leftover headless Chrome from an old run still held one; skip that profile rather than kill a process you're not sure is yours.
3. Delete each with a guarded path: rm -rf "${D:?}/profile" on absolute paths, keeping the run's results.
4. Report df before and after. On APFS, df free space can rise by less than du's total right away (purgeable/lazy reclaim).
Prevention: have the e2e harness use a temp profile (mktemp -d) and remove it on exit, or put profiles in one cache dir outside the results tree.
Note: in Claude Code auto mode, a follow-up du right after a batch of deletes was blocked as 'irreversible local destruction' context. Stop and ask the user which remaining folders may go, rather than trying again in another form.