{
 "measurement": "Does a large CLAUDE.md degrade adherence to the rules inside it",
 "claude_code_version": "2.1.229",
 "auth": "Claude subscription, Opus. No ANTHROPIC_API_KEY in the environment.",
 "claim_under_test": "The circulating advice is 'keep CLAUDE.md under about 150 rules, because past 150 to 200 instructions a model follows all of them worse'. The NUMBER has a real primary source: IFScale (arXiv 2507.11538, Jaroslawicz, Whiting, Shah and Maamari, 15 July 2025), 'a simple benchmark of 500 keyword-inclusion instructions', reporting that 'even the best frontier models only achieve 68% accuracy at the max density of 500 instructions', three degradation patterns and a bias towards earlier instructions. IMPORTANT: IFScale scores EVERY instruction simultaneously on a business-report writing task. A CLAUDE.md is not that shape. This corpus does NOT test IFScale's claim; it tests whether the ADVICE derived from it holds when most rules in the file are irrelevant to the task in hand.",
 "what_the_github_issues_actually_report": "Issues #57200 and #46984 are frequently cited alongside this advice and report a DIFFERENT failure. #57200 describes rules loaded at session start and then violated mid-session, naming compression amnesia and a recurring behavioural regression. #46984 lists NINE permanent instructions being ignored, far below any claimed ceiling. Verified by reading both issues in full via the GitHub API: neither contains 'adding more rules', '200 instructions', 'reasonable consistency', 'instruction count' or 'ceiling', and neither makes any claim about instruction COUNT. Persistence and conflict are not what this corpus measures.",
 "a_first_version_of_this_corpus_was_discarded": "The first build laddered 2/10/50/150/300/500 but its filler generator cycled a 20-item list and varied only the 'Rule N:' prefix, so every arm above 50 held 22 DISTINCT instructions. A 500-line file was 22 rules. That ladder never reached the ceiling it claimed to pass, and instruction diversity is exactly the axis IFScale scales (it dedups its vocabulary with WordNet lemmatisation and embedding-based pruning). An adversarial pass caught it and the corpus was rebuilt with genuinely distinct rules. Every run now publishes claude_md_distinct_rules and ladder_scales_distinct_rules, and distinct equals nominal in 35 of 35 runs.",
 "method": {
  "shape": "One small task per run: write module.py with exactly three trivial Python functions. The project CLAUDE.md carries two objectively checkable target rules and a variable number of distinct, non-conflicting filler rules between them.",
  "target_rules": {
   "top": "Function names must begin with svc_. Placed FIRST in every rule-bearing arm.",
   "bottom": "Every function must carry a one-line docstring whose first word is exactly 'Handles'. Placed LAST, so it is the rule buried under all the fillers."
  },
  "filler_design": "Following IFScale's own shape, a few instruction PATTERNS instantiated with distinct content, so every line is a different instruction. They name functions, modules and classes the model would never reach for on a three-function exercise, so they cannot conflict with the targets.",
  "ladder": "0 (negative control), 2, 10, 50, 150, 300, 500 DISTINCT rules. The ladder runs past the claimed 150-200 ceiling deliberately.",
  "scoring": "Regex against the file the model actually wrote, not a judgement.",
  "basis": "Every figure is a COUNT over all scored runs in an arm. No medians, no means.",
  "controls": {
   "negative_control": "An arm whose CLAUDE.md has the same shape and 10 filler rules but NEITHER target rule. It scored 0 of 15 on both targets, writing add / reverse_string / list_length.",
   "ladder_integrity": "claude_md_distinct_rules is computed per run by stripping the 'Rule N:' numbering and counting unique sentences, and ladder_scales_distinct_rules asserts it equals the line count. True in 35 of 35 runs. This control exists because its absence voided the first corpus.",
   "arrival": "Each run must define exactly the three requested functions. 35 of 35 did.",
   "file_on_disk": "The CLAUDE.md is read back off disk per run, its rules counted and its distinct rules counted.",
   "rule_position": "target_rule_is_first asserted true in every rule-bearing run, so only COUNT varies.",
   "isolation": "--setting-sources project on every call, asserted onto the command line. That same flag loads the project CLAUDE.md, so treatment and isolation arrive together.",
   "order_rotation": "Arm order rotates each round.",
   "no_exclusions": "All 35 runs are scored."
  }
 },
 "known_limits": {
  "not_a_refutation_of_ifscale": "IFScale scores every instruction simultaneously on a writing task. Here two rules are scored while the rest of the file is irrelevant to the job. Both results can be true; the difference between the shapes is the point.",
  "the_rules_do_not_conflict": "Fillers are distinct but compatible prohibitions on names the task never needs. Real CLAUDE.md files contain vague, overlapping and sometimes contradictory instructions. This measures rule COUNT, not rule CONFLICT.",
  "mechanical_rules_not_judgement_rules": "Both targets are regex-checkable. 'Write clean code' is not tested.",
  "one_small_task_one_turn": "Three trivial functions, single turn. Does not test mid-session decay, which is what #57200 reports.",
  "fillers_are_narrow_in_form": "The fillers are prohibitions on identifiers and imports. A file of rules that all demand positive action on the task in hand might behave differently.",
  "one_model_one_version": "Opus on Claude Code 2.1.229."
 },
 "claude_md_files": {
  "0": "# Project rules\n\n## Style\n\n- Rule 1: Never name a function `legacy_alpha`.\n- Rule 2: Do not import a module called `legacy_alpha`.\n- Rule 3: Do not define a class named `LegacyAlpha`.\n- Rule 4: Never name a function `legacy_bravo`.\n- Rule 5: Do not import a module called `legacy_bravo`.\n- Rule 6: Do not define a class named `LegacyBravo`.\n- Rule 7: Never name a function `legacy_charlie`.\n- Rule 8: Do not import a module called `legacy_charlie`.\n- Rule 9: Do not define a class named `LegacyCharlie`.\n- Rule 10: Never name a function `legacy_delta`.\n",
  "2": "# Project rules\n\n## Naming\n\n- Every Python function you define must have a name beginning with `svc_`. This applies to every function without exception.\n\n## Documentation\n\n- Every Python function you define must have a one-line docstring whose first word is exactly \"Handles\".\n",
  "10": "# Project rules\n\n## Naming\n\n- Every Python function you define must have a name beginning with `svc_`. This applies to every function without exception.\n\n## Style\n\n- Rule 2: Never name a function `legacy_alpha`.\n- Rule 3: Do not import a module called `legacy_alpha`.\n- Rule 4: Do not define a class named `LegacyAlpha`.\n- Rule 5: Never name a function `legacy_bravo`.\n- Rule 6: Do not import a module called `legacy_bravo`.\n- Rule 7: Do not define a class named `LegacyBravo`.\n- Rule 8: Never name a function `legacy_charlie`.\n- Rule 9: Do not import a module called `legacy_charlie`.\n\n## Documentation\n\n- Every Python function you define must have a one-line docstring whose first word is exactly \"Handles\".\n",
  "50": "# Project rules\n\n## Naming\n\n- Every Python function you define must have a name beginning with `svc_`. This applies to every function without exception.\n\n## Style\n\n- Rule 2: Never name a function `legacy_alpha`.\n- Rule 3: Do not import a module called `legacy_alpha`.\n- Rule 4: Do not define a class named `LegacyAlpha`.\n- Rule 5: Never name a function `legacy_bravo`.\n- Rule 6: Do not import a module called `legacy_bravo`.\n- Rule 7: Do not define a class named `LegacyBravo`.\n- Rule 8: Never name a function `legacy_charlie`.\n- Rule 9: Do not import a module called `legacy_charlie`.\n- Rule 10: Do not define a class named `LegacyCharlie`.\n- Rule 11: Never name a function `legacy_delta`.\n- Rule 12: Do not import a module called `legacy_delta`.\n- Rule 13: Do not define a class named `LegacyDelta`.\n- Rule 14: Never name a function `legacy_echo`.\n- Rule 15: Do not import a module called `legacy_echo`.\n- Rule 16: Do not define a class named `LegacyEcho`.\n- Rule 17: Never name a function `legacy_foxtrot`.\n- Rule 18: Do not import a module called `legacy_foxtrot`.\n- Rule 19: Do not define a class named `LegacyFoxtrot`.\n- Rule 20: Never name a function `legacy_golf`.\n- Rule 21: Do not import a module called `legacy_golf`.\n- Rule 22: Do not define a class named `LegacyGolf`.\n- Rule 23: Never name a function `legacy_hotel`.\n- Rule 24: Do not import a module called `legacy_hotel`.\n- Rule 25: Do not define a class named `LegacyHotel`.\n- Rule 26: Never name a function `legacy_india`.\n- Rule 27: Do not import a module called `legacy_india`.\n- Rule 28: Do not define a class named `LegacyIndia`.\n- Rule 29: Never name a function `legacy_juliet`.\n- Rule 30: Do not import a module called `legacy_juliet`.\n- Rule 31: Do not define a class named `LegacyJuliet`.\n- Rule 32: Never name a function `legacy_kilo`.\n- Rule 33: Do not import a module called `legacy_kilo`.\n- Rule 34: Do not define a class named `LegacyKilo`.\n- Rule 35: Never name a function `legacy_lima`.\n- Rule 36: Do not import a module called `legacy_lima`.\n- Rule 37: Do not define a class named `LegacyLima`.\n- Rule 38: Never name a function `legacy_mike`.\n- Rule 39: Do not import a module called `legacy_mike`.\n- Rule 40: Do not define a class named `LegacyMike`.\n- Rule 41: Never name a function `legacy_november`.\n- Rule 42: Do not import a module called `legacy_november`.\n- Rule 43: Do not define a class named `LegacyNovember`.\n- Rule 44: Never name a function `legacy_oscar`.\n- Rule 45: Do not import a module called `legacy_oscar`.\n- Rule 46: Do not define a class named `LegacyOscar`.\n- Rule 47: Never name a function `legacy_papa`.\n- Rule 48: Do not import a module called `legacy_papa`.\n- Rule 49: Do not define a class named `LegacyPapa`.\n\n## Documentation\n\n- Every Python function you define must have a one-line docstring whose first word is exactly \"Handles\".\n",
  "150": "# Project rules\n\n## Naming\n\n- Every Python function you define must have a name beginning with `svc_`. This applies to every function without exception.\n\n## Style\n\n- Rule 2: Never name a function `legacy_alpha`.\n- Rule 3: Do not import a module called `legacy_alpha`.\n- Rule 4: Do not define a class named `LegacyAlpha`.\n- Rule 5: Never name a function `legacy_bravo`.\n- Rule 6: Do not import a module called `legacy_bravo`.\n- Rule 7: Do not define a class named `LegacyBravo`.\n- Rule 8: Never name a function `legacy_charlie`.\n- Rule 9: Do not import a module called `legacy_charlie`.\n- Rule 10: Do not define a class named `LegacyCharlie`.\n- Rule 11: Never name a function `legacy_delta`.\n- Rule 12: Do not import a module called `legacy_delta`.\n- Rule 13: Do not define a class named `LegacyDelta`.\n- Rule 14: Never name a function `legacy_echo`.\n- Rule 15: Do not import a module called `legacy_echo`.\n- Rule 16: Do not define a class named `LegacyEcho`.\n- Rule 17: Never name a function `legacy_foxtrot`.\n- Rule 18: Do not import a module called `legacy_foxtrot`.\n- Rule 19: Do not define a class named `LegacyFoxtrot`.\n- Rule 20: Never name a function `legacy_golf`.\n- Rule 21: Do not import a module called `legacy_golf`.\n- Rule 22: Do not define a class named `LegacyGolf`.\n- Rule 23: Never name a function `legacy_hotel`.\n- Rule 24: Do not import a module called `legacy_hotel`.\n- Rule 25: Do not define a class named `LegacyHotel`.\n- Rule 26: Never name a function `legacy_india`.\n- Rule 27: Do not import a module called `legacy_india`.\n- Rule 28: Do not define a class named `LegacyIndia`.\n- Rule 29: Never name a function `legacy_juliet`.\n- Rule 30: Do not import a module called `legacy_juliet`.\n- Rule 31: Do not define a class named `LegacyJuliet`.\n- Rule 32: Never name a function `legacy_kilo`.\n- Rule 33: Do not import a module called `legacy_kilo`.\n- Rule 34: Do not define a class named `LegacyKilo`.\n- Rule 35: Never name a function `legacy_lima`.\n- Rule 36: Do not import a module called `legacy_lima`.\n- Rule 37: Do not define a class named `LegacyLima`.\n- Rule 38: Never name a function `legacy_mike`.\n- Rule 39: Do not import a module called `legacy_mike`.\n- Rule 40: Do not define a class named `LegacyMike`.\n- Rule 41: Never name a function `legacy_november`.\n- Rule 42: Do not import a module called `legacy_november`.\n- Rule 43: Do not define a class named `LegacyNovember`.\n- Rule 44: Never name a function `legacy_oscar`.\n- Rule 45: Do not import a module called `legacy_oscar`.\n- Rule 46: Do not define a class named `LegacyOscar`.\n- Rule 47: Never name a function `legacy_papa`.\n- Rule 48: Do not import a module called `legacy_papa`.\n- Rule 49: Do not define a class named `LegacyPapa`.\n- Rule 50: Never name a function `legacy_quebec`.\n- Rule 51: Do not import a module called `legacy_quebec`.\n- Rule 52: Do not define a class named `LegacyQuebec`.\n- Rule 53: Never name a function `legacy_romeo`.\n- Rule 54: Do not import a module called `legacy_romeo`.\n- Rule 55: Do not define a class named `LegacyRomeo`.\n- Rule 56: Never name a function `legacy_sierra`.\n- Rule 57: Do not import a module called `legacy_sierra`.\n- Rule 58: Do not define a class named `LegacySierra`.\n- Rule 59: Never name a function `legacy_tango`.\n- Rule 60: Do not import a module called `legacy_tango`.\n- Rule 61: Do not define a class named `LegacyTango`.\n- Rule 62: Never name a function `legacy_uniform`.\n- Rule 63: Do not import a module called `legacy_uniform`.\n- Rule 64: Do not define a class named `LegacyUniform`.\n- Rule 65: Never name a function `legacy_victor`.\n- Rule 66: Do not import a module called `legacy_victor`.\n- Rule 67: Do not define a class named `LegacyVictor`.\n- Rule 68: Never name a function `legacy_whiskey`.\n- Rule 69: Do not import a module called `legacy_whiskey`.\n- Rule 70: Do not define a class named `LegacyWhiskey`.\n- Rule 71: Never name a function `legacy_xray`.\n- Rule 72: Do not import a module called `legacy_xray`.\n- Rule 73: Do not define a class named `LegacyXray`.\n- Rule 74: Never name a function `legacy_yankee`.\n- Rule 75: Do not import a module called `legacy_yankee`.\n- Rule 76: Do not define a class named `LegacyYankee`.\n- Rule 77: Never name a function `legacy_zulu`.\n- Rule 78: Do not import a module called `legacy_zulu`.\n- Rule 79: Do not define a class named `LegacyZulu`.\n- Rule 80: Never name a function `legacy_amber`.\n- Rule 81: Do not import a module called `legacy_amber`.\n- Rule 82: Do not define a class named `LegacyAmber`.\n- Rule 83: Never name a function `legacy_basalt`.\n- Rule 84: Do not import a module called `legacy_basalt`.\n- Rule 85: Do not define a class named `LegacyBasalt`.\n- Rule 86: Never name a function `legacy_cobalt`.\n- Rule 87: Do not import a module called `legacy_cobalt`.\n- Rule 88: Do not define a class named `LegacyCobalt`.\n- Rule 89: Never name a function `legacy_dune`.\n- Rule 90: Do not import a module called `legacy_dune`.\n- Rule 91: Do not define a class named `LegacyDune`.\n- Rule 92: Never name a function `legacy_ember`.\n- Rule 93: Do not import a module called `legacy_ember`.\n- Rule 94: Do not define a class named `LegacyEmber`.\n- Rule 95: Never name a function `legacy_flint`.\n- Rule 96: Do not import a module called `legacy_flint`.\n- Rule 97: Do not define a class named `LegacyFlint`.\n- Rule 98: Never name a function `legacy_granite`.\n- Rule 99: Do not import a module called `legacy_granite`.\n- Rule 100: Do not define a class named `LegacyGranite`.\n- Rule 101: Never name a function `legacy_harbor`.\n- Rule 102: Do not import a module called `legacy_harbor`.\n- Rule 103: Do not define a class named `LegacyHarbor`.\n- Rule 104: Never name a function `legacy_ivory`.\n- Rule 105: Do not import a module called `legacy_ivory`.\n- Rule 106: Do not define a class named `LegacyIvory`.\n- Rule 107: Never name a function `legacy_jasper`.\n- Rule 108: Do not import a module called `legacy_jasper`.\n- Rule 109: Do not define a class named `LegacyJasper`.\n- Rule 110: Never name a function `legacy_kelp`.\n- Rule 111: Do not import a module called `legacy_kelp`.\n- Rule 112: Do not define a class named `LegacyKelp`.\n- Rule 113: Never name a function `legacy_lantern`.\n- Rule 114: Do not import a module called `legacy_lantern`.\n- Rule 115: Do not define a class named `LegacyLantern`.\n- Rule 116: Never name a function `legacy_marble`.\n- Rule 117: Do not import a module called `legacy_marble`.\n- Rule 118: Do not define a class named `LegacyMarble`.\n- Rule 119: Never name a function `legacy_nimbus`.\n- Rule 120: Do not import a module called `legacy_nimbus`.\n- Rule 121: Do not define a class named `LegacyNimbus`.\n- Rule 122: Never name a function `legacy_onyx`.\n- Rule 123: Do not import a module called `legacy_onyx`.\n- Rule 124: Do not define a class named `LegacyOnyx`.\n- Rule 125: Never name a function `legacy_pewter`.\n- Rule 126: Do not import a module called `legacy_pewter`.\n- Rule 127: Do not define a class named `LegacyPewter`.\n- Rule 128: Never name a function `legacy_quarry`.\n- Rule 129: Do not import a module called `legacy_quarry`.\n- Rule 130: Do not define a class named `LegacyQuarry`.\n- Rule 131: Never name a function `legacy_russet`.\n- Rule 132: Do not import a module called `legacy_russet`.\n- Rule 133: Do not define a class named `LegacyRusset`.\n- Rule 134: Never name a function `legacy_slate`.\n- Rule 135: Do not import a module called `legacy_slate`.\n- Rule 136: Do not define a class named `LegacySlate`.\n- Rule 137: Never name a function `legacy_topaz`.\n- Rule 138: Do not import a module called `legacy_topaz`.\n- Rule 139: Do not define a class named `LegacyTopaz`.\n- Rule 140: Never name a function `legacy_umber`.\n- Rule 141: Do not import a module called `legacy_umber`.\n- Rule 142: Do not define a class named `LegacyUmber`.\n- Rule 143: Never name a function `legacy_verdant`.\n- Rule 144: Do not import a module called `legacy_verdant`.\n- Rule 145: Do not define a class named `LegacyVerdant`.\n- Rule 146: Never name a function `legacy_willow`.\n- Rule 147: Do not import a module called `legacy_willow`.\n- Rule 148: Do not define a class named `LegacyWillow`.\n- Rule 149: Never name a function `legacy_zephyr`.\n\n## Documentation\n\n- Every Python function you define must have a one-line docstring whose first word is exactly \"Handles\".\n",
  "300": "# Project rules\n\n## Naming\n\n- Every Python function you define must have a name beginning with `svc_`. This applies to every function without exception.\n\n## Style\n\n- Rule 2: Never name a function `legacy_alpha`.\n- Rule 3: Do not import a module called `legacy_alpha`.\n- Rule 4: Do not define a class named `LegacyAlpha`.\n- Rule 5: Never name a function `legacy_bravo`.\n- Rule 6: Do not import a module called `legacy_bravo`.\n- Rule 7: Do not define a class named `LegacyBravo`.\n- Rule 8: Never name a function `legacy_charlie`.\n- Rule 9: Do not import a module called `legacy_charlie`.\n- Rule 10: Do not define a class named `LegacyCharlie`.\n- Rule 11: Never name a function `legacy_delta`.\n- Rule 12: Do not import a module called `legacy_delta`.\n- Rule 13: Do not define a class named `LegacyDelta`.\n- Rule 14: Never name a function `legacy_echo`.\n- Rule 15: Do not import a module called `legacy_echo`.\n- Rule 16: Do not define a class named `LegacyEcho`.\n- Rule 17: Never name a function `legacy_foxtrot`.\n- Rule 18: Do not import a module called `legacy_foxtrot`.\n- Rule 19: Do not define a class named `LegacyFoxtrot`.\n- Rule 20: Never name a function `legacy_golf`.\n- Rule 21: Do not import a module called `legacy_golf`.\n- Rule 22: Do not define a class named `LegacyGolf`.\n- Rule 23: Never name a function `legacy_hotel`.\n- Rule 24: Do not import a module called `legacy_hotel`.\n- Rule 25: Do not define a class named `LegacyHotel`.\n- Rule 26: Never name a function `legacy_india`.\n- Rule 27: Do not import a module called `legacy_india`.\n- Rule 28: Do not define a class named `LegacyIndia`.\n- Rule 29: Never name a function `legacy_juliet`.\n- Rule 30: Do not import a module called `legacy_juliet`.\n- Rule 31: Do not define a class named `LegacyJuliet`.\n- Rule 32: Never name a function `legacy_kilo`.\n- Rule 33: Do not import a module called `legacy_kilo`.\n- Rule 34: Do not define a class named `LegacyKilo`.\n- Rule 35: Never name a function `legacy_lima`.\n- Rule 36: Do not import a module called `legacy_lima`.\n- Rule 37: Do not define a class named `LegacyLima`.\n- Rule 38: Never name a function `legacy_mike`.\n- Rule 39: Do not import a module called `legacy_mike`.\n- Rule 40: Do not define a class named `LegacyMike`.\n- Rule 41: Never name a function `legacy_november`.\n- Rule 42: Do not import a module called `legacy_november`.\n- Rule 43: Do not define a class named `LegacyNovember`.\n- Rule 44: Never name a function `legacy_oscar`.\n- Rule 45: Do not import a module called `legacy_oscar`.\n- Rule 46: Do not define a class named `LegacyOscar`.\n- Rule 47: Never name a function `legacy_papa`.\n- Rule 48: Do not import a module called `legacy_papa`.\n- Rule 49: Do not define a class named `LegacyPapa`.\n- Rule 50: Never name a function `legacy_quebec`.\n- Rule 51: Do not import a module called `legacy_quebec`.\n- Rule 52: Do not define a class named `LegacyQuebec`.\n- Rule 53: Never name a function `legacy_romeo`.\n- Rule 54: Do not import a module called `legacy_romeo`.\n- Rule 55: Do not define a class named `LegacyRomeo`.\n- Rule 56: Never name a function `legacy_sierra`.\n- Rule 57: Do not import a module called `legacy_sierra`.\n- Rule 58: Do not define a class named `LegacySierra`.\n- Rule 59: Never name a function `legacy_tango`.\n- Rule 60: Do not import a module called `legacy_tango`.\n- Rule 61: Do not define a class named `LegacyTango`.\n- Rule 62: Never name a function `legacy_uniform`.\n- Rule 63: Do not import a module called `legacy_uniform`.\n- Rule 64: Do not define a class named `LegacyUniform`.\n- Rule 65: Never name a function `legacy_victor`.\n- Rule 66: Do not import a module called `legacy_victor`.\n- Rule 67: Do not define a class named `LegacyVictor`.\n- Rule 68: Never name a function `legacy_whiskey`.\n- Rule 69: Do not import a module called `legacy_whiskey`.\n- Rule 70: Do not define a class named `LegacyWhiskey`.\n- Rule 71: Never name a function `legacy_xray`.\n- Rule 72: Do not import a module called `legacy_xray`.\n- Rule 73: Do not define a class named `LegacyXray`.\n- Rule 74: Never name a function `legacy_yankee`.\n- Rule 75: Do not import a module called `legacy_yankee`.\n- Rule 76: Do not define a class named `LegacyYankee`.\n- Rule 77: Never name a function `legacy_zulu`.\n- Rule 78: Do not import a module called `legacy_zulu`.\n- Rule 79: Do not define a class named `LegacyZulu`.\n- Rule 80: Never name a function `legacy_amber`.\n- Rule 81: Do not import a module called `legacy_amber`.\n- Rule 82: Do not define a class named `LegacyAmber`.\n- Rule 83: Never name a function `legacy_basalt`.\n- Rule 84: Do not import a module called `legacy_basalt`.\n- Rule 85: Do not define a class named `LegacyBasalt`.\n- Rule 86: Never name a function `legacy_cobalt`.\n- Rule 87: Do not import a module called `legacy_cobalt`.\n- Rule 88: Do not define a class named `LegacyCobalt`.\n- Rule 89: Never name a function `legacy_dune`.\n- Rule 90: Do not import a module called `legacy_dune`.\n- Rule 91: Do not define a class named `LegacyDune`.\n- Rule 92: Never name a function `legacy_ember`.\n- Rule 93: Do not import a module called `legacy_ember`.\n- Rule 94: Do not define a class named `LegacyEmber`.\n- Rule 95: Never name a function `legacy_flint`.\n- Rule 96: Do not import a module called `legacy_flint`.\n- Rule 97: Do not define a class named `LegacyFlint`.\n- Rule 98: Never name a function `legacy_granite`.\n- Rule 99: Do not import a module called `legacy_granite`.\n- Rule 100: Do not define a class named `LegacyGranite`.\n- Rule 101: Never name a function `legacy_harbor`.\n- Rule 102: Do not import a module called `legacy_harbor`.\n- Rule 103: Do not define a class named `LegacyHarbor`.\n- Rule 104: Never name a function `legacy_ivory`.\n- Rule 105: Do not import a module called `legacy_ivory`.\n- Rule 106: Do not define a class named `LegacyIvory`.\n- Rule 107: Never name a function `legacy_jasper`.\n- Rule 108: Do not import a module called `legacy_jasper`.\n- Rule 109: Do not define a class named `LegacyJasper`.\n- Rule 110: Never name a function `legacy_kelp`.\n- Rule 111: Do not import a module called `legacy_kelp`.\n- Rule 112: Do not define a class named `LegacyKelp`.\n- Rule 113: Never name a function `legacy_lantern`.\n- Rule 114: Do not import a module called `legacy_lantern`.\n- Rule 115: Do not define a class named `LegacyLantern`.\n- Rule 116: Never name a function `legacy_marble`.\n- Rule 117: Do not import a module called `legacy_marble`.\n- Rule 118: Do not define a class named `LegacyMarble`.\n- Rule 119: Never name a function `legacy_nimbus`.\n- Rule 120: Do not import a module called `legacy_nimbus`.\n- Rule 121: Do not define a class named `LegacyNimbus`.\n- Rule 122: Never name a function `legacy_onyx`.\n- Rule 123: Do not import a module called `legacy_onyx`.\n- Rule 124: Do not define a class named `LegacyOnyx`.\n- Rule 125: Never name a function `legacy_pewter`.\n- Rule 126: Do not import a module called `legacy_pewter`.\n- Rule 127: Do not define a class named `LegacyPewter`.\n- Rule 128: Never name a function `legacy_quarry`.\n- Rule 129: Do not import a module called `legacy_quarry`.\n- Rule 130: Do not define a class named `LegacyQuarry`.\n- Rule 131: Never name a function `legacy_russet`.\n- Rule 132: Do not import a module called `legacy_russet`.\n- Rule 133: Do not define a class named `LegacyRusset`.\n- Rule 134: Never name a function `legacy_slate`.\n- Rule 135: Do not import a module called `legacy_slate`.\n- Rule 136: Do not define a class named `LegacySlate`.\n- Rule 137: Never name a function `legacy_topaz`.\n- Rule 138: Do not import a module called `legacy_topaz`.\n- Rule 139: Do not define a class named `LegacyTopaz`.\n- Rule 140: Never name a function `legacy_umber`.\n- Rule 141: Do not import a module called `legacy_umber`.\n- Rule 142: Do not define a class named `LegacyUmber`.\n- Rule 143: Never name a function `legacy_verdant`.\n- Rule 144: Do not import a module called `legacy_verdant`.\n- Rule 145: Do not define a class named `LegacyVerdant`.\n- Rule 146: Never name a function `legacy_willow`.\n- Rule 147: Do not import a module called `legacy_willow`.\n- Rule 148: Do not define a class named `LegacyWillow`.\n- Rule 149: Never name a function `legacy_zephyr`.\n- Rule 150: Do not import a module called `legacy_zephyr`.\n- Rule 151: Do not define a class named `LegacyZephyr`.\n- Rule 152: Never name a function `draft_alpha`.\n- Rule 153: Do not import a module called `draft_alpha`.\n- Rule 154: Do not define a class named `DraftAlpha`.\n- Rule 155: Never name a function `draft_bravo`.\n- Rule 156: Do not import a module called `draft_bravo`.\n- Rule 157: Do not define a class named `DraftBravo`.\n- Rule 158: Never name a function `draft_charlie`.\n- Rule 159: Do not import a module called `draft_charlie`.\n- Rule 160: Do not define a class named `DraftCharlie`.\n- Rule 161: Never name a function `draft_delta`.\n- Rule 162: Do not import a module called `draft_delta`.\n- Rule 163: Do not define a class named `DraftDelta`.\n- Rule 164: Never name a function `draft_echo`.\n- Rule 165: Do not import a module called `draft_echo`.\n- Rule 166: Do not define a class named `DraftEcho`.\n- Rule 167: Never name a function `draft_foxtrot`.\n- Rule 168: Do not import a module called `draft_foxtrot`.\n- Rule 169: Do not define a class named `DraftFoxtrot`.\n- Rule 170: Never name a function `draft_golf`.\n- Rule 171: Do not import a module called `draft_golf`.\n- Rule 172: Do not define a class named `DraftGolf`.\n- Rule 173: Never name a function `draft_hotel`.\n- Rule 174: Do not import a module called `draft_hotel`.\n- Rule 175: Do not define a class named `DraftHotel`.\n- Rule 176: Never name a function `draft_india`.\n- Rule 177: Do not import a module called `draft_india`.\n- Rule 178: Do not define a class named `DraftIndia`.\n- Rule 179: Never name a function `draft_juliet`.\n- Rule 180: Do not import a module called `draft_juliet`.\n- Rule 181: Do not define a class named `DraftJuliet`.\n- Rule 182: Never name a function `draft_kilo`.\n- Rule 183: Do not import a module called `draft_kilo`.\n- Rule 184: Do not define a class named `DraftKilo`.\n- Rule 185: Never name a function `draft_lima`.\n- Rule 186: Do not import a module called `draft_lima`.\n- Rule 187: Do not define a class named `DraftLima`.\n- Rule 188: Never name a function `draft_mike`.\n- Rule 189: Do not import a module called `draft_mike`.\n- Rule 190: Do not define a class named `DraftMike`.\n- Rule 191: Never name a function `draft_november`.\n- Rule 192: Do not import a module called `draft_november`.\n- Rule 193: Do not define a class named `DraftNovember`.\n- Rule 194: Never name a function `draft_oscar`.\n- Rule 195: Do not import a module called `draft_oscar`.\n- Rule 196: Do not define a class named `DraftOscar`.\n- Rule 197: Never name a function `draft_papa`.\n- Rule 198: Do not import a module called `draft_papa`.\n- Rule 199: Do not define a class named `DraftPapa`.\n- Rule 200: Never name a function `draft_quebec`.\n- Rule 201: Do not import a module called `draft_quebec`.\n- Rule 202: Do not define a class named `DraftQuebec`.\n- Rule 203: Never name a function `draft_romeo`.\n- Rule 204: Do not import a module called `draft_romeo`.\n- Rule 205: Do not define a class named `DraftRomeo`.\n- Rule 206: Never name a function `draft_sierra`.\n- Rule 207: Do not import a module called `draft_sierra`.\n- Rule 208: Do not define a class named `DraftSierra`.\n- Rule 209: Never name a function `draft_tango`.\n- Rule 210: Do not import a module called `draft_tango`.\n- Rule 211: Do not define a class named `DraftTango`.\n- Rule 212: Never name a function `draft_uniform`.\n- Rule 213: Do not import a module called `draft_uniform`.\n- Rule 214: Do not define a class named `DraftUniform`.\n- Rule 215: Never name a function `draft_victor`.\n- Rule 216: Do not import a module called `draft_victor`.\n- Rule 217: Do not define a class named `DraftVictor`.\n- Rule 218: Never name a function `draft_whiskey`.\n- Rule 219: Do not import a module called `draft_whiskey`.\n- Rule 220: Do not define a class named `DraftWhiskey`.\n- Rule 221: Never name a function `draft_xray`.\n- Rule 222: Do not import a module called `draft_xray`.\n- Rule 223: Do not define a class named `DraftXray`.\n- Rule 224: Never name a function `draft_yankee`.\n- Rule 225: Do not import a module called `draft_yankee`.\n- Rule 226: Do not define a class named `DraftYankee`.\n- Rule 227: Never name a function `draft_zulu`.\n- Rule 228: Do not import a module called `draft_zulu`.\n- Rule 229: Do not define a class named `DraftZulu`.\n- Rule 230: Never name a function `draft_amber`.\n- Rule 231: Do not import a module called `draft_amber`.\n- Rule 232: Do not define a class named `DraftAmber`.\n- Rule 233: Never name a function `draft_basalt`.\n- Rule 234: Do not import a module called `draft_basalt`.\n- Rule 235: Do not define a class named `DraftBasalt`.\n- Rule 236: Never name a function `draft_cobalt`.\n- Rule 237: Do not import a module called `draft_cobalt`.\n- Rule 238: Do not define a class named `DraftCobalt`.\n- Rule 239: Never name a function `draft_dune`.\n- Rule 240: Do not import a module called `draft_dune`.\n- Rule 241: Do not define a class named `DraftDune`.\n- Rule 242: Never name a function `draft_ember`.\n- Rule 243: Do not import a module called `draft_ember`.\n- Rule 244: Do not define a class named `DraftEmber`.\n- Rule 245: Never name a function `draft_flint`.\n- Rule 246: Do not import a module called `draft_flint`.\n- Rule 247: Do not define a class named `DraftFlint`.\n- Rule 248: Never name a function `draft_granite`.\n- Rule 249: Do not import a module called `draft_granite`.\n- Rule 250: Do not define a class named `DraftGranite`.\n- Rule 251: Never name a function `draft_harbor`.\n- Rule 252: Do not import a module called `draft_harbor`.\n- Rule 253: Do not define a class named `DraftHarbor`.\n- Rule 254: Never name a function `draft_ivory`.\n- Rule 255: Do not import a module called `draft_ivory`.\n- Rule 256: Do not define a class named `DraftIvory`.\n- Rule 257: Never name a function `draft_jasper`.\n- Rule 258: Do not import a module called `draft_jasper`.\n- Rule 259: Do not define a class named `DraftJasper`.\n- Rule 260: Never name a function `draft_kelp`.\n- Rule 261: Do not import a module called `draft_kelp`.\n- Rule 262: Do not define a class named `DraftKelp`.\n- Rule 263: Never name a function `draft_lantern`.\n- Rule 264: Do not import a module called `draft_lantern`.\n- Rule 265: Do not define a class named `DraftLantern`.\n- Rule 266: Never name a function `draft_marble`.\n- Rule 267: Do not import a module called `draft_marble`.\n- Rule 268: Do not define a class named `DraftMarble`.\n- Rule 269: Never name a function `draft_nimbus`.\n- Rule 270: Do not import a module called `draft_nimbus`.\n- Rule 271: Do not define a class named `DraftNimbus`.\n- Rule 272: Never name a function `draft_onyx`.\n- Rule 273: Do not import a module called `draft_onyx`.\n- Rule 274: Do not define a class named `DraftOnyx`.\n- Rule 275: Never name a function `draft_pewter`.\n- Rule 276: Do not import a module called `draft_pewter`.\n- Rule 277: Do not define a class named `DraftPewter`.\n- Rule 278: Never name a function `draft_quarry`.\n- Rule 279: Do not import a module called `draft_quarry`.\n- Rule 280: Do not define a class named `DraftQuarry`.\n- Rule 281: Never name a function `draft_russet`.\n- Rule 282: Do not import a module called `draft_russet`.\n- Rule 283: Do not define a class named `DraftRusset`.\n- Rule 284: Never name a function `draft_slate`.\n- Rule 285: Do not import a module called `draft_slate`.\n- Rule 286: Do not define a class named `DraftSlate`.\n- Rule 287: Never name a function `draft_topaz`.\n- Rule 288: Do not import a module called `draft_topaz`.\n- Rule 289: Do not define a class named `DraftTopaz`.\n- Rule 290: Never name a function `draft_umber`.\n- Rule 291: Do not import a module called `draft_umber`.\n- Rule 292: Do not define a class named `DraftUmber`.\n- Rule 293: Never name a function `draft_verdant`.\n- Rule 294: Do not import a module called `draft_verdant`.\n- Rule 295: Do not define a class named `DraftVerdant`.\n- Rule 296: Never name a function `draft_willow`.\n- Rule 297: Do not import a module called `draft_willow`.\n- Rule 298: Do not define a class named `DraftWillow`.\n- Rule 299: Never name a function `draft_zephyr`.\n\n## Documentation\n\n- Every Python function you define must have a one-line docstring whose first word is exactly \"Handles\".\n",
  "500": "# Project rules\n\n## Naming\n\n- Every Python function you define must have a name beginning with `svc_`. This applies to every function without exception.\n\n## Style\n\n- Rule 2: Never name a function `legacy_alpha`.\n- Rule 3: Do not import a module called `legacy_alpha`.\n- Rule 4: Do not define a class named `LegacyAlpha`.\n- Rule 5: Never name a function `legacy_bravo`.\n- Rule 6: Do not import a module called `legacy_bravo`.\n- Rule 7: Do not define a class named `LegacyBravo`.\n- Rule 8: Never name a function `legacy_charlie`.\n- Rule 9: Do not import a module called `legacy_charlie`.\n- Rule 10: Do not define a class named `LegacyCharlie`.\n- Rule 11: Never name a function `legacy_delta`.\n- Rule 12: Do not import a module called `legacy_delta`.\n- Rule 13: Do not define a class named `LegacyDelta`.\n- Rule 14: Never name a function `legacy_echo`.\n- Rule 15: Do not import a module called `legacy_echo`.\n- Rule 16: Do not define a class named `LegacyEcho`.\n- Rule 17: Never name a function `legacy_foxtrot`.\n- Rule 18: Do not import a module called `legacy_foxtrot`.\n- Rule 19: Do not define a class named `LegacyFoxtrot`.\n- Rule 20: Never name a function `legacy_golf`.\n- Rule 21: Do not import a module called `legacy_golf`.\n- Rule 22: Do not define a class named `LegacyGolf`.\n- Rule 23: Never name a function `legacy_hotel`.\n- Rule 24: Do not import a module called `legacy_hotel`.\n- Rule 25: Do not define a class named `LegacyHotel`.\n- Rule 26: Never name a function `legacy_india`.\n- Rule 27: Do not import a module called `legacy_india`.\n- Rule 28: Do not define a class named `LegacyIndia`.\n- Rule 29: Never name a function `legacy_juliet`.\n- Rule 30: Do not import a module called `legacy_juliet`.\n- Rule 31: Do not define a class named `LegacyJuliet`.\n- Rule 32: Never name a function `legacy_kilo`.\n- Rule 33: Do not import a module called `legacy_kilo`.\n- Rule 34: Do not define a class named `LegacyKilo`.\n- Rule 35: Never name a function `legacy_lima`.\n- Rule 36: Do not import a module called `legacy_lima`.\n- Rule 37: Do not define a class named `LegacyLima`.\n- Rule 38: Never name a function `legacy_mike`.\n- Rule 39: Do not import a module called `legacy_mike`.\n- Rule 40: Do not define a class named `LegacyMike`.\n- Rule 41: Never name a function `legacy_november`.\n- Rule 42: Do not import a module called `legacy_november`.\n- Rule 43: Do not define a class named `LegacyNovember`.\n- Rule 44: Never name a function `legacy_oscar`.\n- Rule 45: Do not import a module called `legacy_oscar`.\n- Rule 46: Do not define a class named `LegacyOscar`.\n- Rule 47: Never name a function `legacy_papa`.\n- Rule 48: Do not import a module called `legacy_papa`.\n- Rule 49: Do not define a class named `LegacyPapa`.\n- Rule 50: Never name a function `legacy_quebec`.\n- Rule 51: Do not import a module called `legacy_quebec`.\n- Rule 52: Do not define a class named `LegacyQuebec`.\n- Rule 53: Never name a function `legacy_romeo`.\n- Rule 54: Do not import a module called `legacy_romeo`.\n- Rule 55: Do not define a class named `LegacyRomeo`.\n- Rule 56: Never name a function `legacy_sierra`.\n- Rule 57: Do not import a module called `legacy_sierra`.\n- Rule 58: Do not define a class named `LegacySierra`.\n- Rule 59: Never name a function `legacy_tango`.\n- Rule 60: Do not import a module called `legacy_tango`.\n- Rule 61: Do not define a class named `LegacyTango`.\n- Rule 62: Never name a function `legacy_uniform`.\n- Rule 63: Do not import a module called `legacy_uniform`.\n- Rule 64: Do not define a class named `LegacyUniform`.\n- Rule 65: Never name a function `legacy_victor`.\n- Rule 66: Do not import a module called `legacy_victor`.\n- Rule 67: Do not define a class named `LegacyVictor`.\n- Rule 68: Never name a function `legacy_whiskey`.\n- Rule 69: Do not import a module called `legacy_whiskey`.\n- Rule 70: Do not define a class named `LegacyWhiskey`.\n- Rule 71: Never name a function `legacy_xray`.\n- Rule 72: Do not import a module called `legacy_xray`.\n- Rule 73: Do not define a class named `LegacyXray`.\n- Rule 74: Never name a function `legacy_yankee`.\n- Rule 75: Do not import a module called `legacy_yankee`.\n- Rule 76: Do not define a class named `LegacyYankee`.\n- Rule 77: Never name a function `legacy_zulu`.\n- Rule 78: Do not import a module called `legacy_zulu`.\n- Rule 79: Do not define a class named `LegacyZulu`.\n- Rule 80: Never name a function `legacy_amber`.\n- Rule 81: Do not import a module called `legacy_amber`.\n- Rule 82: Do not define a class named `LegacyAmber`.\n- Rule 83: Never name a function `legacy_basalt`.\n- Rule 84: Do not import a module called `legacy_basalt`.\n- Rule 85: Do not define a class named `LegacyBasalt`.\n- Rule 86: Never name a function `legacy_cobalt`.\n- Rule 87: Do not import a module called `legacy_cobalt`.\n- Rule 88: Do not define a class named `LegacyCobalt`.\n- Rule 89: Never name a function `legacy_dune`.\n- Rule 90: Do not import a module called `legacy_dune`.\n- Rule 91: Do not define a class named `LegacyDune`.\n- Rule 92: Never name a function `legacy_ember`.\n- Rule 93: Do not import a module called `legacy_ember`.\n- Rule 94: Do not define a class named `LegacyEmber`.\n- Rule 95: Never name a function `legacy_flint`.\n- Rule 96: Do not import a module called `legacy_flint`.\n- Rule 97: Do not define a class named `LegacyFlint`.\n- Rule 98: Never name a function `legacy_granite`.\n- Rule 99: Do not import a module called `legacy_granite`.\n- Rule 100: Do not define a class named `LegacyGranite`.\n- Rule 101: Never name a function `legacy_harbor`.\n- Rule 102: Do not import a module called `legacy_harbor`.\n- Rule 103: Do not define a class named `LegacyHarbor`.\n- Rule 104: Never name a function `legacy_ivory`.\n- Rule 105: Do not import a module called `legacy_ivory`.\n- Rule 106: Do not define a class named `LegacyIvory`.\n- Rule 107: Never name a function `legacy_jasper`.\n- Rule 108: Do not import a module called `legacy_jasper`.\n- Rule 109: Do not define a class named `LegacyJasper`.\n- Rule 110: Never name a function `legacy_kelp`.\n- Rule 111: Do not import a module called `legacy_kelp`.\n- Rule 112: Do not define a class named `LegacyKelp`.\n- Rule 113: Never name a function `legacy_lantern`.\n- Rule 114: Do not import a module called `legacy_lantern`.\n- Rule 115: Do not define a class named `LegacyLantern`.\n- Rule 116: Never name a function `legacy_marble`.\n- Rule 117: Do not import a module called `legacy_marble`.\n- Rule 118: Do not define a class named `LegacyMarble`.\n- Rule 119: Never name a function `legacy_nimbus`.\n- Rule 120: Do not import a module called `legacy_nimbus`.\n- Rule 121: Do not define a class named `LegacyNimbus`.\n- Rule 122: Never name a function `legacy_onyx`.\n- Rule 123: Do not import a module called `legacy_onyx`.\n- Rule 124: Do not define a class named `LegacyOnyx`.\n- Rule 125: Never name a function `legacy_pewter`.\n- Rule 126: Do not import a module called `legacy_pewter`.\n- Rule 127: Do not define a class named `LegacyPewter`.\n- Rule 128: Never name a function `legacy_quarry`.\n- Rule 129: Do not import a module called `legacy_quarry`.\n- Rule 130: Do not define a class named `LegacyQuarry`.\n- Rule 131: Never name a function `legacy_russet`.\n- Rule 132: Do not import a module called `legacy_russet`.\n- Rule 133: Do not define a class named `LegacyRusset`.\n- Rule 134: Never name a function `legacy_slate`.\n- Rule 135: Do not import a module called `legacy_slate`.\n- Rule 136: Do not define a class named `LegacySlate`.\n- Rule 137: Never name a function `legacy_topaz`.\n- Rule 138: Do not import a module called `legacy_topaz`.\n- Rule 139: Do not define a class named `LegacyTopaz`.\n- Rule 140: Never name a function `legacy_umber`.\n- Rule 141: Do not import a module called `legacy_umber`.\n- Rule 142: Do not define a class named `LegacyUmber`.\n- Rule 143: Never name a function `legacy_verdant`.\n- Rule 144: Do not import a module called `legacy_verdant`.\n- Rule 145: Do not define a class named `LegacyVerdant`.\n- Rule 146: Never name a function `legacy_willow`.\n- Rule 147: Do not import a module called `legacy_willow`.\n- Rule 148: Do not define a class named `LegacyWillow`.\n- Rule 149: Never name a function `legacy_zephyr`.\n- Rule 150: Do not import a module called `legacy_zephyr`.\n- Rule 151: Do not define a class named `LegacyZephyr`.\n- Rule 152: Never name a function `draft_alpha`.\n- Rule 153: Do not import a module called `draft_alpha`.\n- Rule 154: Do not define a class named `DraftAlpha`.\n- Rule 155: Never name a function `draft_bravo`.\n- Rule 156: Do not import a module called `draft_bravo`.\n- Rule 157: Do not define a class named `DraftBravo`.\n- Rule 158: Never name a function `draft_charlie`.\n- Rule 159: Do not import a module called `draft_charlie`.\n- Rule 160: Do not define a class named `DraftCharlie`.\n- Rule 161: Never name a function `draft_delta`.\n- Rule 162: Do not import a module called `draft_delta`.\n- Rule 163: Do not define a class named `DraftDelta`.\n- Rule 164: Never name a function `draft_echo`.\n- Rule 165: Do not import a module called `draft_echo`.\n- Rule 166: Do not define a class named `DraftEcho`.\n- Rule 167: Never name a function `draft_foxtrot`.\n- Rule 168: Do not import a module called `draft_foxtrot`.\n- Rule 169: Do not define a class named `DraftFoxtrot`.\n- Rule 170: Never name a function `draft_golf`.\n- Rule 171: Do not import a module called `draft_golf`.\n- Rule 172: Do not define a class named `DraftGolf`.\n- Rule 173: Never name a function `draft_hotel`.\n- Rule 174: Do not import a module called `draft_hotel`.\n- Rule 175: Do not define a class named `DraftHotel`.\n- Rule 176: Never name a function `draft_india`.\n- Rule 177: Do not import a module called `draft_india`.\n- Rule 178: Do not define a class named `DraftIndia`.\n- Rule 179: Never name a function `draft_juliet`.\n- Rule 180: Do not import a module called `draft_juliet`.\n- Rule 181: Do not define a class named `DraftJuliet`.\n- Rule 182: Never name a function `draft_kilo`.\n- Rule 183: Do not import a module called `draft_kilo`.\n- Rule 184: Do not define a class named `DraftKilo`.\n- Rule 185: Never name a function `draft_lima`.\n- Rule 186: Do not import a module called `draft_lima`.\n- Rule 187: Do not define a class named `DraftLima`.\n- Rule 188: Never name a function `draft_mike`.\n- Rule 189: Do not import a module called `draft_mike`.\n- Rule 190: Do not define a class named `DraftMike`.\n- Rule 191: Never name a function `draft_november`.\n- Rule 192: Do not import a module called `draft_november`.\n- Rule 193: Do not define a class named `DraftNovember`.\n- Rule 194: Never name a function `draft_oscar`.\n- Rule 195: Do not import a module called `draft_oscar`.\n- Rule 196: Do not define a class named `DraftOscar`.\n- Rule 197: Never name a function `draft_papa`.\n- Rule 198: Do not import a module called `draft_papa`.\n- Rule 199: Do not define a class named `DraftPapa`.\n- Rule 200: Never name a function `draft_quebec`.\n- Rule 201: Do not import a module called `draft_quebec`.\n- Rule 202: Do not define a class named `DraftQuebec`.\n- Rule 203: Never name a function `draft_romeo`.\n- Rule 204: Do not import a module called `draft_romeo`.\n- Rule 205: Do not define a class named `DraftRomeo`.\n- Rule 206: Never name a function `draft_sierra`.\n- Rule 207: Do not import a module called `draft_sierra`.\n- Rule 208: Do not define a class named `DraftSierra`.\n- Rule 209: Never name a function `draft_tango`.\n- Rule 210: Do not import a module called `draft_tango`.\n- Rule 211: Do not define a class named `DraftTango`.\n- Rule 212: Never name a function `draft_uniform`.\n- Rule 213: Do not import a module called `draft_uniform`.\n- Rule 214: Do not define a class named `DraftUniform`.\n- Rule 215: Never name a function `draft_victor`.\n- Rule 216: Do not import a module called `draft_victor`.\n- Rule 217: Do not define a class named `DraftVictor`.\n- Rule 218: Never name a function `draft_whiskey`.\n- Rule 219: Do not import a module called `draft_whiskey`.\n- Rule 220: Do not define a class named `DraftWhiskey`.\n- Rule 221: Never name a function `draft_xray`.\n- Rule 222: Do not import a module called `draft_xray`.\n- Rule 223: Do not define a class named `DraftXray`.\n- Rule 224: Never name a function `draft_yankee`.\n- Rule 225: Do not import a module called `draft_yankee`.\n- Rule 226: Do not define a class named `DraftYankee`.\n- Rule 227: Never name a function `draft_zulu`.\n- Rule 228: Do not import a module called `draft_zulu`.\n- Rule 229: Do not define a class named `DraftZulu`.\n- Rule 230: Never name a function `draft_amber`.\n- Rule 231: Do not import a module called `draft_amber`.\n- Rule 232: Do not define a class named `DraftAmber`.\n- Rule 233: Never name a function `draft_basalt`.\n- Rule 234: Do not import a module called `draft_basalt`.\n- Rule 235: Do not define a class named `DraftBasalt`.\n- Rule 236: Never name a function `draft_cobalt`.\n- Rule 237: Do not import a module called `draft_cobalt`.\n- Rule 238: Do not define a class named `DraftCobalt`.\n- Rule 239: Never name a function `draft_dune`.\n- Rule 240: Do not import a module called `draft_dune`.\n- Rule 241: Do not define a class named `DraftDune`.\n- Rule 242: Never name a function `draft_ember`.\n- Rule 243: Do not import a module called `draft_ember`.\n- Rule 244: Do not define a class named `DraftEmber`.\n- Rule 245: Never name a function `draft_flint`.\n- Rule 246: Do not import a module called `draft_flint`.\n- Rule 247: Do not define a class named `DraftFlint`.\n- Rule 248: Never name a function `draft_granite`.\n- Rule 249: Do not import a module called `draft_granite`.\n- Rule 250: Do not define a class named `DraftGranite`.\n- Rule 251: Never name a function `draft_harbor`.\n- Rule 252: Do not import a module called `draft_harbor`.\n- Rule 253: Do not define a class named `DraftHarbor`.\n- Rule 254: Never name a function `draft_ivory`.\n- Rule 255: Do not import a module called `draft_ivory`.\n- Rule 256: Do not define a class named `DraftIvory`.\n- Rule 257: Never name a function `draft_jasper`.\n- Rule 258: Do not import a module called `draft_jasper`.\n- Rule 259: Do not define a class named `DraftJasper`.\n- Rule 260: Never name a function `draft_kelp`.\n- Rule 261: Do not import a module called `draft_kelp`.\n- Rule 262: Do not define a class named `DraftKelp`.\n- Rule 263: Never name a function `draft_lantern`.\n- Rule 264: Do not import a module called `draft_lantern`.\n- Rule 265: Do not define a class named `DraftLantern`.\n- Rule 266: Never name a function `draft_marble`.\n- Rule 267: Do not import a module called `draft_marble`.\n- Rule 268: Do not define a class named `DraftMarble`.\n- Rule 269: Never name a function `draft_nimbus`.\n- Rule 270: Do not import a module called `draft_nimbus`.\n- Rule 271: Do not define a class named `DraftNimbus`.\n- Rule 272: Never name a function `draft_onyx`.\n- Rule 273: Do not import a module called `draft_onyx`.\n- Rule 274: Do not define a class named `DraftOnyx`.\n- Rule 275: Never name a function `draft_pewter`.\n- Rule 276: Do not import a module called `draft_pewter`.\n- Rule 277: Do not define a class named `DraftPewter`.\n- Rule 278: Never name a function `draft_quarry`.\n- Rule 279: Do not import a module called `draft_quarry`.\n- Rule 280: Do not define a class named `DraftQuarry`.\n- Rule 281: Never name a function `draft_russet`.\n- Rule 282: Do not import a module called `draft_russet`.\n- Rule 283: Do not define a class named `DraftRusset`.\n- Rule 284: Never name a function `draft_slate`.\n- Rule 285: Do not import a module called `draft_slate`.\n- Rule 286: Do not define a class named `DraftSlate`.\n- Rule 287: Never name a function `draft_topaz`.\n- Rule 288: Do not import a module called `draft_topaz`.\n- Rule 289: Do not define a class named `DraftTopaz`.\n- Rule 290: Never name a function `draft_umber`.\n- Rule 291: Do not import a module called `draft_umber`.\n- Rule 292: Do not define a class named `DraftUmber`.\n- Rule 293: Never name a function `draft_verdant`.\n- Rule 294: Do not import a module called `draft_verdant`.\n- Rule 295: Do not define a class named `DraftVerdant`.\n- Rule 296: Never name a function `draft_willow`.\n- Rule 297: Do not import a module called `draft_willow`.\n- Rule 298: Do not define a class named `DraftWillow`.\n- Rule 299: Never name a function `draft_zephyr`.\n- Rule 300: Do not import a module called `draft_zephyr`.\n- Rule 301: Do not define a class named `DraftZephyr`.\n- Rule 302: Never name a function `interim_alpha`.\n- Rule 303: Do not import a module called `interim_alpha`.\n- Rule 304: Do not define a class named `InterimAlpha`.\n- Rule 305: Never name a function `interim_bravo`.\n- Rule 306: Do not import a module called `interim_bravo`.\n- Rule 307: Do not define a class named `InterimBravo`.\n- Rule 308: Never name a function `interim_charlie`.\n- Rule 309: Do not import a module called `interim_charlie`.\n- Rule 310: Do not define a class named `InterimCharlie`.\n- Rule 311: Never name a function `interim_delta`.\n- Rule 312: Do not import a module called `interim_delta`.\n- Rule 313: Do not define a class named `InterimDelta`.\n- Rule 314: Never name a function `interim_echo`.\n- Rule 315: Do not import a module called `interim_echo`.\n- Rule 316: Do not define a class named `InterimEcho`.\n- Rule 317: Never name a function `interim_foxtrot`.\n- Rule 318: Do not import a module called `interim_foxtrot`.\n- Rule 319: Do not define a class named `InterimFoxtrot`.\n- Rule 320: Never name a function `interim_golf`.\n- Rule 321: Do not import a module called `interim_golf`.\n- Rule 322: Do not define a class named `InterimGolf`.\n- Rule 323: Never name a function `interim_hotel`.\n- Rule 324: Do not import a module called `interim_hotel`.\n- Rule 325: Do not define a class named `InterimHotel`.\n- Rule 326: Never name a function `interim_india`.\n- Rule 327: Do not import a module called `interim_india`.\n- Rule 328: Do not define a class named `InterimIndia`.\n- Rule 329: Never name a function `interim_juliet`.\n- Rule 330: Do not import a module called `interim_juliet`.\n- Rule 331: Do not define a class named `InterimJuliet`.\n- Rule 332: Never name a function `interim_kilo`.\n- Rule 333: Do not import a module called `interim_kilo`.\n- Rule 334: Do not define a class named `InterimKilo`.\n- Rule 335: Never name a function `interim_lima`.\n- Rule 336: Do not import a module called `interim_lima`.\n- Rule 337: Do not define a class named `InterimLima`.\n- Rule 338: Never name a function `interim_mike`.\n- Rule 339: Do not import a module called `interim_mike`.\n- Rule 340: Do not define a class named `InterimMike`.\n- Rule 341: Never name a function `interim_november`.\n- Rule 342: Do not import a module called `interim_november`.\n- Rule 343: Do not define a class named `InterimNovember`.\n- Rule 344: Never name a function `interim_oscar`.\n- Rule 345: Do not import a module called `interim_oscar`.\n- Rule 346: Do not define a class named `InterimOscar`.\n- Rule 347: Never name a function `interim_papa`.\n- Rule 348: Do not import a module called `interim_papa`.\n- Rule 349: Do not define a class named `InterimPapa`.\n- Rule 350: Never name a function `interim_quebec`.\n- Rule 351: Do not import a module called `interim_quebec`.\n- Rule 352: Do not define a class named `InterimQuebec`.\n- Rule 353: Never name a function `interim_romeo`.\n- Rule 354: Do not import a module called `interim_romeo`.\n- Rule 355: Do not define a class named `InterimRomeo`.\n- Rule 356: Never name a function `interim_sierra`.\n- Rule 357: Do not import a module called `interim_sierra`.\n- Rule 358: Do not define a class named `InterimSierra`.\n- Rule 359: Never name a function `interim_tango`.\n- Rule 360: Do not import a module called `interim_tango`.\n- Rule 361: Do not define a class named `InterimTango`.\n- Rule 362: Never name a function `interim_uniform`.\n- Rule 363: Do not import a module called `interim_uniform`.\n- Rule 364: Do not define a class named `InterimUniform`.\n- Rule 365: Never name a function `interim_victor`.\n- Rule 366: Do not import a module called `interim_victor`.\n- Rule 367: Do not define a class named `InterimVictor`.\n- Rule 368: Never name a function `interim_whiskey`.\n- Rule 369: Do not import a module called `interim_whiskey`.\n- Rule 370: Do not define a class named `InterimWhiskey`.\n- Rule 371: Never name a function `interim_xray`.\n- Rule 372: Do not import a module called `interim_xray`.\n- Rule 373: Do not define a class named `InterimXray`.\n- Rule 374: Never name a function `interim_yankee`.\n- Rule 375: Do not import a module called `interim_yankee`.\n- Rule 376: Do not define a class named `InterimYankee`.\n- Rule 377: Never name a function `interim_zulu`.\n- Rule 378: Do not import a module called `interim_zulu`.\n- Rule 379: Do not define a class named `InterimZulu`.\n- Rule 380: Never name a function `interim_amber`.\n- Rule 381: Do not import a module called `interim_amber`.\n- Rule 382: Do not define a class named `InterimAmber`.\n- Rule 383: Never name a function `interim_basalt`.\n- Rule 384: Do not import a module called `interim_basalt`.\n- Rule 385: Do not define a class named `InterimBasalt`.\n- Rule 386: Never name a function `interim_cobalt`.\n- Rule 387: Do not import a module called `interim_cobalt`.\n- Rule 388: Do not define a class named `InterimCobalt`.\n- Rule 389: Never name a function `interim_dune`.\n- Rule 390: Do not import a module called `interim_dune`.\n- Rule 391: Do not define a class named `InterimDune`.\n- Rule 392: Never name a function `interim_ember`.\n- Rule 393: Do not import a module called `interim_ember`.\n- Rule 394: Do not define a class named `InterimEmber`.\n- Rule 395: Never name a function `interim_flint`.\n- Rule 396: Do not import a module called `interim_flint`.\n- Rule 397: Do not define a class named `InterimFlint`.\n- Rule 398: Never name a function `interim_granite`.\n- Rule 399: Do not import a module called `interim_granite`.\n- Rule 400: Do not define a class named `InterimGranite`.\n- Rule 401: Never name a function `interim_harbor`.\n- Rule 402: Do not import a module called `interim_harbor`.\n- Rule 403: Do not define a class named `InterimHarbor`.\n- Rule 404: Never name a function `interim_ivory`.\n- Rule 405: Do not import a module called `interim_ivory`.\n- Rule 406: Do not define a class named `InterimIvory`.\n- Rule 407: Never name a function `interim_jasper`.\n- Rule 408: Do not import a module called `interim_jasper`.\n- Rule 409: Do not define a class named `InterimJasper`.\n- Rule 410: Never name a function `interim_kelp`.\n- Rule 411: Do not import a module called `interim_kelp`.\n- Rule 412: Do not define a class named `InterimKelp`.\n- Rule 413: Never name a function `interim_lantern`.\n- Rule 414: Do not import a module called `interim_lantern`.\n- Rule 415: Do not define a class named `InterimLantern`.\n- Rule 416: Never name a function `interim_marble`.\n- Rule 417: Do not import a module called `interim_marble`.\n- Rule 418: Do not define a class named `InterimMarble`.\n- Rule 419: Never name a function `interim_nimbus`.\n- Rule 420: Do not import a module called `interim_nimbus`.\n- Rule 421: Do not define a class named `InterimNimbus`.\n- Rule 422: Never name a function `interim_onyx`.\n- Rule 423: Do not import a module called `interim_onyx`.\n- Rule 424: Do not define a class named `InterimOnyx`.\n- Rule 425: Never name a function `interim_pewter`.\n- Rule 426: Do not import a module called `interim_pewter`.\n- Rule 427: Do not define a class named `InterimPewter`.\n- Rule 428: Never name a function `interim_quarry`.\n- Rule 429: Do not import a module called `interim_quarry`.\n- Rule 430: Do not define a class named `InterimQuarry`.\n- Rule 431: Never name a function `interim_russet`.\n- Rule 432: Do not import a module called `interim_russet`.\n- Rule 433: Do not define a class named `InterimRusset`.\n- Rule 434: Never name a function `interim_slate`.\n- Rule 435: Do not import a module called `interim_slate`.\n- Rule 436: Do not define a class named `InterimSlate`.\n- Rule 437: Never name a function `interim_topaz`.\n- Rule 438: Do not import a module called `interim_topaz`.\n- Rule 439: Do not define a class named `InterimTopaz`.\n- Rule 440: Never name a function `interim_umber`.\n- Rule 441: Do not import a module called `interim_umber`.\n- Rule 442: Do not define a class named `InterimUmber`.\n- Rule 443: Never name a function `interim_verdant`.\n- Rule 444: Do not import a module called `interim_verdant`.\n- Rule 445: Do not define a class named `InterimVerdant`.\n- Rule 446: Never name a function `interim_willow`.\n- Rule 447: Do not import a module called `interim_willow`.\n- Rule 448: Do not define a class named `InterimWillow`.\n- Rule 449: Never name a function `interim_zephyr`.\n- Rule 450: Do not import a module called `interim_zephyr`.\n- Rule 451: Do not define a class named `InterimZephyr`.\n- Rule 452: Never name a function `staging_alpha`.\n- Rule 453: Do not import a module called `staging_alpha`.\n- Rule 454: Do not define a class named `StagingAlpha`.\n- Rule 455: Never name a function `staging_bravo`.\n- Rule 456: Do not import a module called `staging_bravo`.\n- Rule 457: Do not define a class named `StagingBravo`.\n- Rule 458: Never name a function `staging_charlie`.\n- Rule 459: Do not import a module called `staging_charlie`.\n- Rule 460: Do not define a class named `StagingCharlie`.\n- Rule 461: Never name a function `staging_delta`.\n- Rule 462: Do not import a module called `staging_delta`.\n- Rule 463: Do not define a class named `StagingDelta`.\n- Rule 464: Never name a function `staging_echo`.\n- Rule 465: Do not import a module called `staging_echo`.\n- Rule 466: Do not define a class named `StagingEcho`.\n- Rule 467: Never name a function `staging_foxtrot`.\n- Rule 468: Do not import a module called `staging_foxtrot`.\n- Rule 469: Do not define a class named `StagingFoxtrot`.\n- Rule 470: Never name a function `staging_golf`.\n- Rule 471: Do not import a module called `staging_golf`.\n- Rule 472: Do not define a class named `StagingGolf`.\n- Rule 473: Never name a function `staging_hotel`.\n- Rule 474: Do not import a module called `staging_hotel`.\n- Rule 475: Do not define a class named `StagingHotel`.\n- Rule 476: Never name a function `staging_india`.\n- Rule 477: Do not import a module called `staging_india`.\n- Rule 478: Do not define a class named `StagingIndia`.\n- Rule 479: Never name a function `staging_juliet`.\n- Rule 480: Do not import a module called `staging_juliet`.\n- Rule 481: Do not define a class named `StagingJuliet`.\n- Rule 482: Never name a function `staging_kilo`.\n- Rule 483: Do not import a module called `staging_kilo`.\n- Rule 484: Do not define a class named `StagingKilo`.\n- Rule 485: Never name a function `staging_lima`.\n- Rule 486: Do not import a module called `staging_lima`.\n- Rule 487: Do not define a class named `StagingLima`.\n- Rule 488: Never name a function `staging_mike`.\n- Rule 489: Do not import a module called `staging_mike`.\n- Rule 490: Do not define a class named `StagingMike`.\n- Rule 491: Never name a function `staging_november`.\n- Rule 492: Do not import a module called `staging_november`.\n- Rule 493: Do not define a class named `StagingNovember`.\n- Rule 494: Never name a function `staging_oscar`.\n- Rule 495: Do not import a module called `staging_oscar`.\n- Rule 496: Do not define a class named `StagingOscar`.\n- Rule 497: Never name a function `staging_papa`.\n- Rule 498: Do not import a module called `staging_papa`.\n- Rule 499: Do not define a class named `StagingPapa`.\n\n## Documentation\n\n- Every Python function you define must have a one-line docstring whose first word is exactly \"Handles\".\n"
 },
 "target_prefix": "svc_",
 "target_rule": "- Every Python function you define must have a name beginning with `svc_`. This applies to every function without exception.",
 "target_docstring_first_word": "Handles",
 "target_rule_last": "- Every Python function you define must have a one-line docstring whose first word is exactly \"Handles\".",
 "task": "Create a file called module.py containing exactly three Python functions: one that adds two numbers, one that reverses a string, and one that returns the length of a list. Keep them simple. Write the file and reply with only DONE.",
 "ladder": [
  0,
  2,
  10,
  50,
  150,
  300,
  500
 ],
 "results": {
  "per_arm": {
   "0": {
    "rules_in_claude_md": 0,
    "runs": 5,
    "functions_written": 15,
    "top_rule_compliance": "0 of 15",
    "top_rule_rate": 0.0,
    "bottom_rule_compliance": "0 of 15",
    "bottom_rule_rate": 0.0,
    "runs_fully_compliant_both_rules": "0 of 5",
    "claude_md_bytes": 553,
    "rules_parsed_back_from_disk": 10,
    "context_tokens_min": 45596,
    "context_tokens_max": 45596,
    "label": "0 TARGET rules; the file still carries 10 distinct filler rules"
   },
   "2": {
    "rules_in_claude_md": 2,
    "runs": 5,
    "functions_written": 15,
    "top_rule_compliance": "15 of 15",
    "top_rule_rate": 1.0,
    "bottom_rule_compliance": "15 of 15",
    "bottom_rule_rate": 1.0,
    "runs_fully_compliant_both_rules": "5 of 5",
    "claude_md_bytes": 277,
    "rules_parsed_back_from_disk": 2,
    "context_tokens_min": 45304,
    "context_tokens_max": 45348
   },
   "10": {
    "rules_in_claude_md": 10,
    "runs": 5,
    "functions_written": 15,
    "top_rule_compliance": "15 of 15",
    "top_rule_rate": 1.0,
    "bottom_rule_compliance": "15 of 15",
    "bottom_rule_rate": 1.0,
    "runs_fully_compliant_both_rules": "5 of 5",
    "claude_md_bytes": 710,
    "rules_parsed_back_from_disk": 10,
    "context_tokens_min": 45742,
    "context_tokens_max": 45816
   },
   "50": {
    "rules_in_claude_md": 50,
    "runs": 5,
    "functions_written": 15,
    "top_rule_compliance": "15 of 15",
    "top_rule_rate": 1.0,
    "bottom_rule_compliance": "15 of 15",
    "bottom_rule_rate": 1.0,
    "runs_fully_compliant_both_rules": "5 of 5",
    "claude_md_bytes": 2846,
    "rules_parsed_back_from_disk": 50,
    "context_tokens_min": 47624,
    "context_tokens_max": 47680
   },
   "150": {
    "rules_in_claude_md": 150,
    "runs": 5,
    "functions_written": 15,
    "top_rule_compliance": "15 of 15",
    "top_rule_rate": 1.0,
    "bottom_rule_compliance": "15 of 15",
    "bottom_rule_rate": 1.0,
    "runs_fully_compliant_both_rules": "5 of 5",
    "claude_md_bytes": 8283,
    "rules_parsed_back_from_disk": 150,
    "context_tokens_min": 52483,
    "context_tokens_max": 52516
   },
   "300": {
    "rules_in_claude_md": 300,
    "runs": 5,
    "functions_written": 15,
    "top_rule_compliance": "15 of 15",
    "top_rule_rate": 1.0,
    "bottom_rule_compliance": "15 of 15",
    "bottom_rule_rate": 1.0,
    "runs_fully_compliant_both_rules": "5 of 5",
    "claude_md_bytes": 16351,
    "rules_parsed_back_from_disk": 300,
    "context_tokens_min": 59457,
    "context_tokens_max": 59469
   },
   "500": {
    "rules_in_claude_md": 500,
    "runs": 5,
    "functions_written": 15,
    "top_rule_compliance": "15 of 15",
    "top_rule_rate": 1.0,
    "bottom_rule_compliance": "15 of 15",
    "bottom_rule_rate": 1.0,
    "runs_fully_compliant_both_rules": "5 of 5",
    "claude_md_bytes": 27492,
    "rules_parsed_back_from_disk": 500,
    "context_tokens_min": 68731,
    "context_tokens_max": 68775
   }
  },
  "negative_control": {
   "arm": "0 target rules, same file shape, 10 distinct filler rules still present",
   "top_rule_rate": 0.0,
   "bottom_rule_rate": 0.0,
   "valid": true,
   "why": "Without this arm, total compliance at every rule count is indistinguishable from a checker that cannot see a failure, or from the model naming functions this way regardless."
  },
  "does_compliance_fall_with_rule_count": {
   "top_rule_rates": {
    "2": 1.0,
    "10": 1.0,
    "50": 1.0,
    "150": 1.0,
    "300": 1.0,
    "500": 1.0
   },
   "bottom_rule_rates": {
    "2": 1.0,
    "10": 1.0,
    "50": 1.0,
    "150": 1.0,
    "300": 1.0,
    "500": 1.0
   },
   "verdict": "No. Both rules held in every run at every count from 2 to 500."
  },
  "what_more_rules_actually_cost": {
   "context_tokens_by_arm": {
    "0": 45596,
    "2": 45304,
    "10": 45742,
    "50": 47624,
    "150": 52483,
    "300": 59457,
    "500": 68731
   },
   "claude_md_bytes_by_arm": {
    "0": 553,
    "2": 277,
    "10": 710,
    "50": 2846,
    "150": 8283,
    "300": 16351,
    "500": 27492
   },
   "extra_startup_context_for_500_rules": 23427,
   "extra_startup_context_max_to_max": 23427,
   "estimator": "Lowest of the five runs in each arm; within-arm spread is small and the max-to-max delta is given alongside.",
   "rates_per_mtok_used": {
    "cache_write_1h_tier": 10.0,
    "cache_read": 0.5,
    "source": "Reconciled to the cent against Claude Code's own reported costs in cache-ttl.json and verbosity.json on this site, not quoted from a price page."
   },
   "priced_cold_at_1h_write_rate": 0.23427,
   "priced_warm_at_cache_read_rate": 0.01171,
   "note": "Startup context grows with the file whether or not adherence does. These are modelled from the published token counts at the reconciled rates, not read off a per-run cost field."
  },
  "totals": {
   "runs": 35,
   "scored": 35,
   "arrival_control": "35 of 35 wrote exactly the three requested functions",
   "no_exclusions": true,
   "target_rule_first_in_every_rule_bearing_arm": true
  }
 },
 "runs": [
  {
   "rules": 0,
   "round": 0,
   "status": "ok",
   "claude_md_bytes": 553,
   "claude_md_rules_parsed_back": 10,
   "claude_md_distinct_rules": 10,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": false,
   "target_rule_last_present": false,
   "target_rule_char_offset": -1,
   "first_filler_char_offset": 75,
   "target_rule_is_first": false,
   "functions_defined": [
    "add",
    "reverse_string",
    "list_length"
   ],
   "functions_complying": [],
   "n_defined": 3,
   "n_complying": 0,
   "all_complied": false,
   "docstrings_found": [],
   "n_docstrings_complying": 0,
   "all_docstrings_complied": false,
   "last_rule_char_offset": -1,
   "source": "def add(a, b):\n    return a + b\n\n\ndef reverse_string(s):\n    return s[::-1]\n\n\ndef list_length(items):\n    return len(items)\n",
   "context": 45596,
   "output": 215,
   "cost": 0.091749,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 2,
   "round": 0,
   "status": "ok",
   "claude_md_bytes": 277,
   "claude_md_rules_parsed_back": 2,
   "claude_md_distinct_rules": 2,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": -1,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversal of a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 172,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversal of a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 45305,
   "output": 269,
   "cost": 0.091803,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 10,
   "round": 0,
   "status": "ok",
   "claude_md_bytes": 710,
   "claude_md_rules_parsed_back": 10,
   "claude_md_distinct_rules": 10,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversing a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 605,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversing a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 45746,
   "output": 311,
   "cost": 0.0953925,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 50,
   "round": 0,
   "status": "ok",
   "claude_md_bytes": 2846,
   "claude_md_rules_parsed_back": 50,
   "claude_md_distinct_rules": 50,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversing a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 2741,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversing a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 47624,
   "output": 268,
   "cost": 0.10394800000000001,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 150,
   "round": 0,
   "status": "ok",
   "claude_md_bytes": 8283,
   "claude_md_rules_parsed_back": 150,
   "claude_md_distinct_rules": 150,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversing a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 8178,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversing a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 52516,
   "output": 319,
   "cost": 0.131173,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 300,
   "round": 0,
   "status": "ok",
   "claude_md_bytes": 16351,
   "claude_md_rules_parsed_back": 300,
   "claude_md_distinct_rules": 300,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversing a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 16246,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversing a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 59462,
   "output": 303,
   "cost": 0.167114,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 500,
   "round": 0,
   "status": "ok",
   "claude_md_bytes": 27492,
   "claude_md_rules_parsed_back": 500,
   "claude_md_distinct_rules": 500,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversing a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 27387,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversing a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 68739,
   "output": 303,
   "cost": 0.215843,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 2,
   "round": 1,
   "status": "ok",
   "claude_md_bytes": 277,
   "claude_md_rules_parsed_back": 2,
   "claude_md_distinct_rules": 2,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": -1,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversing a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 172,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversing a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 45304,
   "output": 267,
   "cost": 0.091763,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 10,
   "round": 1,
   "status": "ok",
   "claude_md_bytes": 710,
   "claude_md_rules_parsed_back": 10,
   "claude_md_distinct_rules": 10,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversing a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 605,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversing a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 45772,
   "output": 339,
   "cost": 0.09631249999999998,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 50,
   "round": 1,
   "status": "ok",
   "claude_md_bytes": 2846,
   "claude_md_rules_parsed_back": 50,
   "claude_md_distinct_rules": 50,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversal of a string.",
    "Handles the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 2741,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversal of a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles the length of a list.\"\"\"\n    return len(items)\n",
   "context": 47674,
   "output": 319,
   "cost": 0.105703,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 150,
   "round": 1,
   "status": "ok",
   "claude_md_bytes": 8283,
   "claude_md_rules_parsed_back": 150,
   "claude_md_distinct_rules": 150,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversal of a string.",
    "Handles the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 8178,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversal of a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles the length of a list.\"\"\"\n    return len(items)\n",
   "context": 52508,
   "output": 313,
   "cost": 0.130903,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 300,
   "round": 1,
   "status": "ok",
   "claude_md_bytes": 16351,
   "claude_md_rules_parsed_back": 300,
   "claude_md_distinct_rules": 300,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversal of a string.",
    "Handles the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 16246,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversal of a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles the length of a list.\"\"\"\n    return len(items)\n",
   "context": 59457,
   "output": 296,
   "cost": 0.166929,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 500,
   "round": 1,
   "status": "ok",
   "claude_md_bytes": 27492,
   "claude_md_rules_parsed_back": 500,
   "claude_md_distinct_rules": 500,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversal of a string.",
    "Handles the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 27387,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversal of a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles the length of a list.\"\"\"\n    return len(items)\n",
   "context": 68731,
   "output": 296,
   "cost": 0.215568,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 0,
   "round": 1,
   "status": "ok",
   "claude_md_bytes": 553,
   "claude_md_rules_parsed_back": 10,
   "claude_md_distinct_rules": 10,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": false,
   "target_rule_last_present": false,
   "target_rule_char_offset": -1,
   "first_filler_char_offset": 75,
   "target_rule_is_first": false,
   "functions_defined": [
    "add",
    "reverse_string",
    "list_length"
   ],
   "functions_complying": [],
   "n_defined": 3,
   "n_complying": 0,
   "all_complied": false,
   "docstrings_found": [],
   "n_docstrings_complying": 0,
   "all_docstrings_complied": false,
   "last_rule_char_offset": -1,
   "source": "def add(a, b):\n    return a + b\n\n\ndef reverse_string(s):\n    return s[::-1]\n\n\ndef list_length(items):\n    return len(items)\n",
   "context": 45596,
   "output": 217,
   "cost": 0.091759,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 10,
   "round": 2,
   "status": "ok",
   "claude_md_bytes": 710,
   "claude_md_rules_parsed_back": 10,
   "claude_md_distinct_rules": 10,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles the addition of two numbers.",
    "Handles the reversal of a string.",
    "Handles the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 605,
   "source": "def svc_add(a, b):\n    \"\"\"Handles the addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles the reversal of a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles the length of a list.\"\"\"\n    return len(items)\n",
   "context": 45754,
   "output": 321,
   "cost": 0.09568249999999999,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 50,
   "round": 2,
   "status": "ok",
   "claude_md_bytes": 2846,
   "claude_md_rules_parsed_back": 50,
   "claude_md_distinct_rules": 50,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversing a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 2741,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversing a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 47659,
   "output": 302,
   "cost": 0.10516800000000001,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 150,
   "round": 2,
   "status": "ok",
   "claude_md_bytes": 8283,
   "claude_md_rules_parsed_back": 150,
   "claude_md_distinct_rules": 150,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversal of a string.",
    "Handles the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 8178,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversal of a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles the length of a list.\"\"\"\n    return len(items)\n",
   "context": 52483,
   "output": 288,
   "cost": 0.13002799999999998,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 300,
   "round": 2,
   "status": "ok",
   "claude_md_bytes": 16351,
   "claude_md_rules_parsed_back": 300,
   "claude_md_distinct_rules": 300,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversing a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 16246,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversing a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 59469,
   "output": 309,
   "cost": 0.167354,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 500,
   "round": 2,
   "status": "ok",
   "claude_md_bytes": 27492,
   "claude_md_rules_parsed_back": 500,
   "claude_md_distinct_rules": 500,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversal of a string.",
    "Handles the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 27387,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversal of a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles the length of a list.\"\"\"\n    return len(items)\n",
   "context": 68775,
   "output": 340,
   "cost": 0.21710800000000002,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 0,
   "round": 2,
   "status": "ok",
   "claude_md_bytes": 553,
   "claude_md_rules_parsed_back": 10,
   "claude_md_distinct_rules": 10,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": false,
   "target_rule_last_present": false,
   "target_rule_char_offset": -1,
   "first_filler_char_offset": 75,
   "target_rule_is_first": false,
   "functions_defined": [
    "add",
    "reverse_string",
    "list_length"
   ],
   "functions_complying": [],
   "n_defined": 3,
   "n_complying": 0,
   "all_complied": false,
   "docstrings_found": [],
   "n_docstrings_complying": 0,
   "all_docstrings_complied": false,
   "last_rule_char_offset": -1,
   "source": "def add(a, b):\n    return a + b\n\n\ndef reverse_string(s):\n    return s[::-1]\n\n\ndef list_length(items):\n    return len(items)\n",
   "context": 45596,
   "output": 216,
   "cost": 0.091754,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 2,
   "round": 2,
   "status": "ok",
   "claude_md_bytes": 277,
   "claude_md_rules_parsed_back": 2,
   "claude_md_distinct_rules": 2,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": -1,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversal of a string.",
    "Handles the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 172,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversal of a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles the length of a list.\"\"\"\n    return len(items)\n",
   "context": 45347,
   "output": 312,
   "cost": 0.09327799999999999,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 50,
   "round": 3,
   "status": "ok",
   "claude_md_bytes": 2846,
   "claude_md_rules_parsed_back": 50,
   "claude_md_distinct_rules": 50,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversing a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 2741,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversing a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 47624,
   "output": 269,
   "cost": 0.103953,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 150,
   "round": 3,
   "status": "ok",
   "claude_md_bytes": 8283,
   "claude_md_rules_parsed_back": 150,
   "claude_md_distinct_rules": 150,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversal of a string.",
    "Handles the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 8178,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversal of a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles the length of a list.\"\"\"\n    return len(items)\n",
   "context": 52505,
   "output": 308,
   "cost": 0.13078800000000002,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 300,
   "round": 3,
   "status": "ok",
   "claude_md_bytes": 16351,
   "claude_md_rules_parsed_back": 300,
   "claude_md_distinct_rules": 300,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversing a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 16246,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversing a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 59458,
   "output": 299,
   "cost": 0.16697399999999998,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 500,
   "round": 3,
   "status": "ok",
   "claude_md_bytes": 27492,
   "claude_md_rules_parsed_back": 500,
   "claude_md_distinct_rules": 500,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversing a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 27387,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversing a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 68745,
   "output": 308,
   "cost": 0.216048,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 0,
   "round": 3,
   "status": "ok",
   "claude_md_bytes": 553,
   "claude_md_rules_parsed_back": 10,
   "claude_md_distinct_rules": 10,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": false,
   "target_rule_last_present": false,
   "target_rule_char_offset": -1,
   "first_filler_char_offset": 75,
   "target_rule_is_first": false,
   "functions_defined": [
    "add",
    "reverse_string",
    "list_length"
   ],
   "functions_complying": [],
   "n_defined": 3,
   "n_complying": 0,
   "all_complied": false,
   "docstrings_found": [],
   "n_docstrings_complying": 0,
   "all_docstrings_complied": false,
   "last_rule_char_offset": -1,
   "source": "def add(a, b):\n    return a + b\n\n\ndef reverse_string(s):\n    return s[::-1]\n\n\ndef list_length(items):\n    return len(items)\n",
   "context": 45596,
   "output": 217,
   "cost": 0.091759,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 2,
   "round": 3,
   "status": "ok",
   "claude_md_bytes": 277,
   "claude_md_rules_parsed_back": 2,
   "claude_md_distinct_rules": 2,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": -1,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversal of a string.",
    "Handles the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 172,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(s):\n    \"\"\"Handles reversal of a string.\"\"\"\n    return s[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles the length of a list.\"\"\"\n    return len(items)\n",
   "context": 45348,
   "output": 313,
   "cost": 0.09331299999999998,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 10,
   "round": 3,
   "status": "ok",
   "claude_md_bytes": 710,
   "claude_md_rules_parsed_back": 10,
   "claude_md_distinct_rules": 10,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversing a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 605,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversing a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 45742,
   "output": 307,
   "cost": 0.0952525,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 150,
   "round": 4,
   "status": "ok",
   "claude_md_bytes": 8283,
   "claude_md_rules_parsed_back": 150,
   "claude_md_distinct_rules": 150,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversal of a string.",
    "Handles the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 8178,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversal of a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles the length of a list.\"\"\"\n    return len(items)\n",
   "context": 52508,
   "output": 311,
   "cost": 0.130893,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 300,
   "round": 4,
   "status": "ok",
   "claude_md_bytes": 16351,
   "claude_md_rules_parsed_back": 300,
   "claude_md_distinct_rules": 300,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversing a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 16246,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversing a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 59457,
   "output": 296,
   "cost": 0.166929,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 500,
   "round": 4,
   "status": "ok",
   "claude_md_bytes": 27492,
   "claude_md_rules_parsed_back": 500,
   "claude_md_distinct_rules": 500,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversal of a string.",
    "Handles the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 27387,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversal of a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles the length of a list.\"\"\"\n    return len(items)\n",
   "context": 68731,
   "output": 294,
   "cost": 0.215558,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 0,
   "round": 4,
   "status": "ok",
   "claude_md_bytes": 553,
   "claude_md_rules_parsed_back": 10,
   "claude_md_distinct_rules": 10,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": false,
   "target_rule_last_present": false,
   "target_rule_char_offset": -1,
   "first_filler_char_offset": 75,
   "target_rule_is_first": false,
   "functions_defined": [
    "add",
    "reverse_string",
    "list_length"
   ],
   "functions_complying": [],
   "n_defined": 3,
   "n_complying": 0,
   "all_complied": false,
   "docstrings_found": [],
   "n_docstrings_complying": 0,
   "all_docstrings_complied": false,
   "last_rule_char_offset": -1,
   "source": "def add(a, b):\n    return a + b\n\n\ndef reverse_string(s):\n    return s[::-1]\n\n\ndef list_length(items):\n    return len(items)\n",
   "context": 45596,
   "output": 217,
   "cost": 0.091759,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 2,
   "round": 4,
   "status": "ok",
   "claude_md_bytes": 277,
   "claude_md_rules_parsed_back": 2,
   "claude_md_distinct_rules": 2,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": -1,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversal of a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 172,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(s):\n    \"\"\"Handles reversal of a string.\"\"\"\n    return s[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 45305,
   "output": 268,
   "cost": 0.09179799999999999,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 10,
   "round": 4,
   "status": "ok",
   "claude_md_bytes": 710,
   "claude_md_rules_parsed_back": 10,
   "claude_md_distinct_rules": 10,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversal of a string.",
    "Handles the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 605,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversal of a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles the length of a list.\"\"\"\n    return len(items)\n",
   "context": 45816,
   "output": 383,
   "cost": 0.09785250000000001,
   "turns": 2,
   "reply": "DONE"
  },
  {
   "rules": 50,
   "round": 4,
   "status": "ok",
   "claude_md_bytes": 2846,
   "claude_md_rules_parsed_back": 50,
   "claude_md_distinct_rules": 50,
   "ladder_scales_distinct_rules": true,
   "target_rule_present": true,
   "target_rule_last_present": true,
   "target_rule_char_offset": 28,
   "first_filler_char_offset": 164,
   "target_rule_is_first": true,
   "functions_defined": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "functions_complying": [
    "svc_add",
    "svc_reverse_string",
    "svc_list_length"
   ],
   "n_defined": 3,
   "n_complying": 3,
   "all_complied": true,
   "docstrings_found": [
    "Handles addition of two numbers.",
    "Handles reversing a string.",
    "Handles returning the length of a list."
   ],
   "n_docstrings_complying": 3,
   "all_docstrings_complied": true,
   "last_rule_char_offset": 2741,
   "source": "def svc_add(a, b):\n    \"\"\"Handles addition of two numbers.\"\"\"\n    return a + b\n\n\ndef svc_reverse_string(text):\n    \"\"\"Handles reversing a string.\"\"\"\n    return text[::-1]\n\n\ndef svc_list_length(items):\n    \"\"\"Handles returning the length of a list.\"\"\"\n    return len(items)\n",
   "context": 47680,
   "output": 325,
   "cost": 0.10591300000000001,
   "turns": 2,
   "reply": "DONE"
  }
 ]
}