06-reference

neural avb design experiments evaluate agentic harness

2026-05-10·reference·source: X long-form article by @neural_avb·by AVB (@neural_avb, Neural Breakdown YT, Paper Breakdown founder)
harness-engineeringexperiment-designagent-evaluationeval-methodologysix-step-frameworkdeterministic-metricsrl-environments-equivalencetracked-author-candidate

"How to design Experiments to Evaluate your Agentic Harness" — @neural_avb

Why this is in the vault

Founder shared 2026-05-10 22:05 ET in #ops Discord with no comment. Filed because this is the explicit operational methodology for harness evaluation that Osmani's harness-engineering piece (filed this morning) lacks. Osmani names the discipline (ratchet every failure into a permanent rule) but doesn't tell you HOW to test whether your ratchet actually moved the metric. AVB does. The 6-step framework is concrete, lifts cleanly, and addresses a real gap in RDCO's current /improve discipline (we ratchet on observed failures but don't run formal A/B comparisons or maintain test-case datasets per-skill).

Bookmark-to-like ratio of 2.31:1 (1306 bookmarks / 565 likes on 103k impressions) is strong practitioner-save signal — engineers are filing this as reference, not just liking it. Author has only 10.8k followers so this is travelling on substance, not reach.

The core argument (the 6 steps)

Building agentic systems = (1) Build, (2) Evaluate, (3) Refine. Step 1 is trivial with coding agents. Step 3 is trivial once you finish Step 2. Most teams underestimate Step 2.

Evaluation has two surfaces AVB explicitly distinguishes:

  1. Collecting logs + success metrics on the current system (passive)
  2. Validating hypotheses + comparing approaches against alternatives via deliberate experiments (active)

Most teams do (1), few do (2). The article is about (2).

Step 1 — Decide what to evaluate

Treat each agent as a separate harness. System-level vs module-level harness is a deliberate choice, not a default. Module to pick:

Step 2 — Decide your end goal

Pick ONE optimization vector while keeping others acceptable:

Universal goal: better value to users, fast, cheap, minimal tech debt. Different businesses weight these differently. AVB's example: cost-reduction for his self-funded Paper Breakdown service.

Step 3 — Isolate the black box and your knobs

Clean function: inputs in, outputs out, no internal plumbing. Plus EXPLICIT independent variables (the knobs):

Cap at 2-3 independent variables. More = unintepretable results.

Persistence trap: turn caching/db-writes OFF for experiments. Each test case must be transactional and ephemeral. Test case 10 should have zero advantage/disadvantage from test case 4.

Step 4 — Design your test-cases

Best-to-worst sources:

If you have no production logs, "set up your analytics first" (he names PostHog) and come back later.

Quality criteria for test-case data:

Step 5 — Design evaluation metrics

Deterministic > probabilistic. Deterministic metrics (string contains, valid JSON, length under N, regex on format) are cheaper, faster, 100% reliable. Use these wherever possible.

Probabilistic = LLM-as-a-judge. Use only when deterministic isn't possible. Common patterns:

ALWAYS record at minimum:

Step 6 — Plot results

Bar plots for response times. Scatter for cost-vs-quality / latency-vs-quality. Box plots for distribution. AVB notes you can ask your coding agent to draw plots.

Bonus — RL environments equivalence

Eval harnesses and RL environments are structurally the same: you have observations (test inputs), actions (model output), reward function (your scoring). So once you have an eval harness, you can immediately plug in prompt-optimization (GEPA) or end-to-end RL training to train smaller agents on YOUR specific tasks. This is a load-bearing aside that opens a whole capability path.

Worked example (the proof)

AVB ran his retrieval subagent eval against multiple smaller models. Result: replaced gpt-5-mini with gemini-3-flash-lite. Faster, cheaper, and a side-benefit (calls a tool the prior model missed). Now reusable: when a new model drops, re-run the same test-cases against just the new model and compare.

Mapping against Ray Data Co — STRONG

This article fills the eval-methodology gap in RDCO's harness-engineering discipline. We have the ratchet (every failure earns a rule) and the audit script (deterministic post-condition check). What we DON'T have is AVB's Step 3-6: isolated black-box per skill + curated test-case dataset + formal independent-variable A/B + plot-driven interpretation.

What we already do that maps to AVB's framework

What we DON'T do that AVB names as load-bearing

  1. Per-skill black-box isolation with independent variables. Our /improve cycle reads observed failures and edits skill prompts. We don't have a clean "skill-as-function" with feature-flagged variants we can A/B. Each /improve commit is irreversible-by-default; we can't easily compare prompt-v1 vs prompt-v2 against the same input set.
  2. Per-skill test-case datasets. We have no curated tests/<skill>.csv per-skill. We have production logs (vault entries, decision logs, sub-agent traces) but they're not extracted into reusable test-case datasets.
  3. Formal A/B with statistical interpretation. Every /improve change is a one-way ratchet. We never compare two skill versions against the same dataset and pick the winner with measured confidence.
  4. Walltime + cost + error rate per skill run. We track sub-agent token usage at the parent-collection level but not per-skill-version with a benchmark dataset.

Implications — what /improve should learn from this

The /improve skill should evolve to support AVB's discipline. Concrete proposed changes:

This is a meaningful upgrade to the meta-loop. Worth queuing as a /improve target itself.

Implications for the RL-environments equivalence

AVB's bonus point is large for RDCO long-term. If our eval harnesses are structurally RL environments, we can:

Both are post-Mammoth, post-healthcare-bet projects. But naming them as on-the-table possibilities means the eval-harness work pays off in capability expansion, not just hygiene.

Sanity Check candidate

Working title: "Stop ratcheting blind: the missing eval discipline in agent operating loops."

Original re-frame: most teams who hear "harness engineering" (Osmani) get the ratchet half but skip the eval half. They edit prompts based on gut + last-week's failure, then declare victory. AVB's 6-step framework is the discipline that turns "we changed the prompt" into "we proved the new prompt is better, by how much, with what tradeoffs." The Sanity Check piece would walk an operator through applying the framework to ONE skill in their stack, using RDCO's own /process-newsletter as the worked example.

Voice fit: empirical + practitioner methodology + named tradeoffs. Founder voice strength.

Tier: medium-priority candidate. Strong stand-alone but smaller wedge than the harness-moat-two-layers piece. Slot for week-of-2026-05-19 if Mammoth + healthcare-bet leave bandwidth.

Tracked-author candidate (CRM workflow)

@neural_avb (AVB). 10.8k followers, run "Neural Breakdown" on YouTube + "Paper Breakdown" SaaS for studying research papers with AI. Self-funded indie operator (the cost-reduction motivation in Step 2 is real-world signal, not academic). Engineering-first content with practitioner voice. Likely worth tracking — file as candidate for the contacts CRM (Task #4 per process-newsletter README).

Notable quotes (≤15 words each, in quotation marks)

Open follow-ups

Related

Source caveat

Article body retrieved via xmcp getPostsById with tweet.fields: ["article", ...] + expansions: ["article.cover_media", "article.media_entities"]. Plain text returned full ~2400-word body cleanly. Six embedded media (cover + 5 illustrative diagrams/screenshots) returned as media_keys but not pulled — would need to fetch separately if Sanity Check piece requires the worked-example diagrams.

Article date 2026-03-10 (2 months old when shared); founder sharing it today on the back of the harness-engineering thesis cluster work this week. Not new content; new RELEVANCE given today's frame.