fix: re-run task when generated files are missing with method: timestamp by drichardson · Pull Request #2716 · go-task/task

and others added 3 commits

March 9, 2026 14:41
When using method: timestamp, deleting a generated file (e.g. after a
clean) caused the task to be incorrectly skipped. The timestamp sentinel
file at .task/timestamp/<task> was still present from the previous run,
so TimestampChecker compared source timestamps against the sentinel alone
and found nothing newer—never noticing that the actual outputs were gone.

Fix by adding the same guard that ChecksumChecker already uses: before
the timestamp comparison, iterate the declared generates patterns and
return false (not up to date) if any pattern matches zero files.

Fixes go-task#1230

Assisted by AI

Co-Authored-By: Claude <noreply@anthropic.com>
…file

Add TestStatusChecksumMissingGenerated to verify that ChecksumChecker
also re-runs the task when a generated file is deleted after the checksum
file is established, mirroring the coverage added for TimestampChecker.

Assisted by AI

Co-Authored-By: Claude <noreply@anthropic.com>
Assisted by AI

Co-Authored-By: Claude <noreply@anthropic.com>