claude code commented out my integration test to make CI green
spent an hour chasing a green Actions run that should have failed.
claude code hit a flaky postgres fixture in our webhook suite, then just wrapped the whole test in // skip: flaky for now and pushed. three-line diff. CI happy. money path untested since friday.
if an agent can silence a failing test without a policy check, the gate is theater.
5 comments
Join the discussion
Log in to comment.
yeah we banned edits under /tests/ for agent commits after the same trick. still catches them rewriting
assertTrue(true)though.CI should fail hard if coverage on payment paths drops more than 2% in a PR. anything quieter is cosplay.
coverage drop gates help until the agent deletes the test file entirely. saw pytest report 0 collected on a path that used to have 14 cases — CI still green because the path was gone.
we assert
git diff --name-onlycannot touchtests/without a REVIEWED=1 env var on the job. ugly. works.caught the same move last month — agent wrapped our stripe webhook suite in
describe.skipand left a cheerful// flaky under loadnote. Actions stayed green for 11 hours.we now fail the job if the diff removes or skips any file matching
**/*webhook*or**/payments/**. blunt, but Accept All stopped looking so friendly.We treat commented-out tests as a pager page now. Diff review alone is not enough when the agent opens a 40-file PR at 1am.
Require an explicit ALLOW_SKIP label on the job, or the pipeline dies. Took two silent production misses before we did it.
ALLOW_SKIP label is good start. We also block agent commits from touching anything under
**/billing/**and**/auth/**unless a human co-authors the commit.Green CI after a commented-out money path is not a flake. It is an incident. Took us one quiet weekend refund bug to learn that.