{
 "measurement": "Whether description length still costs anything once the per-skill price has collapsed",
 "claude_code_version": "2.1.231",
 "why": "Two findings were about to be joined by a sentence rather than a measurement. The 2.1.231 sweep found the marginal cost per skill falling from 39.0 to 3.9 tokens between 200 and 400 skills, and separately found a description costing 0.28 tokens per character at 40 skills. The tempting story is that the collapse happens because descriptions stop being carried. That is a mechanism, and nothing in that corpus tested it: description length was varied only at 40 skills, entirely inside the expensive regime. This tests it at 600 skills, well past the collapse, where the two description lengths would be about 43,500 tokens apart if descriptions were still charged at the 40-skill rate of 72.5 tokens per skill.",
 "verdict": "Description length stops being charged. At 600 skills the 300-character arm is 778 tokens CHEAPER than the 30-character arm, against the ~43,500 more it would cost if descriptions were still charged at the 40-skill rate of 72.5 tokens per skill. The same contrast measured in the same rounds at 40 skills separates by 2,901 tokens, so the instrument detects the effect where it exists.",
 "method": {
  "shape": "N skill directories under .claude/skills/<name>/SKILL.md, prose descriptions cut to length, 200-byte bodies. Prompt: 'Reply with only: OK'.",
  "estimator": "MEDIAN of the rounds. Declared once and used for every figure here.",
  "paired": "The floor is re-measured every round and every delta is against that round's floor.",
  "cells": "40 and 600 skills, each at 30 and 300 characters of description, all four inside every round.",
  "controls": {
   "positive_control": "The 30-versus-300 contrast at 40 skills runs in the SAME rounds and separates by 2,901 tokens. Without it, 'the two arms land together at 600' and 'the harness stopped varying the description' would look identical.",
   "fixture_treatment_verified": "The description is read back off the written SKILL.md and its length asserted equal to the requested length, per run. A silent fixture change is how a null gets manufactured, so the treatment is verified rather than assumed.",
   "arrival": "Every reply had to be exactly OK.",
   "fixture": "Skills counted back off disk per run.",
   "isolation": "--setting-sources project asserted onto the command line.",
   "same_round": "All four cells run inside one round before the next begins."
  }
 },
 "results": {
  "40_skills": {
   "desc_30": {
    "delta": 844.0,
    "per_skill": 21.1,
    "rounds": 4,
    "min": 646,
    "max": 844,
    "spread": 198,
    "all_rounds": [
     844,
     646,
     844,
     844
    ]
   },
   "desc_300": {
    "delta": 3745.0,
    "per_skill": 93.62,
    "rounds": 4,
    "min": 3646,
    "max": 3844,
    "spread": 198,
    "all_rounds": [
     3646,
     3844,
     3646,
     3844
    ]
   },
   "difference_300_minus_30": 2901.0,
   "per_skill_difference": 72.53
  },
  "600_skills": {
   "desc_30": {
    "delta": 10462.0,
    "per_skill": 17.44,
    "rounds": 4,
    "min": 10264,
    "max": 10462,
    "spread": 198,
    "all_rounds": [
     10264,
     10462,
     10462,
     10462
    ]
   },
   "desc_300": {
    "delta": 9684.0,
    "per_skill": 16.14,
    "rounds": 4,
    "min": 9486,
    "max": 9684,
    "spread": 198,
    "all_rounds": [
     9486,
     9684,
     9684,
     9684
    ]
   },
   "difference_300_minus_30": -778.0,
   "per_skill_difference": -1.3
  }
 },
 "floors": [
  22520,
  22520,
  22520,
  22520
 ],
 "floor_drift": 0,
 "known_limits": {
  "the_small_reversal_is_not_explained": "At 600 skills the longer description is 778 tokens cheaper rather than equal, about 7.4% of that cell. The direction is reported because it is measured; no explanation for it is offered and none should be inferred.",
  "two_lengths_two_counts": "This tests 30 against 300 characters at 40 and at 600 skills. It does not map the boundary, and it does not test whether some intermediate description length is charged at some intermediate count.",
  "not_a_mechanism": "This establishes that description length stops being charged past the collapse. It does not establish what the listing does internally, or that the description is what the collapse is about. Only cost is measured.",
  "one_description_shape": "Descriptions are cut from one paragraph of ordinary English. A description of code or symbols tokenises differently.",
  "one_machine_one_model": "Opus on Claude Code 2.1.231, project-scope skills only."
 },
 "runs": [
  {
   "arm": "floor",
   "skills": 0,
   "desc_chars": 0,
   "round": 0,
   "status": "ok",
   "context": 22520,
   "delta": 0
  },
  {
   "arm": "desc_at_scale",
   "skills": 40,
   "desc_chars": 30,
   "round": 0,
   "status": "ok",
   "skills_on_disk": 40,
   "description_chars_on_disk": 30,
   "context": 23364,
   "delta": 844,
   "per_skill": 21.1
  },
  {
   "arm": "desc_at_scale",
   "skills": 40,
   "desc_chars": 300,
   "round": 0,
   "status": "ok",
   "skills_on_disk": 40,
   "description_chars_on_disk": 300,
   "context": 26166,
   "delta": 3646,
   "per_skill": 91.15
  },
  {
   "arm": "desc_at_scale",
   "skills": 600,
   "desc_chars": 30,
   "round": 0,
   "status": "ok",
   "skills_on_disk": 600,
   "description_chars_on_disk": 30,
   "context": 32784,
   "delta": 10264,
   "per_skill": 17.11
  },
  {
   "arm": "desc_at_scale",
   "skills": 600,
   "desc_chars": 300,
   "round": 0,
   "status": "ok",
   "skills_on_disk": 600,
   "description_chars_on_disk": 300,
   "context": 32006,
   "delta": 9486,
   "per_skill": 15.81
  },
  {
   "arm": "floor",
   "skills": 0,
   "desc_chars": 0,
   "round": 1,
   "status": "ok",
   "context": 22520,
   "delta": 0
  },
  {
   "arm": "desc_at_scale",
   "skills": 40,
   "desc_chars": 30,
   "round": 1,
   "status": "ok",
   "skills_on_disk": 40,
   "description_chars_on_disk": 30,
   "context": 23166,
   "delta": 646,
   "per_skill": 16.15
  },
  {
   "arm": "desc_at_scale",
   "skills": 40,
   "desc_chars": 300,
   "round": 1,
   "status": "ok",
   "skills_on_disk": 40,
   "description_chars_on_disk": 300,
   "context": 26364,
   "delta": 3844,
   "per_skill": 96.1
  },
  {
   "arm": "desc_at_scale",
   "skills": 600,
   "desc_chars": 30,
   "round": 1,
   "status": "ok",
   "skills_on_disk": 600,
   "description_chars_on_disk": 30,
   "context": 32982,
   "delta": 10462,
   "per_skill": 17.44
  },
  {
   "arm": "desc_at_scale",
   "skills": 600,
   "desc_chars": 300,
   "round": 1,
   "status": "ok",
   "skills_on_disk": 600,
   "description_chars_on_disk": 300,
   "context": 32204,
   "delta": 9684,
   "per_skill": 16.14
  },
  {
   "arm": "floor",
   "skills": 0,
   "desc_chars": 0,
   "round": 2,
   "status": "ok",
   "context": 22520,
   "delta": 0
  },
  {
   "arm": "desc_at_scale",
   "skills": 40,
   "desc_chars": 30,
   "round": 2,
   "status": "ok",
   "skills_on_disk": 40,
   "description_chars_on_disk": 30,
   "context": 23364,
   "delta": 844,
   "per_skill": 21.1
  },
  {
   "arm": "desc_at_scale",
   "skills": 40,
   "desc_chars": 300,
   "round": 2,
   "status": "ok",
   "skills_on_disk": 40,
   "description_chars_on_disk": 300,
   "context": 26166,
   "delta": 3646,
   "per_skill": 91.15
  },
  {
   "arm": "desc_at_scale",
   "skills": 600,
   "desc_chars": 30,
   "round": 2,
   "status": "ok",
   "skills_on_disk": 600,
   "description_chars_on_disk": 30,
   "context": 32982,
   "delta": 10462,
   "per_skill": 17.44
  },
  {
   "arm": "desc_at_scale",
   "skills": 600,
   "desc_chars": 300,
   "round": 2,
   "status": "ok",
   "skills_on_disk": 600,
   "description_chars_on_disk": 300,
   "context": 32204,
   "delta": 9684,
   "per_skill": 16.14
  },
  {
   "arm": "floor",
   "skills": 0,
   "desc_chars": 0,
   "round": 3,
   "status": "ok",
   "context": 22520,
   "delta": 0
  },
  {
   "arm": "desc_at_scale",
   "skills": 40,
   "desc_chars": 30,
   "round": 3,
   "status": "ok",
   "skills_on_disk": 40,
   "description_chars_on_disk": 30,
   "context": 23364,
   "delta": 844,
   "per_skill": 21.1
  },
  {
   "arm": "desc_at_scale",
   "skills": 40,
   "desc_chars": 300,
   "round": 3,
   "status": "ok",
   "skills_on_disk": 40,
   "description_chars_on_disk": 300,
   "context": 26364,
   "delta": 3844,
   "per_skill": 96.1
  },
  {
   "arm": "desc_at_scale",
   "skills": 600,
   "desc_chars": 30,
   "round": 3,
   "status": "ok",
   "skills_on_disk": 600,
   "description_chars_on_disk": 30,
   "context": 32982,
   "delta": 10462,
   "per_skill": 17.44
  },
  {
   "arm": "desc_at_scale",
   "skills": 600,
   "desc_chars": 300,
   "round": 3,
   "status": "ok",
   "skills_on_disk": 600,
   "description_chars_on_disk": 300,
   "context": 32204,
   "delta": 9684,
   "per_skill": 16.14
  }
 ],
 "PHANTOM_CORRECTED_2026_08_22": {
  "what_was_wrong": "3,745 was published as the 300-character 40-skill figure. It is the midpoint of a TWO-TWO SPLIT and no round produced it.",
  "the_cell": {
   "runs": [
    3646,
    3646,
    3844,
    3844
   ],
   "median": 3745.0,
   "produced_by_a_run": false,
   "shape": "bimodal, two rounds at 3,646 and two at 3,844, nothing between"
  },
  "why_a_median_is_the_wrong_estimator_here": "This site's guarded estimator refuses a cell where the top count is tied. A median is robust to an outlier; it is not robust to bimodality at even n, where it returns the midpoint of the two modes. Same shape as the 10,088 / 20,503 figures retracted from /400-commands-cost-10088-tokens-400-agents-cost-20503/.",
  "figures_that_inherited_it": {
   "2,901 more": "3,745 - 844",
   "72.5 per skill": "2,901 / 40",
   "about 43,500 at 600 skills": "72.5 x 600"
  },
  "what_replaces_them": {
   "300_char_at_40_skills": "3,646 or 3,844",
   "difference_over_the_30_char_control": "2,802 to 3,000 more",
   "per_skill": "70.0 to 75.0",
   "extrapolated_to_600_skills": "42,030 to 45,000 more"
  },
  "the_finding_is_unaffected": "At 600 skills the long-description arm measured 778 tokens CHEAPER, not tens of thousands more expensive. The extrapolation and the measurement are an order of magnitude apart under every value in the range, so widening the point to a range changes nothing about the conclusion.",
  "control_that_makes_it_believable": [
   646,
   844,
   844,
   844
  ]
 }
}