Inspiration
What it does
How we built it
Challenges we ran into
Accomplishments that we're proud of## Inspiration
Every pull request needs manual testing before merge — someone has to pull the branch, click through the changed flow, and check for regressions. Under deadline pressure, this step gets rushed or skipped entirely, letting critical bugs slip into production that a five-minute manual check would have caught. Existing CI tools run fixed, rigid test suites that don't adapt to code diffs. We wanted an AI agent that reasons what to test directly from the PR diff itself.
What it does
DiffCheck AI is an autonomous PR testing & visual regression agent that:
- Triggers on GitHub PRs: Ingests code diffs and inspects changed lines in real-time.
- Diff-Aware AI Reasoning: Evaluates risk levels, identifies affected UI surfaces, and dynamically synthesizes E2E Playwright test scripts without requiring fixed suites.
- Autonomous Sandbox Execution: Spins up a browser preview container, executes form fills, clicks, and multi-step user flows, and captures visual evidence.
- Structured GitHub PR Reports: Automatically posts formatted Markdown reports back to the PR with test status tables, screenshot evidence, logs, and video playback artifacts — automatically blocking merge if regressions are detected.
How we built it
- Frontend & UI Engine: Built with React 19, Vite, and Tailwind CSS using a modern glassmorphic dark theme, live browser sandbox execution frame, syntax-highlighted git diff stream, and interactive step timelines.
- AI Agent & Test Synthesizer: Powered by Google Gemini for intelligent code diff analysis, impact boundary detection, and dynamic Playwright script synthesis.
- Automation Runner: Playwright browser automation engine with virtual cursor tracking, DOM action streams, network request inspection, and console log capture.
Challenges we ran into
Reasoning about visual boundary impacts from raw code diffs alone was tricky. We had to ensure the agent correctly infers when CSS layout changes (like overflow: hidden) might clip interactive buttons on specific viewport sizes (e.g., mobile viewports).
Accomplishments that we're proud of
- Building a full end-to-end working prototype in under 3 hours!
- Creating an agent that reasons dynamically from code changes rather than relying on fixed test suites.
- Implementing an interactive Video Studio Teleprompter & 1-Click Auto Video Presenter directly inside the web platform.
What we learned
Diff-driven test synthesis drastically reduces test suite bloat while achieving higher coverage on high-risk surfaces modified in PRs.
What we learned
What's next for DiffCheck AI — Autonomous PR Testing Agent
Built With
- github-api
- google-gemini-api
- html5
- javascript
- node.js
- playwright
- react
- tailwind-css
- vite
Log in or sign up for Devpost to join the conversation.