Problem
Cleanup reports include counts and reclaimed bytes, but operators need proof that destructive artifact rows were actually absent after apply. #707 fixed false-success reporting, but the JSON still does not make post-apply verification explicit per row.
Desired behavior
For artifact cleanup apply responses, include per-artifact evidence such as:
- resolved artifact path
- command exit status
exists_after boolean
- verified removed timestamp/result
- failure reason when verification fails
Acceptance criteria
- Successful rows show verified absence evidence.
- Failed rows show why they were skipped/not counted.
- Higher-level cleanup evidence can aggregate verified rows vs failed rows.
Problem
Cleanup reports include counts and reclaimed bytes, but operators need proof that destructive artifact rows were actually absent after apply. #707 fixed false-success reporting, but the JSON still does not make post-apply verification explicit per row.
Desired behavior
For artifact cleanup apply responses, include per-artifact evidence such as:
exists_afterbooleanAcceptance criteria