Active
Ridecast2 · March 6, 2026
22
Production Features.
1 Developer. 1 Day.
Zero Lines Written.
What happened when a developer stopped writing code
and started writing specs.
⚙️
Built with
amplifier-bundle-dev-machine
github.com/ramparte/amplifier-bundle-dev-machine
Data verified from git log · STATE.yaml · 2026-03-06
Quality first · Ridecast2
Before You Call BS
An iOS app that turns any PDF or article into a commute-sized podcast — with real auth, real payments, and cloud deploy. Every line machine-written.
Test Suite
151/158
tests passing · machine-written
Lint — zero warnings
Tests — 151/158 passing
Build — 5.1s clean
E2E — 5/5 Playwright scenarios
Production Stack
Next.js 16 · Stripe · Clerk
Azure · Claude AI
🔐
Clerk + Stripe
Real auth · $10/mo gate
☁️
Azure-deployed
CI/CD · push-to-ship
This isn't a prototype. Every commit passed the same 4 health gates that hand-written code must pass.
Architecture
How the Dev Machine Works
Context lives in files, not memory. Every session is stateless. The machine never forgets because it writes everything down.
Write Spec
≤5 files · mock patterns
Fresh Session
stateless · no memory
TDD Loop
red → green → refactor
4 Gates
lint · test · build · e2e
Commit
write STATE.yaml
📁 State Files
# STATE.yaml — machine's memory session: 6 features_completed: 17 tests: 151 last_commit: "feat(ux): smart-resume" # CONTEXT-TRANSFER.md — next session brief ## Completed This Session ## Ready To Build Next ## Architectural Decisions Made
🧠
Why stateless sessions?
Long-running sessions accumulate hallucinations. Fresh sessions start clean. Files carry truth forward.
🔁
Recipe orchestration
An outer loop drives sessions. STATE.yaml is the handoff. Human only touches the spec.
The insight · Sessions 1–3
Spec Quality = Output Quality
Phase 1: loose specs, 2 sessions for 5 features. Phase 2: explicit specs, 1 session for 4 features in 11 minutes. The developer didn't get faster — the specs did.
Phase 1 · Light Specs
2 sessions
for 5 features
Full bar = baseline
✗ No explicit mock patterns
✗ No code quoted in spec
✗ Scope loosely defined
Phase 2 · Explicit Specs
1 session
for 4 features — in 11 minutes
Half the sessions, comparable scope
✓ vi.mock() patterns explicitly shown
✓ Current code quoted in spec
✓ Scope section + guard in instructions
The developer's job didn't disappear — it transformed. Spec quality = output quality. Garbage in, garbage out. Precision in, production out.
Phase 0 · Sessions 7–8 · The Foundation
31
minutes
6 production-grade
infrastructure features.
Real auth. Real payments. Real deployment.
Human only touched API key setup.
🗣 Google Cloud TTS Provider client · voice selection · SSML rate control
🔐 Clerk Authentication Auth middleware · protected routes · webhooks
☁️ Azure Blob Storage SAS tokens · upload/download · per-user paths
👥 Multi-User Schema Prisma migration · userId · backfill · row-level access
💳 Stripe $10/mo Gate Checkout · webhooks · freemium entitlement checks
🚀 Azure Container Apps CI/CD Dockerfile · GitHub Actions · push-to-deploy on main
Final scorecard · 2026-03-06
One Day. By the Numbers.
22
Production
features shipped
8
Dev sessions
total
+93
Tests added
58 → 151
0
Lines of app code
written by human
Fastest session: 4 features in 11 minutes — one feature every 2.7 minutes
Health Gates — All Green
Lintzero warnings
Tests151 / 158 passing
Build5.1s clean
E2E5 / 5 Playwright
Velocity Breakdown
Phase 1 (sessions 1–2) 5 features
Phase 2 (sessions 3–6) ~11 features + 3 fixes
Phase 0 (sessions 7–8) 6 infra features
Total verified 22 features
Source: STATE.yaml · git log · 2026-03-06
The payoff
The developer's job
didn't disappear.
It transformed.
Before Writes functions · debugs failures · manages state in head
After Spec authorship replaced implementation. Architectural decisions. Quality management through discipline.
Quality of output
= quality of spec.
The job got harder in the right places.
Easier in the wrong ones.
The 6 Spec Quality Rules
  • 1
    Quote current code in the spec. The machine can't refactor what it can't see.
  • 2
    Show vi.mock() patterns explicitly. Pattern ambiguity creates test failures that cost extra sessions.
  • 3
    Scope each spec to ≤5 files. 5-file scopes ship. 15-file scopes get stuck.
  • 4
    Infra specs need human setup steps. List API keys and cloud resources as pre-conditions.
  • 5
    Scope section is mandatory. "In scope: X. Out of scope: Y." Without it, the machine optimistically extends.
  • 6
    Add a scope guard to session instructions. "Do not build anything not in the spec." Belt and suspenders.
Write the specs.
Run the machine.
The pattern is replicable. Start with one feature.
Apply the 6 rules. Let the machine ship it.
⚙️
The toolchain that made this possible
amplifier-bundle-dev-machine
github.com/ramparte/amplifier-bundle-dev-machine
Pick a feature · write the spec
Run the machine
Review · improve the spec
Data verified from git log · STATE.yaml · 2026-03-06 · sole author: 1 developer · all commits
1 / 8
More Amplifier Stories