Silent CI gate passed for weeks without checking a single file
A Python-based CI lint check was silently reporting success for weeks without executing any assertions, because the test pod it ran on lacked a git binary. When subprocess.run called git ls-files and received a FileNotFoundError, the process crashed before any file was checked, yet the CI gate marked the run as green. The root cause was a missing fallback: without git, the file enumerator returned zero files, and zero-files-checked looked identical to all-files-passed. The team fixed this by adding an os.walk fallback for environments without git and a hard failure when the enumerator returns an empty file list. The incident highlights a broader CI risk: a check that crashes before asserting is more dangerous than no check at all, because it creates a false sense of coverage.
This is an AI-generated summary. ShortSingh links to the original source for the complete article.
Discussion (0)
Log in to join the discussion and vote.
Log in