Design Output

Flight 1 — KB Document Format
3 arms × 2 models × 7 cases
Designed before anything ran

The protocol, settled before a single call was made — what decision it informs, what varies, what gets measured, and what the design already knew it could not prove.

The question

Purpose. Should a knowledge-base document (injected in-context) be formatted as long-form prose, structured Markdown, or semantic XML? This decision informs the format used for product/PRD-style reference documents fed to an AI assistant answering questions against them.

What's under test. Three arms, one variable (document_format), same underlying facts (a fictional product's PRD — "OnboardIQ," an AI-powered employee onboarding tool):

Models tested. Claude Sonnet 5 and Claude Haiku 4.5 (full cross with all three arms).

The test-case set

Content/task set. A single PRD document (OnboardIQ) rendered in all three formats, tested against 7 questions spanning simple lookup, audience-tailored synthesis, cross-section synthesis, precise ID extraction, numeric retrieval, a faithfulness/hallucination trap, and open reasoning.

IDTypeDescription
Q1simple_lookupSecurity/compliance requirements
Q2audience_synthesisLaunch prerequisites, tailored for a Customer Success audience
Q3cross_section_synthesisTop 3 risks and their KPI linkages
Q4precise_extractionP0 requirement IDs
Q5numeric_retrievalTime-to-productivity KPI target vs. baseline
Q6faithfulness_checkWhether a mobile app is specified (it is not — a hallucination trap)
Q7open_reasoningWhich persona is most underserved, and why

Quality rubric. The 5-criterion blind rubric from evaluation_framework.md (correctness, completeness, groundedness, audience fit, conciseness), no domain-specific substitutions.

Cost formula. Not measured this flight — see the execution path below.

Hypotheses
Execution path & scope limits, known going in

Execution path used. Claude Code's Agent tool (fallback path per execution_playbook.md, §2) — no raw API key was available in this session. This means: no clean input/output token split (only a blended total_tokens figure, dominated by ~17-23k tokens of fixed subagent overhead per call), no real dollar cost (blank throughout — computing one from the blended total would be misleading), and latency includes orchestration time, not raw model inference.

Known scope limitations going in. 1 repetition per cell (not multiple reps) — reps were cut from an original larger design to fit the execution environment's realistic call volume, per execution_playbook.md's documented pattern from this same flight. Findings are therefore directional/exploratory, not statistically significant.

Why this is in the design, not the footnotes. Naming what the execution path would distort — before running it — is what separates a limitation from an excuse written after the numbers came back.
Run metadata