Inspiration
Python beginners often receive AI-generated fixes without understanding the root cause or knowing whether the fix actually works. We built BugPilot AI to help students debug, learn, and verify their solutions instead of blindly trusting suggested code.
What it does
BugPilot AI is an AI-powered Python debugging assistant that explains errors, identifies root causes, suggests fixes, and displays code changes in a side-by-side diff. It includes examples of Division by Zero, IndexError, and missing dictionary keys.
Its core principle is: A proposed fix is not a verified fix until the tests pass.
How we built it
We used Python, FastAPI, HTML, CSS, and JavaScript to build a four-pane debugging workbench. Gemini supports AI-assisted analysis, with a deterministic fallback for supported examples. The verification workflow uses automated tests and Docker-based isolation, with a fail-closed response when safe isolation is unavailable.
Challenges we ran into
We needed to distinguish a fix that merely looks correct from one that passes tests. We also worked on safely handling untrusted code, limiting execution resources, and reporting verification failures clearly.
Accomplishments that we're proud of
We built a working debugging interface with root-cause explanations, code diffs, multiple example bugs, automated test results, and explicit verification statuses. We also implemented a fail-closed approach when Docker isolation is unavailable.
What we learned
We learned how to integrate AI into a full-stack Python application, design API workflows, write automated tests, present code differences, and consider security when executing code.
What's next for BugPilot AI
We plan to expand Python error coverage, improve edge-case test generation, strengthen sandbox verification, and provide more personalized explanations for students.
Log in or sign up for Devpost to join the conversation.