The protocol also says any test that reads icon or data files must list them as inputs, because an ordinary build can skip the test without any cache. Gradle's up-to-date check works from declared inputs too, so a changed drawable that was never declared leaves the test task UP-TO-DATE and the build green.
Founder & CEO of Netsujo. Building trustworthy AI agent systems, with a focus on task boundaries, verification, and production reliability. Creator of Agent Role Contracts (ARC).
Exactly. --no-build-cache closes the FROM-CACHE path, but it does not close Gradle’s UP-TO-DATE path when an input was never declared.
I’d require three separate receipts: the mutated asset is declared as a task input; the test task outcome is actually executed rather than FROM-CACHE, UP-TO-DATE, SKIPPED, or NO-SOURCE; and the deliberate break fails before the repaired case passes.
--rerun-tasks is useful for the control run, while an ordinary build still needs to prove that the declared input invalidates the task correctly. A sanitized task-outcome line and input declaration would be enough to preserve this as a concrete fixture.
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
The protocol also says any test that reads icon or data files must list them as inputs, because an ordinary build can skip the test without any cache. Gradle's up-to-date check works from declared inputs too, so a changed drawable that was never declared leaves the test task UP-TO-DATE and the build green.
Exactly.
--no-build-cachecloses theFROM-CACHEpath, but it does not close Gradle’sUP-TO-DATEpath when an input was never declared.I’d require three separate receipts: the mutated asset is declared as a task input; the test task outcome is actually executed rather than
FROM-CACHE,UP-TO-DATE,SKIPPED, orNO-SOURCE; and the deliberate break fails before the repaired case passes.--rerun-tasksis useful for the control run, while an ordinary build still needs to prove that the declared input invalidates the task correctly. A sanitized task-outcome line and input declaration would be enough to preserve this as a concrete fixture.