Accidentally Awesome Labs Case AAL–003
Cover · 01
01 / 10

AI platform2026

Tessaro

Fine-tune a model. Get a verdict.

Upload a dataset; Tessaro checks it, trains an open-weight model on rented GPUs under a hard spend cap, then tells you on held-out rows whether it beat the model you started with.

Role
Product, design, engineering
Timeline
May 2026 → now
Platform
Web app · OpenAI-compatible API
Status
Live · paid launch pending
tessaro.fm landing page with an example verdict card Exhibit A
W 1280 × H 960 · @2× CASE NO. AAL–003
tessaro.fm — the landing page's example verdict

TessaroThe brief

The problem

Fine-tuning rarely fails loudly. A config drifts from the chat template, a resumed run trains on the wrong checkpoint, a GPU keeps billing after the job ends — and nobody says whether the result beat the base model.

What got built

  1. Dataset report: real token counts, template render, PII + dupes
  2. Training on rented GPUs, capped by the server
  3. Base-vs-tuned verdict on rows it never saw
  4. Serve via /v1, or export GGUF, Ollama, fp16

TessaroHard part 1 of 4

The invoice is the spec.

Obstacle

Serverless costs were under-accrued 29.47×: the platform fee — 44% of serverless spend — was never read, and cold starts had no cost term at all.

Fix

Price from the provider's invoice, not the docs. Append-only ledgers guarded by database triggers, quotes treated as hard ceilings, and a nightly job that reconciles every charge against the invoice.

0.000000 ledger delta after reconciliation
Proof
CASE NO. AAL–003

TessaroHard part 2 of 4

Five seconds of fake success.

Obstacle

A resumed job picked up a foreign checkpoint, “trained” for five seconds at a loss of zero, and reported success.

Fix

Broken runs got hard to build: validator and trainer read one canonical JSONL, the base model's real chat template renders at upload, and CI checks every generated config against Axolotl's own schema — no GPU needed.

30 / 30 correct-by-construction requirements shipped
Proof
CASE NO. AAL–003

TessaroHard part 3 of 4

Hung at step one.

Obstacle

Multi-GPU FSDP2 runs froze on their first step — no error, no log, just a meter running.

Fix

A stack-dump watchdog traced the hang to NCCL probing peer-to-peer and InfiniBand links the containers don't expose. Now a boot probe keeps P2P only where NVLink exists — proven on real A100 and L4 pods.

1.452 s per step with NVLink P2P kept (1.502 s with it off)
Proof
CASE NO. AAL–003

TessaroHard part 4 of 4

No GPU left behind.

Obstacle

A job isn't over until the provider confirms the hardware is gone — and Cloudflare's retry alarms give up after six attempts.

Fix

A Durable Object keeps retrying with capped backoff until a read confirms the hardware is gone. Every resource carries an environment prefix, and an hourly sweep reaps orphans across four resource types.

4 resource types swept for orphans every hour
Proof
CASE NO. AAL–003

TessaroBlueprint

One Worker fronts everything; GPUs are rented per job and torn down on proof.

Stack

Edge
Workers · Hono · Durable Objects · Queues · Hyperdrive · R2
Data
Neon Postgres · Drizzle · OpenAPI + orval
ML
Axolotl · FSDP2 · vLLM · SGLang · llama.cpp
Product
React 19 · Clerk · Polar · Resend · Sentry
Tessaro architecture Web and API clients reach a Hono Worker on Cloudflare, which uses Durable Objects, queues and crons, stores state in Neon Postgres through Hyperdrive and in R2, and provisions rented GPU pods for training, serving and exports. Rented GPUs · torn down per job Web app React 19 · Vite API clients OpenAI-compatible Worker Hono on Cloudflare DOs · Queues alarms · SSE · crons Neon Postgres via Hyperdrive R2 datasets · artifacts Training pods Axolotl · FSDP2 Serving vLLM · SGLang Exports GGUF · Ollama · fp16 state · jobssigned objects
  1. Clients
    • Web appReact 19 · Vite
    • API clientsOpenAI-compatible
  2. Edge
    • WorkerHono on Cloudflare
    • DOs · Queuesalarms · SSE · crons
  3. State
    • Neon Postgresvia Hyperdrive
    • R2datasets · artifacts
  4. Rented GPUs
    • Training podsAxolotl · FSDP2
    • ServingvLLM · SGLang
    • ExportsGGUF · Ollama · fp16
Not to scale DWG. AAL–003

TessaroReceipts

Numbers, not adjectives.

  1. 1,608 commits in 134 days
  2. 4,933 automated tests across API · Worker · SPA
  3. 59 migrations, ledger triggers included
  4. 78 typed API operations
  5. 42 visual regression baselines
  6. 390 px mobile contract enforced in CI

TessaroMethod

Prototype fast, then rebuild on purpose.

Replit Agent produced a clickable prototype in two days, with training simulated. Then the real build: Claude Code under GSD phase plans, later Codex, each milestone closed by a requirements audit. Production moved from Replit to Cloudflare Workers within a week; real-GPU canaries prove the paid path.

Agents

  • Replit Agent
  • Claude Code
  • Codex
  • Claude Design
  1. spec
  2. plan
  3. build
  4. verify
  5. ship

Every change clears

  • Typecheck
  • 4.9k tests
  • axe a11y
  • Visual baselines
  • Real-GPU canaries
Process
CASE NO. AAL–003

TessaroEnd of file

End of file.

Capabilities on file

  • LLM fine-tuning
  • GPU orchestration
  • Durable Objects
  • Ledger-grade billing
  • OpenAPI codegen
  • Accessible UI
  • Mobile-first
Next case
CASE NO. AAL–005
Harmony AICase AAL–005 Classify products. Govern the AI. Open case file