https://www.linkedin.com/feed/update/urn:li:activity:7475547663866953729/
Inspiration
Two numbers started this. AI now writes a huge share of new code, and the part of an engineer's job that's growing isn't writing it, it's reviewing it. But there's a trap baked into that shift: the boring entry-level reps that used to teach people review judgement are exactly the work AI absorbs first. The career ladder is losing its bottom rung.
That's The First Spark Challenge's B2 prompt, "entry-level work is being compressed", and it felt urgent. If AI does the grunt work juniors learned from, where does the next generation build the instinct to catch what AI gets wrong? We decided to build the gym for that instinct.
What it does
Mergeworthy is a pixel, Pokémon-style game where you review AI-authored pull requests. A wild PR appears, its AI author lobbies you to just ship it, and your job is to catch what it got wrong: flag the problem lines, stamp a verdict, and write one sharp note, all on the clock.
A hidden rubric of five skills turns your review into an accuracy score.
🦅 Bug Detection · 🎯 Prioritization · ⚖️ Verdict — graded deterministically 💬 Communication · 🧪 Test Coverage — graded by an LLM with a heuristic fallback Clear the bar and you earn a catch; the PR drops into your Pokédex-style collection, you climb a global ladder, and every catch becomes a shareable challenge link to duel a friend. A separate Time Attack mode throws 70 AI-generated PRs at you against the clock. The whole thesis is one rule: we grade judgement, not speed.
How we built it
A Vite + React + TypeScript pixel frontend talks to a FastAPI backend, deployed co-located on a single same-origin Vercel project (frontend at /, API under /api).
I used an LLM as a content engine, baking 70 PRs (gen-900…gen-969) — each with a planted defect, a difficulty rating, and a validation gate. The answer key is stripped server-side, so the grade can't be gamed from the client. Auth and persistence run on Supabase.
Challenges we ran into
- Making "judgement over speed" provable, not just stated. The breakthrough was the constraint, once speed was mathematically incapable of bridging an accuracy gap, the rest of scoring fell into place.
- A serverless backend with a read-only filesystem and no shared memory. Vercel only lets you write to /tmp and forgets everything between invocations, which pushed every feature toward a key-free, stateless-by-default design with Supabase for anything that had to persist.
- Same-origin deploy gymnastics. Getting FastAPI and a Vite static build onto one Vercel project \Starlette stripping the /api prefix, baking VITE_API_BASE at build time, fighting the legacy builds/routes config — took real effort.
- Every feature has to run with zero credentials. Grading, voice, and scoring each needed a graceful fallback, which meant building and testing two paths for the parts that matter.
Accomplishments that we're proud of
- A guardrail that's provable, not just a slogan — the scoring math makes a fast wrong answer literally unable to beat a slow right one.
- It runs with zero API keys. The game is fully playable offline; the LLM is an optional second opinion, never a dependency.
- Playable end-to-end in 5 days: review → grade → catch → collection → global ladder → challenge links, plus a 70-PR Time Attack mode.
- A genuine safety net: 90 backend + 73 frontend tests, green by default with no credentials set.
What we learned
- A guardrail is more convincing as math than as a slogan. Encoding the thesis as an inequality changed how we thought about the entire system.
- Trust comes from determinism. Players don't trust a score they suspect an LLM hallucinated; a deterministic spine with the LLM as an optional second opinion made it feel fair.
- Constraints are content. A 7-day clock killed a lot of ideas early, which was a gift.
What's next for Mergeworthy
- Real PRs, real risk: ingest anonymized open-source pull requests so the puzzles mirror production code, not just generated ones.
- A verifiable signal: turn a player's per-skill profile into a shareable "review judgement" score for résumés and interviews.
- Team mode: onboarding and benchmarking for engineering teams, calibrate new reviewers on planted-defect PRs that mirror their real codebase.
- Curriculum partnerships: a graded, replayable track for bootcamps and universities teaching the one skill interviews now test.
- Deeper AI co-judging: expand from two LLM-graded skills to nuanced feedback on why a review note works, while keeping the deterministic core authoritative.
Built With
- fastapi
- openai
- python
- react
- supabase
- typescript
- vercel
- vite
Log in or sign up for Devpost to join the conversation.