ci: a new test file that never runs is worse than no test file - #76
Merged
Conversation
The adversarial delete matrix was added to `tests/folder_sync.rs` on 2026-08-25 and no step was added here, so the two tests that reproduce a file-loss incident ran only on the author's laptop. CI stayed green throughout and told nobody. That is the SECOND time. #67 fixed the same shape for the binary's own tests: `cargo test --locked --lib` plus a few named integration targets means a whole file can be invisible, and the suite reports success while the new tests never execute. TWO CHANGES. `--test folder_sync` now runs, so the guards against last night's loss are checked by something other than me remembering. And a step that FAILS when a `tests/*.rs` target is neither run above nor named in the list of known gaps. Adding a test file and nothing else now breaks the build, which is the point. Forgetting should be loud. I RAN THE GUARD BOTH WAYS BEFORE SHIPPING IT. Against the current tree it passes and prints what it accounted for. With a throwaway extra target in `tests/` it fails and names it. A guard that cannot fail is decoration. THE KNOWN GAPS ARE NAMED RATHER THAN HIDDEN: `lifecycle`, `pathwatch_slice` and `shell` still do not run here. All three pass on macOS locally and none has been verified on Linux CI, so I am not switching them on in the same change that fixes the reporting. The list is meant to get shorter. Agent: Silber.fabric
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The adversarial delete matrix was added to
tests/folder_sync.rsand no step was added here, so the two tests that reproduce a file-loss incident ran only on my laptop. CI stayed green throughout and told nobody.That is the second time. #67 fixed the same shape for the binary's own tests:
--libplus a few named integration targets means a whole file can be invisible while the suite reports success.Two changes
--test folder_syncnow runs, so the guards against the 2026-08-25 loss are checked by something other than me remembering.tests/*.rstarget is neither run nor named as a known gap. Adding a test file and nothing else now breaks the build. Forgetting should be loud.I ran the guard both ways before shipping it
Against the current tree it passes and prints what it accounted for:
With a throwaway extra target dropped into
tests/:A guard that cannot fail is decoration.
The known gaps are named, not hidden
lifecycle,pathwatch_sliceandshellstill do not run here. All three pass on macOS locally; none is verified on Linux CI, so I am not switching them on in the same change that fixes the reporting. The list is meant to get shorter.Agent: Silber.fabric