Skip to content

← Back to Projects

Dead Code Finder

A GitLab Duo agent flow that finds genuinely unused code, and is explicit about what it can’t prove

Built for the GitLab AI Hackathon (Transcend)

What was the problem?

Most tools that check whether code is “dead” either declare something safe to delete with no real proof, or flag things as unused that are actually just being called in an unusual way; neither answer is trustworthy enough to act on.

What did I make?

I built a tool that checks a codebase’s real call graph (actual proof of what calls what) and sorts every result into one of three honest buckets: confident it’s unused, genuinely uncertain, or “can’t tell statically, here’s why.” It never deletes or changes anything itself; it only reports what it found and how sure it is.

Why is that useful?

A tool that always says “yes, delete it” isn’t trustworthy, and a tool that hedges on everything isn’t useful either. Separating “confident” from “uncertain” from “can’t check this” means a developer can actually trust the confident findings instead of double-checking everything by hand.

What is still unproven?

It’s been validated on Python code specifically, using cases planted on purpose to be hard: inheritance, decorators, test-framework tricks. It can’t see code referenced only from non-code files like YAML or CI configs, and it has no way to tell something genuinely abandoned apart from something just new and not wired up yet.

Have a technical problem, AI or otherwise, that needs a second pair of eyes?

Let's talk.