← hackathons

Hackathon field report

JEVathon, TypeSafe AI × AI Collective

Built JEVgotiator with Chris and Dara in a three-hour window. Text an agent the Tesla you want. Code applies the hard limits, Jev scores up to 30 candidates, and you get five picks and a plan for the deal.

September 26, 2026 · Built JEVgotiator ·CodeRabbit, San Francisco · repo ↗ · live ↗
TypeSafe JevEvePhoton iMessageVercel AI GatewayNext.jsZodRailway

Event photos

Prototype

Built at JEVathon, Jev’s first community hackathon, hosted by TypeSafe AI and the AI Collective at CodeRabbit in San Francisco on September 26, 2026. The theme: the Anti Language Language Model. Sponsors included CodeRabbit, Browserbase, Whop, Cognition, Photon and GMI. Three of us: Chris on the catalog and the Eve/Photon integration, Dara on the deal-intelligence rules, me on the dashboard, filters, Jev ranking, integration and deployment. Hacking ran three hours. We didn’t place.

The problem I chose

Shopping agents redo retrieval from scratch on every query. Car shopping is the worst case. Our assisted browser search for a black Model 3 ran for over four minutes, then hit TrueCar’s human-verification wall.

What shipped

You text Eve about a Tesla in San Francisco. Eve clarifies the brief. Our API applies the hard filters in code, Jev scores the evidence for up to 30 candidates, and you get five options. Pick one to three, and Dara’s weighted rules draft a nonbinding plan for the deal.

The dashboard shows the real iMessage thread, every tool call, the shortlist and Jev’s trace: the exact questions it was asked, the scores it returned and how the arithmetic adds up.

Same brief, side by side: the browser path took over four minutes and got interrupted. Ours filtered 1,000 synthetic listings to 19 eligible cars and returned five Jev-scored picks in 728 ms, for about $0.0003 in Jev input tokens. Different inventories, so it’s a demo, not a benchmark.

Toolset

  • TypeSafe Jev (jev-1.13.0): typed, batched judgments over each candidate’s evidence.
  • Eve on Vercel: the conversational agent, with durable workflow state.
  • Photon: iMessage in and out through a signed webhook.
  • Vercel AI Gateway (gpt-4.1-mini): Eve’s conversation and brief extraction.
  • Next.js 16, React 19 and Zod: the dashboard, the API and the typed contracts between them.
  • Railway and Vercel: API, dashboard and agent on separate hosts.

What was hard

  • Three hours, and the team chat started 80 minutes in. The scope doc was titled “The 72-minute scope.”
  • Live listings never connected. The MarketCheck credential returned 401 on both auth paths, so the demo runs on 1,000 clearly labeled synthetic Teslas.
  • iMessage identity. Photon assigned each of us a different recipient number, and the docs drifted on whether a full round trip worked. It did, eventually: seven messages, five results.
  • Three hosts, three sets of secrets. Railway needed a deploy pinned to an explicit commit after a branch-connector issue. More origins meant more to keep aligned.

What we learned

  • Use Jev for narrow judgments that fit a typed contract. Eligibility, arithmetic and permissions stay in code.
  • Show the trace. Judges could read the actual Jev questions and math instead of trusting a “powered by” badge.
  • A shared contract unblocks parallel work. Synthetic inventory let the dashboard, ranking and agent move while real data wasn’t ready.
  • Cheap-first preselection biases the result. The honest claim is “top five of the cars Jev evaluated,” and the fix is freezing one complete live slice earlier.
  • Reset is a feature. Messaging identity, agent session and API results have to be linked explicitly.