filesToRerun(): Promise<string[] | null>
Resolves the concrete previously-failing test files to re-run for --only-failed. Returns
null when no cache exists (the caller picks the fallback — run all, or a full watch start).
Otherwise returns the cached files that still exist, intersected with fsTree when input
targets were given (so failures stay scoped to what the user asked for) or the full cached set
when no targets were provided. Shared by the non-watch fsTree filter and the watch initial run.
import * as FailureCache from './failure-cache.ts'; await FailureCache.filesToRerun('/tmp/no-such-qunitx-project', false, {}); // null — no cache yet, so the caller falls back to running everything