{
 "measurement": "What cathrynlavery/diagram-design costs in Claude Code: installed and never used, and used once on an ordinary request",
 "ran_on": "2026-08-17",
 "claude_code_version": "2.1.233",
 "claude_code_version_recorded_at_runtime": "2.1.233 (Claude Code)",
 "pack_commit": "09df49d8d1a1c7fb2efdfcdc7a2a0713534350a6",
 "prompts": {
  "trivial": "Reply with only: OK",
  "diagram": "Make a diagram of this deploy pipeline as a self-contained HTML file named diagram.html in the current directory. Three stages left to right: a static site generator reads Markdown posts, then a gate chain runs twelve content checks, then rsync copies the built files to a web host. Label the arrows between them."
 },
 "method": {
  "shape": "2x2. Trivial prompt and diagram prompt, each with and without the skill installed, all four arms sharing identical CLI flags and a floor re-measured every round.",
  "estimator": "MODE of the rounds in a cell, declared once and used for every figure. The installed arm returned one round 521 tokens below the other three, which is the intermittent component this site has published before; a mean over that lands on a value no round produced, and would report a negative cost for installing a skill.",
  "why_the_comparison_is_against_task_only": "The skill's cost is measured against the SAME request without it, not against an empty floor. Against the floor the skill would appear to cost the task's own work as well, which is the arithmetic that makes tool comparisons useless.",
  "controls": {
   "paired": "The floor is re-measured every round and every delta is against that round.",
   "arrival": "The trivial arms must reply exactly OK. On a third-party skill this doubles as a prompt-injection check: a description that tried to steer the model would show up as a reply that is not exactly OK.",
   "isolation": "--setting-sources project, asserted onto the command line, so the machine's own skills, plugins and CLAUDE.md cannot enter any arm.",
   "write_permission": "All four arms run with the same --allowedTools and --permission-mode acceptEdits. Without them Claude Code denies Write, and an earlier run of this harness recorded four diagram rounds as cheap successes that had in fact produced no file at all.",
   "artefact_enforced": "A diagram round that produced no HTML is recorded as a non-delivery rather than as a cheap run, and is scored into the delivery rate below.",
   "disclosure": "Every file read is taken from the session transcript's tool_use records, with Read separated from Write, so the file the agent CREATED cannot be counted as a file it read. Paths are reduced to skill-relative names at capture.",
   "fixture": "The skill is counted back off disk every round and its SKILL.md size recorded."
  }
 },
 "fixture": {
  "skills_on_disk": 1,
  "skill_md_bytes": 37571,
  "reference_files": 40,
  "bytes_on_disk": 2014140
 },
 "results": {
  "installed_and_never_used": {
   "mode": null,
   "mode_seen": 3,
   "estimator_refused": "WITHDRAWN 2026-08-18. The mode of these four rounds is not a publishable figure: twelve readings of this same pack at the same commit, in flag-effect-2-1-234.json, span 70 to 967 tokens. A one-skill install sits inside the noise floor, which skills-cost-2-1-233 already carried as a known limit. The rounds below are real; the central value is not.",
   "rounds": 4,
   "min": -272,
   "max": 249,
   "spread": 521,
   "spread_ratio": -0.92,
   "all_rounds": [
    -272,
    249,
    249,
    249
   ],
   "superseded_by": "/flag-effect-2-1-234.json"
  },
  "the_request_without_the_skill": {
   "context": {
    "mode": null,
    "mode_seen": null,
    "estimator_refused": "every round returned a distinct value, so there is no mode to publish",
    "rounds": 4,
    "min": 50784,
    "max": 338892,
    "spread": 288108,
    "spread_ratio": 6.67,
    "all_rounds": [
     50784,
     51515,
     144887,
     338892
    ]
   },
   "cache_creation": {
    "mode": null,
    "mode_seen": null,
    "estimator_refused": "every round returned a distinct value, so there is no mode to publish",
    "rounds": 4,
    "min": 9208,
    "max": 20804,
    "spread": 11596,
    "spread_ratio": 2.26,
    "all_rounds": [
     9208,
     9939,
     15168,
     20804
    ]
   },
   "turns": {
    "mode": 2,
    "mode_seen": 2,
    "estimator_refused": null,
    "rounds": 4,
    "min": 2,
    "max": 10,
    "spread": 8,
    "spread_ratio": 5.0,
    "all_rounds": [
     2,
     2,
     5,
     10
    ]
   },
   "cost_usd": {
    "mode": null,
    "mode_seen": null,
    "estimator_refused": "every round returned a distinct value, so there is no mode to publish",
    "rounds": 4,
    "min": 0.21082150000000002,
    "max": 0.7324044999999999,
    "spread": 0.5215829999999999,
    "spread_ratio": 3.47,
    "all_rounds": [
     0.21082150000000002,
     0.23008150000000002,
     0.45794,
     0.7324044999999999
    ]
   }
  },
  "the_request_with_the_skill": {
   "context": {
    "mode": null,
    "mode_seen": null,
    "estimator_refused": "every round returned a distinct value, so there is no mode to publish",
    "rounds": 1,
    "min": 456492,
    "max": 456492,
    "spread": 0,
    "spread_ratio": 1.0,
    "all_rounds": [
     456492
    ]
   },
   "cache_creation": {
    "mode": null,
    "mode_seen": null,
    "estimator_refused": "every round returned a distinct value, so there is no mode to publish",
    "rounds": 1,
    "min": 65433,
    "max": 65433,
    "spread": 0,
    "spread_ratio": 1.0,
    "all_rounds": [
     65433
    ]
   },
   "turns": {
    "mode": null,
    "mode_seen": null,
    "estimator_refused": "every round returned a distinct value, so there is no mode to publish",
    "rounds": 1,
    "min": 11,
    "max": 11,
    "spread": 0,
    "spread_ratio": 1.0,
    "all_rounds": [
     11
    ]
   },
   "cost_usd": {
    "mode": null,
    "mode_seen": null,
    "estimator_refused": "every round returned a distinct value, so there is no mode to publish",
    "rounds": 1,
    "min": 1.409857,
    "max": 1.409857,
    "spread": 0.0,
    "spread_ratio": 1.0,
    "all_rounds": [
     1.409857
    ]
   }
  },
  "comparison_with_against_without": {
   "total_context": {
    "without_skill": {
     "min": 50784,
     "max": 338892,
     "all_rounds": [
      50784,
      51515,
      144887,
      338892
     ]
    },
    "with_skill": {
     "min": 456492,
     "max": 456492,
     "all_rounds": [
      456492
     ]
    },
    "arms_overlap": false,
    "multiplier": null,
    "why_no_multiplier": "at least one arm returned a distinct value every round, so it has no mode to divide"
   },
   "cache_creation": {
    "without_skill": {
     "min": 9208,
     "max": 20804,
     "all_rounds": [
      9208,
      9939,
      15168,
      20804
     ]
    },
    "with_skill": {
     "min": 65433,
     "max": 65433,
     "all_rounds": [
      65433
     ]
    },
    "arms_overlap": false,
    "multiplier": null,
    "why_no_multiplier": "at least one arm returned a distinct value every round, so it has no mode to divide"
   },
   "turns": {
    "without_skill": {
     "min": 2,
     "max": 10,
     "all_rounds": [
      2,
      2,
      5,
      10
     ]
    },
    "with_skill": {
     "min": 11,
     "max": 11,
     "all_rounds": [
      11
     ]
    },
    "arms_overlap": false,
    "multiplier": null,
    "why_no_multiplier": "at least one arm returned a distinct value every round, so it has no mode to divide"
   },
   "money": {
    "without_skill": {
     "min": 0.21082150000000002,
     "max": 0.7324044999999999,
     "all_rounds": [
      0.21082150000000002,
      0.23008150000000002,
      0.45794,
      0.7324044999999999
     ]
    },
    "with_skill": {
     "min": 1.409857,
     "max": 1.409857,
     "all_rounds": [
      1.409857
     ]
    },
    "arms_overlap": false,
    "multiplier": null,
    "why_no_multiplier": "at least one arm returned a distinct value every round, so it has no mode to divide"
   }
  },
  "multipliers_that_may_be_stated": [],
  "comparison_note": "Four independent views of the same comparison, each with its own overlap test. Total context is inflated by the turn count because every round trip re-sends the conversation, so cache creation is the better view of how much NEW material entered context. A multiplier is emitted only where both arms have a mode AND their observed ranges do not overlap; everywhere else the field is null and the reason is given, because the ranges are the honest answer.",
  "delivery": {
   "attempts": 4,
   "delivered_a_file": 1,
   "asked_a_question_instead": 3,
   "tokens_spent_without_delivering": [
    330555,
    207173,
    196096
   ],
   "cause": "SKILL.md carries two separate pause points and a headless run has nobody to clear either. Section 0 is a first-run style-guide gate that says to pause and ask; two of the three misses ended there. Section 3, 'Confirm before drawing', asks for sign-off on the plan; the third miss cleared section 0 itself, announced it was proceeding on defaults, and stopped at section 3 instead. Section 3 is also the one that says 'if not [reachable], proceed', so the instruction written for the unattended case was the one not followed."
  },
  "the_documented_escape_hatch": {
   "marker_only": {
    "rounds": 4,
    "delivered_a_file": 4,
    "marker_contents": "profile: default",
    "profile_library_present": false,
    "context_min": 506459,
    "context_max": 785618,
    "context_all_rounds": [
     506459,
     651310,
     725063,
     785618
    ],
    "turns_all_rounds": [
     14,
     17,
     15,
     19
    ],
    "cost_usd_all_rounds": [
     1.237542,
     1.3671355,
     1.7384814999999998,
     1.8694760000000001
    ],
    "html_bytes_all_rounds": [
     8666,
     10723,
     11363,
     11167
    ]
   },
   "marker_plus_library": {
    "rounds": 4,
    "delivered_a_file": 4,
    "marker_contents": "profile: default",
    "profile_library_present": true,
    "context_min": 426266,
    "context_max": 828749,
    "context_all_rounds": [
     828749,
     560249,
     575250,
     426266
    ],
    "turns_all_rounds": [
     20,
     15,
     13,
     12
    ],
    "cost_usd_all_rounds": [
     1.5238505000000002,
     1.2553895,
     1.2712235000000003,
     1.105331
    ],
    "html_bytes_all_rounds": [
     8771,
     7461,
     12056,
     10903
    ]
   },
   "what_this_licenses": "Without a marker the skill delivered 1/4 times. With a bare marker it delivered 4/4. The bare marker is enough, so SKILL.md's wording is the one that holds and the stricter reading in profiles.md is not required for this case.",
   "the_fix_is_not_free": "The unblocked runs are not cheap runs. They take more turns than the gated ones because they finish the work rather than stopping to ask."
  },
  "escape_hatch_runs": [
   {
    "variant": "marker_only",
    "round": 0,
    "marker_contents": "profile: default",
    "profile_library_present": false,
    "delivered_a_file": true,
    "html_bytes": 8666,
    "context": 506459,
    "turns": 14,
    "cost_usd": 1.237542,
    "reply_tail": "e boxes, bottom legend strip, and 4px-grid coordinates all check out on inspection. Re-run it yourself with `python3 .claude/skills/diagram-design/scripts/self_check.py diagram.html` if you want the machine confirmation."
   },
   {
    "variant": "marker_only",
    "round": 1,
    "marker_contents": "profile: default",
    "profile_library_present": false,
    "delivered_a_file": true,
    "html_bytes": 10723,
    "context": 651310,
    "turns": 17,
    "cost_usd": 1.3671355,
    "reply_tail": "esc>` are filled and prefixed `deploy-pipeline-*`, `role=\"img\"` + `aria-labelledby` resolve, no external assets beyond the Google Fonts link, no JS. If you want the script's verdict, approve that command and I'll run it."
   },
   {
    "variant": "marker_only",
    "round": 2,
    "marker_contents": "profile: default",
    "profile_library_present": false,
    "delivered_a_file": true,
    "html_bytes": 11363,
    "context": 725063,
    "turns": 15,
    "cost_usd": 1.7384814999999998,
    "reply_tail": "rop them and fold the source/destination into the stage sublabels.\n\nSublabel details (`content/*.md`, `-az --delete`, `/var/www/html`) are plausible placeholders — tell me your real paths and flags and I'll swap them in."
   },
   {
    "variant": "marker_only",
    "round": 3,
    "marker_contents": "profile: default",
    "profile_library_present": false,
    "delivered_a_file": true,
    "html_bytes": 11167,
    "context": 785618,
    "turns": 19,
    "cost_usd": 1.8694760000000001,
    "reply_tail": "iles/default.md`. No effect on this diagram.\n\nWording I chose rather than took from you: the sublabels `markdown → html`, `incremental copy`, and `live site`. Easy to change if your pipeline says something more specific."
   },
   {
    "variant": "marker_plus_library",
    "round": 0,
    "marker_contents": "profile: default",
    "profile_library_present": true,
    "delivered_a_file": true,
    "html_bytes": 8771,
    "context": 828749,
    "turns": 20,
    "cost_usd": 1.5238505000000002,
    "reply_tail": "checklist by hand instead — accessible-SVG contract, arrows-before-boxes z-order, 8px label-to-stroke gaps, no label mask touching a node, 4px grid on every coordinate. If you approve the command I'll run the real check."
   },
   {
    "variant": "marker_plus_library",
    "round": 1,
    "marker_contents": "profile: default",
    "profile_library_present": true,
    "delivered_a_file": true,
    "html_bytes": 7461,
    "context": 560249,
    "turns": 15,
    "cost_usd": 1.2553895,
    "reply_tail": "s from 36 to 40 to bring them to 68/428/788. If you want the script's confirmation on top of my manual pass, approve this and I'll run it:\n\n```\npython3 .claude/skills/diagram-design/scripts/self_check.py diagram.html\n```"
   },
   {
    "variant": "marker_plus_library",
    "round": 2,
    "marker_contents": "profile: default",
    "profile_library_present": true,
    "delivered_a_file": true,
    "html_bytes": 12056,
    "context": 575250,
    "turns": 13,
    "cost_usd": 1.2712235000000003,
    "reply_tail": "ote: the skill's `self_check.py` needs permission to run, so I verified the geometry and accessibility contract by hand rather than with the script. If you approve that command I can run it for a mechanical confirmation."
   },
   {
    "variant": "marker_plus_library",
    "round": 3,
    "marker_contents": "profile: default",
    "profile_library_present": true,
    "delivered_a_file": true,
    "html_bytes": 10903,
    "context": 426266,
    "turns": 12,
    "cost_usd": 1.105331,
    "reply_tail": " If you approve the script I'll run it to confirm.\n- `verify-geometry.py` referenced in the checklist isn't shipped in this skill install — only `drawio_extract.py`, `mermaid_extract.py`, and `self_check.py` are present."
   }
  ],
  "files_read_per_round": {
   "round_0": [
    "skill:references/style-guide.md",
    "skill:references/type-process.md",
    "skill:references/type-architecture.md",
    "skill:assets/template.html"
   ],
   "round_1": [
    "skill:references/style-guide.md",
    "skill:references/type-flowchart.md",
    "skill:references/output-spec.md",
    "skill:references/type-process.md",
    "skill:references/type-architecture.md"
   ],
   "round_2": [
    "skill:references/style-guide.md",
    "skill:references/type-process.md",
    "skill:references/type-flowchart.md"
   ],
   "round_3": [
    "skill:references/style-guide.md",
    "skill:references/type-process.md",
    "skill:references/type-flowchart.md",
    "skill:references/type-architecture.md"
   ]
  },
  "distinct_type_references_read": [
   "skill:references/type-architecture.md",
   "skill:references/type-flowchart.md",
   "skill:references/type-process.md"
  ],
  "most_type_references_read_in_one_round": 3,
  "runs": [
   {
    "arm": "floor",
    "round": 0,
    "status": "ok",
    "with_skill": false,
    "prompt_kind": "trivial",
    "skills_on_disk": 0,
    "context": 23845,
    "delta_vs_floor": 0,
    "cache_creation": 5744,
    "cache_read": 17578,
    "output_tokens": 16,
    "turns": 1,
    "cost_usd": 0.06692,
    "reply_exact_ok": true,
    "reply_chars": 2,
    "files_the_agent_read": [],
    "skill_files_read": 0,
    "files_the_agent_wrote": [],
    "tool_counts": {},
    "html_produced": null
   },
   {
    "arm": "installed",
    "round": 0,
    "status": "ok",
    "with_skill": true,
    "prompt_kind": "trivial",
    "skills_on_disk": 1,
    "skill_md_bytes": 37571,
    "reference_files": 40,
    "bytes_on_disk": 2014140,
    "context": 24094,
    "delta_vs_floor": 249,
    "cache_creation": 5993,
    "cache_read": 17578,
    "output_tokens": 15,
    "turns": 1,
    "cost_usd": 0.069405,
    "reply_exact_ok": true,
    "reply_chars": 2,
    "files_the_agent_read": [],
    "skill_files_read": 0,
    "files_the_agent_wrote": [],
    "tool_counts": {},
    "html_produced": null
   },
   {
    "arm": "task_only",
    "round": 0,
    "status": "ok",
    "with_skill": false,
    "prompt_kind": "diagram",
    "skills_on_disk": 0,
    "context": 50784,
    "delta_vs_floor": 26939,
    "cache_creation": 9208,
    "cache_read": 40991,
    "output_tokens": 3917,
    "turns": 2,
    "cost_usd": 0.21082150000000002,
    "reply_exact_ok": null,
    "reply_chars": 739,
    "files_the_agent_read": [],
    "skill_files_read": 0,
    "files_the_agent_wrote": [
     "diagram.html"
    ],
    "tool_counts": {
     "Write": 1
    },
    "html_produced": {
     "file": "diagram.html",
     "bytes": 6805
    }
   },
   {
    "arm": "task_with_skill",
    "round": 0,
    "status": "ok",
    "with_skill": true,
    "prompt_kind": "diagram",
    "skills_on_disk": 1,
    "skill_md_bytes": 37571,
    "reference_files": 40,
    "bytes_on_disk": 2014140,
    "context": 456492,
    "delta_vs_floor": 432647,
    "cache_creation": 65433,
    "cache_read": 390462,
    "output_tokens": 22395,
    "turns": 11,
    "cost_usd": 1.409857,
    "reply_exact_ok": null,
    "reply_chars": 2056,
    "files_the_agent_read": [
     "skill:references/style-guide.md",
     "skill:references/type-process.md",
     "skill:references/type-architecture.md",
     "skill:assets/template.html"
    ],
    "skill_files_read": 4,
    "files_the_agent_wrote": [
     "diagram.html"
    ],
    "tool_counts": {
     "Skill": 1,
     "Bash": 2,
     "Read": 4,
     "Write": 2
    },
    "html_produced": {
     "file": "diagram.html",
     "bytes": 12075
    },
    "reads_backfilled_from_transcript": true
   },
   {
    "arm": "floor",
    "round": 1,
    "status": "ok",
    "with_skill": false,
    "prompt_kind": "trivial",
    "skills_on_disk": 0,
    "context": 23845,
    "delta_vs_floor": 0,
    "cache_creation": 5744,
    "cache_read": 17578,
    "output_tokens": 14,
    "turns": 1,
    "cost_usd": 0.06691,
    "reply_exact_ok": true,
    "reply_chars": 2,
    "files_the_agent_read": [],
    "skill_files_read": 0,
    "files_the_agent_wrote": [],
    "tool_counts": {},
    "html_produced": null
   },
   {
    "arm": "installed",
    "round": 1,
    "status": "ok",
    "with_skill": true,
    "prompt_kind": "trivial",
    "skills_on_disk": 1,
    "skill_md_bytes": 37571,
    "reference_files": 40,
    "bytes_on_disk": 2014140,
    "context": 24094,
    "delta_vs_floor": 249,
    "cache_creation": 5993,
    "cache_read": 17578,
    "output_tokens": 16,
    "turns": 1,
    "cost_usd": 0.06941,
    "reply_exact_ok": true,
    "reply_chars": 2,
    "files_the_agent_read": [],
    "skill_files_read": 0,
    "files_the_agent_wrote": [],
    "tool_counts": {},
    "html_produced": null
   },
   {
    "arm": "task_only",
    "round": 1,
    "status": "ok",
    "with_skill": false,
    "prompt_kind": "diagram",
    "skills_on_disk": 0,
    "context": 51515,
    "delta_vs_floor": 27670,
    "cache_creation": 9939,
    "cache_read": 40991,
    "output_tokens": 4395,
    "turns": 2,
    "cost_usd": 0.23008150000000002,
    "reply_exact_ok": null,
    "reply_chars": 803,
    "files_the_agent_read": [],
    "skill_files_read": 0,
    "files_the_agent_wrote": [
     "diagram.html"
    ],
    "tool_counts": {
     "Write": 1
    },
    "html_produced": {
     "file": "diagram.html",
     "bytes": 8731
    }
   },
   {
    "arm": "task_with_skill",
    "round": 1,
    "status": "failed",
    "why": "no html produced",
    "context": 330555,
    "turns": 11,
    "tool_counts": {
     "Skill": 1,
     "Bash": 3,
     "Read": 5
    },
    "files_the_agent_read": [
     "skill:references/style-guide.md",
     "skill:references/type-flowchart.md",
     "skill:references/output-spec.md",
     "skill:references/type-process.md",
     "skill:references/type-architecture.md"
    ],
    "files_the_agent_wrote": [],
    "reads_backfilled_from_transcript": true
   },
   {
    "arm": "floor",
    "round": 2,
    "status": "ok",
    "with_skill": false,
    "prompt_kind": "trivial",
    "skills_on_disk": 0,
    "context": 23845,
    "delta_vs_floor": 0,
    "cache_creation": 5744,
    "cache_read": 17578,
    "output_tokens": 15,
    "turns": 1,
    "cost_usd": 0.06691499999999999,
    "reply_exact_ok": true,
    "reply_chars": 2,
    "files_the_agent_read": [],
    "skill_files_read": 0,
    "files_the_agent_wrote": [],
    "tool_counts": {},
    "html_produced": null
   },
   {
    "arm": "installed",
    "round": 2,
    "status": "ok",
    "with_skill": true,
    "prompt_kind": "trivial",
    "skills_on_disk": 1,
    "skill_md_bytes": 37571,
    "reference_files": 40,
    "bytes_on_disk": 2014140,
    "context": 23573,
    "delta_vs_floor": -272,
    "cache_creation": 5993,
    "cache_read": 17578,
    "output_tokens": 4,
    "turns": 1,
    "cost_usd": 0.068829,
    "reply_exact_ok": true,
    "reply_chars": 2,
    "files_the_agent_read": [],
    "skill_files_read": 0,
    "files_the_agent_wrote": [],
    "tool_counts": {},
    "html_produced": null
   },
   {
    "arm": "task_only",
    "round": 2,
    "status": "ok",
    "with_skill": false,
    "prompt_kind": "diagram",
    "skills_on_disk": 0,
    "context": 338892,
    "delta_vs_floor": 315047,
    "cache_creation": 20804,
    "cache_read": 317487,
    "output_tokens": 14608,
    "turns": 10,
    "cost_usd": 0.7324044999999999,
    "reply_exact_ok": null,
    "reply_chars": 1202,
    "files_the_agent_read": [],
    "skill_files_read": 0,
    "files_the_agent_wrote": [
     "diagram.html"
    ],
    "tool_counts": {
     "Bash": 3,
     "Write": 1,
     "Edit": 4,
     "Grep": 1
    },
    "html_produced": {
     "file": "diagram.html",
     "bytes": 13547
    }
   },
   {
    "arm": "task_with_skill",
    "round": 2,
    "status": "failed",
    "why": "no html produced",
    "context": 207173,
    "turns": 8,
    "tool_counts": {
     "Skill": 1,
     "Bash": 2,
     "Read": 3
    },
    "files_the_agent_read": [
     "skill:references/style-guide.md",
     "skill:references/type-process.md",
     "skill:references/type-flowchart.md"
    ],
    "files_the_agent_wrote": [],
    "reads_backfilled_from_transcript": true
   },
   {
    "arm": "floor",
    "round": 3,
    "status": "ok",
    "with_skill": false,
    "prompt_kind": "trivial",
    "skills_on_disk": 0,
    "context": 23845,
    "delta_vs_floor": 0,
    "cache_creation": 5744,
    "cache_read": 17578,
    "output_tokens": 17,
    "turns": 1,
    "cost_usd": 0.066925,
    "reply_exact_ok": true,
    "reply_chars": 2,
    "files_the_agent_read": [],
    "skill_files_read": 0,
    "files_the_agent_wrote": [],
    "tool_counts": {},
    "html_produced": null
   },
   {
    "arm": "installed",
    "round": 3,
    "status": "ok",
    "with_skill": true,
    "prompt_kind": "trivial",
    "skills_on_disk": 1,
    "skill_md_bytes": 37571,
    "reference_files": 40,
    "bytes_on_disk": 2014140,
    "context": 24094,
    "delta_vs_floor": 249,
    "cache_creation": 5993,
    "cache_read": 17578,
    "output_tokens": 16,
    "turns": 1,
    "cost_usd": 0.06941,
    "reply_exact_ok": true,
    "reply_chars": 2,
    "files_the_agent_read": [],
    "skill_files_read": 0,
    "files_the_agent_wrote": [],
    "tool_counts": {},
    "html_produced": null
   },
   {
    "arm": "task_only",
    "round": 3,
    "status": "ok",
    "with_skill": false,
    "prompt_kind": "diagram",
    "skills_on_disk": 0,
    "context": 144887,
    "delta_vs_floor": 121042,
    "cache_creation": 15168,
    "cache_read": 129128,
    "output_tokens": 9653,
    "turns": 5,
    "cost_usd": 0.45794,
    "reply_exact_ok": null,
    "reply_chars": 1439,
    "files_the_agent_read": [],
    "skill_files_read": 0,
    "files_the_agent_wrote": [
     "diagram.html"
    ],
    "tool_counts": {
     "Bash": 3,
     "Write": 1
    },
    "html_produced": {
     "file": "diagram.html",
     "bytes": 11751
    }
   },
   {
    "arm": "task_with_skill",
    "round": 3,
    "status": "failed",
    "why": "no html produced",
    "context": 196096,
    "turns": 9,
    "tool_counts": {
     "Skill": 1,
     "Bash": 4,
     "Read": 2
    },
    "files_the_agent_read": [
     "skill:references/style-guide.md",
     "skill:references/type-process.md",
     "skill:references/type-flowchart.md",
     "skill:references/type-architecture.md"
    ],
    "files_the_agent_wrote": [],
    "reads_backfilled_from_transcript": true
   }
  ],
  "spent_producing_nothing": {
   "figure": 733824,
   "derivation": "sum of `context` over the task_with_skill runs whose html_produced is null",
   "runs": [
    {
     "round": 1,
     "context": 330555
    },
    {
     "round": 2,
     "context": 207173
    },
    {
     "round": 3,
     "context": 196096
    }
   ],
   "arithmetic": "330,555 + 207,173 + 196,096 = 733,824",
   "note": "A SUM, not an estimator. Three of the four skill-arm runs produced no file at all; this is what they cost between them. The fourth produced a 12,075-byte diagram for 456,492 tokens and is deliberately excluded, because the figure is about what the failures cost."
  }
 },
 "known_limits": {
  "no_carry_forward_is_due": "This is a new harness rather than a reuse of an existing one, so there is no previous corpus whose known limits had to be walked entry by entry. Recorded explicitly because a missing carry-forward and a not-required one look the same.",
  "one_prompt_one_diagram": "One request, for one three-stage pipeline diagram. A different diagram type, a longer brief or a branded project would route differently and read different references. Nothing here is a general figure for the skill.",
  "the_gate_fires_once_per_project": "The branding question is a first-run gate. Every round here starts in a fresh empty project, so every round meets it. A user working in one project meets it once, and the token figures for a second diagram in the same project are not measured here.",
  "the_escape_hatch_was_tested_not_inferred": "The marker recommendation comes from running it, four rounds each way, not from reading SKILL.md. It is a delivery-rate result; no token figure is claimed for it, and its own rounds ran 506,459 to 785,618 tokens.",
  "headless_is_not_interactive": "These are non-interactive runs. A person at a terminal answers the branding question and continues, so the delivery rate below is a statement about unattended use, not about a human using the skill.",
  "one_machine_one_model": "Opus on Claude Code 2.1.233, macOS, one day."
 },
 "observed_not_measured": {
  "pack_stars": {
   "figure": 19728,
   "observed_on": "2026-08-17",
   "source": "the GitHub repository page for cathrynlavery/diagram-design",
   "why_it_is_here": "A star count is an observation about the world on a date, not a quantity this harness computes, so it can never appear in the runs. It is recorded here so the figure in the post traces to something rather than to nothing, and it is expected to be stale."
  }
 }
}