WhyC — A Counter-Product
Story Preview Pipeline Submit URL ● LIVE · Iter 4 of 4
A Counter-Product · Vol. 01 · No. 01 · 2026

While they hire, we ship.

Six months after Demo Day, their job board is full and their product is empty. WhyC is the multi-agent counter-argument: paste a job-posting URL, walk away, come back to a hosted, working preview that scores its own fit against the spec it extracted — and rewrites itself until it agrees.

24 h · URL → deployed
Phoenix MCP · self-judging
Cloud Run · Next.js

Field Report · 2026.05

Avg. days from Demo Day187
Public product launched
"Hiring Eng / Intern" posts4.3 / co.
Spec → Preview, WhyC≤ 24h
Spec-fit, converged96%
— synthesised, n=42 categorical
shipped 24h CONVERGED
I The Pattern

Two trajectories from the same Demo Day.

Track A · A Cohort Co. Day 0 → Day 187

Hiring.
Still hiring.

Six months of recruiting motion. Eight job posts. One landing page that has not changed since the batch ended. The product slide is, generously, an architecture diagram.

  • D+14Landing page, no product
  • D+62"Founding Engineer" post #1
  • D+118"Founding Engineer" post #4
  • D+187Same landing page

Track B · WhyC 00:00 → 24:00

Extracted.
Built. Judged.

One URL in. Spec extracted by Gemini. Tokens, Next.js code, and an API surface generated. Cloud Run URL alive in ten visible minutes — then the loop quietly raises the spec-fit overnight.

  • 00:02URL → spec, 14 fields
  • 00:08Tokens + Next.js skeleton
  • 00:11First Cloud Run URL · 71%
  • 24:00Converged · 96%
II The Punchline · Drag It

Watch the agent argue with itself until it agrees.

Phoenix MCP queries our own OpenInference traces. An LLM-as-judge scores spec-fit. Only the under-spec flows are regenerated. Drag the slider to feel four iterations of one synthesised case.

  whyc-preview-7q3a.run.app  ·  iter 4 / 4
Spec-fit · 96%
acme-jobs.example / pricing missing Untitled hero copy Lorem ipsum hero deck — placeholder retained. Button judge: hero/copy mismatch · pricing flow absent · cta tone off
acme-jobs.example · iteration 2 Hire faster. A job board that reads like a product, not a form. POST A ROLE judge: pricing block still missing
Acme Hire faster. Stay honest. A job board for teams that publish their cap table next to the JD. POST A ROLE PRICING PRICING · ALMOST CONVERGED $0 — pay when you hire.
Acme PRODUCT PRICING CHANGELOG LOGIN Hire faster. Stay honest. A job board for teams that publish their cap table next to the JD. POST A ROLE → SEE PRICING FOR FOUNDERS Free, forever. Up to 3 open roles. Cap-table tag built in. $ 0 / MO FOR TEAMS Pay on hire. Unlimited roles. Source-of-truth applicant graph. 8% · ONE-TIME FOR FUNDS Portfolio mode. See which portcos actually ship — not just hire. TALK TO US judge: spec-fit 96% · CONVERGED · regenerated 0 / 6 flows
Spec-fit, live
CONVERGED · CALL IT
96%
III The Engine

A pipeline that edits its own homework.

1

Extract

Gemini reads the URL, returns a 14-field spec — copy, tokens, surface map, JTBD.

2

Generate

Design tokens · Next.js skeleton · 1–2 API routes — packaged for Cloud Run.

3

Deploy

First public URL inside ~10 min. Spec-fit baseline scored — usually 70-something.

4

Self-judge & rewrite

Phoenix MCP reads our own traces; LLM-as-judge scores per flow; only failing flows regenerate. Loop until converged.

"They post the role. We post the product."
— WhyC, on the 187th day after Demo Day
§ Submit · The Whole Bet

Paste a URL. Walk away.
Come back to a product.

Synthetic JDs welcome. Categorical satire only — we don't render real names or marks. Output is a Cloud Run preview, not a hosted production app.

2026.05 · originality dated; no AWS/OpenAI/Anthropic agent backbones; OSI-licensed.