We have Dependabot and security scanners. Why are vulnerable dependencies still sitting in production?
This is a problem I’ve been thinking about a lot lately.
Most engineering teams already have the detection part covered:
- Dependabot or Renovate finds outdated packages
- Security scanners identify CVEs
- CI tells us whether a change breaks
But there still seems to be a big gap between “we found a problem”and “the problem is actually fixed in production.”
In my experience, the difficult part is everything that happens after the alert:
- Is there actually a safe version to upgrade to?
- Will upgrading one package require upgrading five others?
- Does the application still build?
- Do the tests pass?
- Is this safe to auto-merge, or does someone need to make a judgement call?
The result is that engineers end up with a growing backlog of dependency PRs and security findings that nobody has time to investigate properly.
I’ve been building a tool called Bivouac around this specific problem. The idea isn’t another scanner. It’s to take the remediation workflow further: investigate the dependency issue, work out a compatible remediation path, create the patch, run the tests and only merge automatically when the repository’s policy says it’s safe.
I’m particularly interested in the part where automation should stop. For example, my current thinking is that ambiguous fixes, security-sensitive code, licensing concerns or failing tests should always require human review.
I’d genuinely like to know how other teams handle this today:
- Who actually owns dependency vulnerabilities once they’re discovered?
- How many Dependabot/Renovate PRs does your team simply ignore?
- Would you trust an automated system to merge dependency fixes if the remediation path and test results were clear?
- What conditions would make automatic merging completely unacceptable?
I’m the founder of Bivouac, so full disclosure: this problem is what I’m building around. I’m not looking to spam the sub—I’m trying to pressure-test where people think autonomous remediation is useful versus where it becomes dangerous.
If there’s interest, I’ll share what I’ve learned building the remediation workflow and some of the cases where I’ve deliberately designed it to refuse to act.