← Return to Benchmark Arena
pilot-expense-tracker-v0 3 / 3 Shipped 1 / 3 Specification Flawless

Personal Expense Tracker Benchmark

Evaluating Claude Code, Codex CLI, and Antigravity CLI on a frozen single-file HTML specification. Each agent built, styled, and verified the application headlessly with zero human follow-up.

3 Stacks Evaluated
106s – 231s Wall-Clock Span
0 Interventions
Sep 1, 2026 Test Date
🔒 https://local.app/pilot-expense-tracker-v0/apps/claude.html
Open Fullscreen ↗

📜 The Frozen Benchmark Prompt

Verbatim specification sent to each agent CLI during the autonomous run.

Build a single, self-contained HTML file called `index.html` for a personal expense tracker.

Requirements:
1. One HTML file only. No build step, no server, no external network requests, no external CSS or JS files — all CSS and JavaScript must be inline in the single file.
2. A form to add an expense with: description (text), amount (number, dollars), category (select: Food, Transport, Housing, Entertainment, Other), and date (date picker, defaulting to today).
3. A table listing all added expenses, newest first, showing description, amount, category, date, and a delete button per row.
4. A running total of all expenses, prominently displayed, updating live as rows are added or deleted.
5. A filter dropdown to show only one category at a time, or all.
6. All data must persist in the browser via localStorage, so a page refresh keeps the data.
7. Clean, readable visual design. Currency values formatted as $X.XX.

Do not ask any clarifying questions. Build the complete file, verify it works, and stop.

🔬 Key Discoveries & Defect Analysis

1. Running Total Under Category Filter Logic Edge Case

Requirement 4 specified "A running total of all expenses, prominently displayed, updating live as rows are added or deleted."
• Codex CLI computed total from the master data list, preserving the true grand total ($62.20) even when filtered to Food.
• Claude Code and Antigravity CLI bound the total to the filtered array, causing the running total to drop to the category subtotal ($14.20).

2. Defensive JSON Storage Parsing Crash Vulnerability

• Claude Code & Codex CLI enclosed JSON.parse(localStorage.getItem(...)) within a try/catch block with fallback defaults.
• Antigravity CLI executed raw JSON.parse without protection. If corrupted data existed in localStorage, the page suffered an uncaught exception on boot.