POLYTONE — the AI-native programming language

The generation benchmark

“Leading LLM programming language” is an empirical claim: a model receives a task, writes POLYTONE, and ptc test judges — deterministically, no human in the loop. Two numbers per task, both first-class: pass@1 (the first candidate passes) and pass@2e (after a failure the model sees the actual error and gets one repair attempt — POLYTONE’s thesis is that its errors teach).

Methodology

Results

claude-opus-52026-09-20 (run 11, toolchain 0.48.313 + card v17 evaluated — the first run over the Sprint-306 tasks; generator claude-opus-5 (runs 1–10: claude-fable-5), corpus 52) · workflow-harness

pass@1 47/52 · pass@2e 50/52 · tokens-to-green median 41139 (harness tokens: combined incl. the agent system prompt — comparable across harness runs, not to API usage)

taskpass@1pass@2etok→green
api_status✓✓41095
audio_probe✗✓81857
badge_page✓✓42669
bit_parity✓✓40463
clock_iso✓✓40538
config_port✗✗—
content_tag✓✓40822
csv_report✓✓42071
csv_totals✓✓41131
culled_parts✓✓42560
dice_walk✓✓40797
env_banner✓✓41183
env_mode✓✓40587
fetch_all✓✓41246
grade_book✓✓41626
hex_dump✓✓40536
histogram✓✓40683
image_probe✓✓41147
inventory_load✓✓40582
json_pluck✗✓83750
label_card✓✓41571
log_scan✓✓41867
mesh_probe✓✓40709
model_page✓✓40692
model_parts✗✓83119
money_order✓✓41212
parse_point✓✓41845
pkg_check✗✗—
poster_film✓✓42167
ranked_pick✓✓41343
rider_film✓✓42413
row_sums✓✓40383
run_length✓✓40897
save_report✓✓40935
season_label✓✓40925
set_overlap✓✓40414
shape_area✓✓40500
shape_report✓✓41924
stat_kit✓✓40584
stereo_field✓✓41434
swap_pairs✓✓40452
task_batch✓✓40923
top_scorer✓✓41073
total_of✓✓41007
trait_travel✓✓42281
tune_mix✓✓41385
uniques✓✓40986
video_probe✓✓41026
web_toc✓✓41228
week_later✓✓42035
wipe_reveal✓✓42322
word_stats✓✓41378
claude-fable-52026-08-28 (run 10, toolchain 0.41.266 + card v16 evaluated, corpus 48 — first tier-L measurement) · workflow-harness

pass@1 43/48 · pass@2e 47/48 · tokens-to-green median 85907 (harness tokens: combined incl. the agent system prompt — comparable across harness runs, not to API usage)

taskpass@1pass@2etok→green
api_status✓✓85999
audio_probe✗✓171906
badge_page✓✓86100
bit_parity✓✓85754
clock_iso✓✓85832
config_port✓✓85828
content_tag✓✓85964
csv_report✓✓86790
csv_totals✓✓85849
dice_walk✓✓85948
env_banner✓✓85907
env_mode✓✓85730
fetch_all✓✓85982
grade_book✓✓85781
hex_dump✓✓85699
histogram✓✓85694
image_probe✓✓85776
inventory_load✓✓87759
json_pluck✓✓85791
log_scan✓✓85984
mesh_probe✓✓85746
model_parts✓✓86474
money_order✓✓86103
parse_point✓✓85767
pkg_check✗✓173085
poster_film✓✓86038
ranked_pick✓✓86253
rider_film✓✓86089
row_sums✓✓85703
run_length✓✓85984
save_report✓✓85804
season_label✓✓85747
set_overlap✓✓85861
shape_area✓✓85915
shape_report✓✓86039
stat_kit✓✓86021
stereo_field✓✓85865
swap_pairs✓✓85895
task_batch✓✓85904
top_scorer✓✓85998
total_of✓✓85797
tune_mix✗✓172459
uniques✓✓85846
video_probe✗✓172125
web_toc✗✗—
week_later✓✓85782
wipe_reveal✓✓86027
word_stats✓✓85797
claude-fable-52026-08-28 (run 9, toolchain 0.40.259 + card v15 evaluated, corpus 36) · workflow-harness

pass@1 27/36 · pass@2e 35/36 · tokens-to-green median 82368 (harness tokens: combined incl. the agent system prompt — comparable across harness runs, not to API usage)

taskpass@1pass@2etok→green
api_status✓✓82378
audio_probe✓✓82740
bit_parity✓✓82299
clock_iso✓✓82204
config_port✗✓165699
content_tag✗✓165015
csv_totals✓✓82589
dice_walk✓✓82314
env_mode✓✓82216
grade_book✓✓82475
hex_dump✓✓82157
histogram✓✓82206
image_probe✓✓82319
json_pluck✗✗—
log_scan✓✓82368
mesh_probe✓✓82239
money_order✓✓82484
parse_point✗✓165288
rider_film✗✓167221
row_sums✓✓82081
run_length✓✓82364
save_report✗✓164963
season_label✗✓164883
set_overlap✓✓82231
shape_area✓✓82313
stereo_field✓✓82556
swap_pairs✓✓82263
task_batch✓✓82274
top_scorer✓✓82351
total_of✓✓82401
uniques✓✓82213
video_probe✓✓82263
web_toc✓✓82543
week_later✗✓165795
wipe_reveal✗✓166712
word_stats✓✓82440
claude-fable-52026-08-23 (run 8, toolchain 0.40.252 + card v14 evaluated, corpus 36) · workflow-harness

pass@1 33/36 · pass@2e 36/36 · tokens-to-green median 68924 (harness tokens: combined incl. the agent system prompt — comparable across harness runs, not to API usage)

taskpass@1pass@2etok→green
api_status✓✓69726
audio_probe✓✓69347
bit_parity✓✓68601
clock_iso✓✓68554
config_port✓✓70896
content_tag✓✓68755
csv_totals✓✓69437
dice_walk✓✓68697
env_mode✓✓68547
grade_book✓✓68429
hex_dump✓✓68498
histogram✓✓68509
image_probe✓✓68873
json_pluck✓✓70577
log_scan✓✓70854
mesh_probe✓✓69024
money_order✓✓69621
parse_point✗✓138572
rider_film✗✓140779
row_sums✓✓68505
run_length✓✓68847
save_report✓✓69002
season_label✓✓68586
set_overlap✓✓68362
shape_area✓✓68591
stereo_field✓✓69319
swap_pairs✓✓68555
task_batch✓✓68958
top_scorer✓✓69066
total_of✓✓68887
uniques✓✓68600
video_probe✓✓68890
web_toc✓✓70251
week_later✓✓69937
wipe_reveal✗✓144018
word_stats✓✓68978
claude-fable-52026-08-14 (run 7, toolchain 0.35.239 + card v14, corpus 36) · workflow-harness

pass@1 34/36 · pass@2e 36/36 · tokens-to-green median 62827 (harness tokens: combined incl. the agent system prompt — comparable across harness runs, not to API usage)

taskpass@1pass@2etok→green
api_status✓✓63220
audio_probe✓✓63857
bit_parity✓✓62081
clock_iso✓✓62282
config_port✓✓65270
content_tag✓✓62631
csv_totals✓✓63061
dice_walk✓✓62228
env_mode✓✓62063
grade_book✓✓63908
hex_dump✓✓62190
histogram✓✓61990
image_probe✓✓62940
json_pluck✓✓64443
log_scan✓✓65030
mesh_probe✓✓63003
money_order✓✓63404
parse_point✓✓61959
rider_film✓✓65927
row_sums✓✓62012
run_length✓✓62627
save_report✗✓125537
season_label✓✓62479
set_overlap✓✓61873
shape_area✓✓62239
stereo_field✓✓63284
swap_pairs✓✓62142
task_batch✓✓62198
top_scorer✓✓63275
total_of✓✓62348
uniques✓✓62357
video_probe✓✓62295
web_toc✓✓64580
week_later✓✓64442
wipe_reveal✗✓127583
word_stats✓✓62827
claude-fable-52026-08-11 (run 6, toolchain 0.35.232 + card v14) · workflow-harness

pass@1 33/33 · pass@2e 33/33 · tokens-to-green median 56514 (harness tokens: combined incl. the agent system prompt — comparable across harness runs, not to API usage)

taskpass@1pass@2etok→green
api_status✓✓56619
audio_probe✓✓56530
bit_parity✓✓56499
clock_iso✓✓56460
config_port✓✓56582
content_tag✓✓56516
csv_totals✓✓56600
dice_walk✓✓56534
env_mode✓✓56451
grade_book✓✓56524
hex_dump✓✓56416
histogram✓✓56418
image_probe✓✓56520
json_pluck✓✓56554
log_scan✓✓56521
mesh_probe✓✓56491
money_order✓✓56589
parse_point✓✓56529
row_sums✓✓56432
run_length✓✓56514
save_report✓✓56541
season_label✓✓56524
set_overlap✓✓56443
shape_area✓✓56510
swap_pairs✓✓56474
task_batch✓✓56496
top_scorer✓✓56504
total_of✓✓56514
uniques✓✓56444
video_probe✓✓56458
web_toc✓✓56493
week_later✓✓56547
word_stats✓✓56519
claude-fable-52026-08-11 (run 5, toolchain 0.35.230 + card v13) · workflow-harness

pass@1 30/33 · pass@2e 33/33 · tokens-to-green median 56471 (harness tokens: combined incl. the agent system prompt — comparable across harness runs, not to API usage)

taskpass@1pass@2etok→green
api_status✓✓56521
audio_probe✓✓56471
bit_parity✓✓56435
clock_iso✓✓56429
config_port✓✓56531
content_tag✓✓56456
csv_totals✓✓56583
dice_walk✓✓56480
env_mode✓✓56431
grade_book✓✓56488
hex_dump✓✓56404
histogram✗✓113469
image_probe✓✓56482
json_pluck✗✓114016
log_scan✓✓56471
mesh_probe✓✓56443
money_order✓✓56542
parse_point✓✓56485
row_sums✓✓56378
run_length✓✓56476
save_report✓✓56485
season_label✓✓56426
set_overlap✓✓56410
shape_area✓✓56477
swap_pairs✓✓56435
task_batch✓✓56467
top_scorer✓✓56445
total_of✓✓56485
uniques✓✓56389
video_probe✓✓56437
web_toc✓✓56436
week_later✓✓56487
word_stats✗✓113864
claude-fable-52026-08-11 (run 4, toolchain 0.35.226 + card v12) · workflow-harness

pass@1 30/33 · pass@2e 33/33 · tokens-to-green median 56431 (harness tokens: combined incl. the agent system prompt — comparable across harness runs, not to API usage)

taskpass@1pass@2etok→green
api_status✓✓56462
audio_probe✓✓56446
bit_parity✓✓56384
clock_iso✓✓56381
config_port✓✓56513
content_tag✓✓56411
csv_totals✓✓56526
dice_walk✓✓56460
env_mode✓✓56359
grade_book✓✓56416
hex_dump✓✓56351
histogram✗✓113382
image_probe✓✓56428
json_pluck✗✓113895
log_scan✓✓56431
mesh_probe✓✓56405
money_order✓✓56503
parse_point✗✓113770
row_sums✓✓56342
run_length✓✓56432
save_report✓✓56457
season_label✓✓56378
set_overlap✓✓56434
shape_area✓✓56434
swap_pairs✓✓56392
task_batch✓✓56416
top_scorer✓✓56405
total_of✓✓56435
uniques✓✓56353
video_probe✓✓56387
web_toc✓✓56404
week_later✓✓56446
word_stats✓✓56439
claude-fable-52026-08-08 (run 3, toolchain 0.34.210 + card v12) · workflow-harness

pass@1 30/33 · pass@2e 32/33 · tokens-to-green median 50669 (harness tokens: combined incl. the agent system prompt — comparable across harness runs, not to API usage)

taskpass@1pass@2etok→green
api_status✓✓50695
audio_probe✓✓50681
bit_parity✓✓50645
clock_iso✓✓50633
config_port✓✓50746
content_tag✓✓50649
csv_totals✓✓50765
dice_walk✓✓50689
env_mode✗✓101841
grade_book✓✓50682
hex_dump✓✓50580
histogram✗✓101799
image_probe✓✓50668
json_pluck✗✗—
log_scan✓✓50685
mesh_probe✓✓50636
money_order✓✓50746
parse_point✓✓50669
row_sums✓✓50607
run_length✓✓50662
save_report✓✓50678
season_label✓✓50629
set_overlap✓✓50598
shape_area✓✓50700
swap_pairs✓✓50618
task_batch✓✓50660
top_scorer✓✓50664
total_of✓✓50686
uniques✓✓50607
video_probe✓✓50624
web_toc✓✓50641
week_later✓✓50706
word_stats✓✓50684
claude-fable-52026-08-08 (run 2, toolchain 0.34.203 + card v10) · workflow-harness

pass@1 30/33 · pass@2e 33/33 · tokens-to-green median 50655 (harness tokens: combined incl. the agent system prompt — comparable across harness runs, not to API usage)

taskpass@1pass@2etok→green
api_status✓✓50687
audio_probe✓✓50666
bit_parity✓✓50635
clock_iso✓✓50616
config_port✓✓50727
content_tag✓✓50640
csv_totals✓✓50757
dice_walk✓✓50683
env_mode✓✓50599
grade_book✓✓50667
hex_dump✓✓50572
histogram✗✓101773
image_probe✗✓101976
json_pluck✗✓102320
log_scan✓✓50677
mesh_probe✓✓50632
money_order✓✓50731
parse_point✓✓50661
row_sums✓✓50601
run_length✓✓50655
save_report✓✓50677
season_label✓✓50638
set_overlap✓✓50598
shape_area✓✓50652
swap_pairs✓✓50626
task_batch✓✓50647
top_scorer✓✓50626
total_of✓✓50665
uniques✓✓50587
video_probe✓✓50625
web_toc✓✓50633
week_later✓✓50671
word_stats✓✓50671
claude-fable-52026-08-08 · workflow-harness

pass@1 21/33 · pass@2e 30/33 · tokens-to-green median 50372 (harness tokens: combined incl. the agent system prompt — comparable across harness runs, not to API usage)

taskpass@1pass@2etok→green
api_status✓✓50401
audio_probe✓✓50368
bit_parity✓✓50324
clock_iso✓✓50297
config_port✗✓101628
content_tag✓✓50335
csv_totals✓✓50450
dice_walk✓✓50376
env_mode✓✓50297
grade_book✓✓50356
hex_dump✓✓50281
histogram✗✓101160
image_probe✗✓101370
json_pluck✓✓50385
log_scan✗✓101442
mesh_probe✗✗—
money_order✓✓50422
parse_point✗✓101544
row_sums✗✓101220
run_length✗✓101400
save_report✓✓50375
season_label✓✓50314
set_overlap✓✓50285
shape_area✓✓50351
swap_pairs✗✗—
task_batch✗✓101356
top_scorer✓✓50334
total_of✗✓101495
uniques✓✓50282
video_probe✓✓50308
web_toc✗✗—
week_later✓✓50369
word_stats✓✓50369

The first delta proof (replays)

The phase's first failure dataset is the corpus-authoring session itself (Sprint 133) — an LLM writing POLYTONE cold, its first attempts recorded verbatim. Sprint 138 replays them against the hardened toolchain, CI-gated (gen_replays.rs):

The tier-L delta (Sprints 267–268)

Run 10 (corpus 48) had five first-attempt failures; two of them are the first multi-module replays (pkg_check_attempt1/, tune_mix_attempt1/ — directory form, every file its own entry) and web_toc_attempt2_run10.pt the residual. Sprint 268 rewrote two teaching errors from them (a partial variant pattern shows the exact named form; an element method on a list names the way to an element) and measured COLD over the same five tasks: 3/5 pass@1 (0/5 in run 10). The residual named the last gap — there was no way to write an arm that does nothing — so pass became the empty statement; the same candidates re-judged under it read 4/5, the repair round 5/5. All three replays are pinned in gen_replays.rs.

The run-11 dataset (Sprint 314)

Run 11 (corpus 52, claude-opus-5) had five first-attempt failures, three healed in one round (audio_probe sample_rate for the listed rate — run 10's class on a different model; json_pluck fields for entries — the run-9 residual, named by the error; model_parts shape lines without their indentation — the codec names the rule). The two residuals are ONE class, stacked twice: both TOML tasks first invented the shape of toml.parse (a document with .tables; a Value.Table variant), the repair fixed exactly that and hit the second error behind it — the guessed field entries on toml.Table (pairs). Two stacked errors cost the task under one repair round. Five replays (config_port_attempt{1,2}_run11.pt, pkg_check_attempt{1,2}_run11/, model_parts_attempt1_run11/) are pinned in gen_replays.rs.

The hardening from the run-11 dataset (Sprint 315)

The stacked class got two answers: a field read on a List[Record] now lists the ELEMENT's fields and the way to one (the Sprint-268 method error's twin) — the second error is visible in the first round; the task texts config_port/pkg_check name the shape of toml.parse the way the 266 corrections name every import, model_parts shows its shape line indented. Measured cold over the same five tasks (generator claude-opus-5 = run 11's): 3/5 pass@1 (0/5 in run 11), the repair round 5/5; the two untouched tasks failed on their exact one-round classes (stdlib field names the error names — no card candidate). The three cold candidates are pinned verbatim (*_cold_run11delta).

Fresh pass@1/pass@2e runs against frontier models stay local and BYO-key — this section shows only what has actually run.

Baseline 12 — the held-out protocol

The runs above measure the corpus POLYTONE grew up with. Baseline 12 measures against tasks the language never saw, and against Python and TypeScript on the same tasks. The protocol is stated here before any number exists; the runs wait for the owner's API keys.

tasktierticketvectors
duration_secondsSParse compact durations like 1h30m into seconds15
semver_compareSCompare two semantic versions incl. pre-release precedence15
query_paramsSDecode a URL query string into a map (+, %XX, last wins)15
word_wrapSGreedy word wrap to a width; long words stay whole13
day_of_weekSWeekday of an ISO YYYY-MM-DD date, rejecting impossible dates15
slugifySTitle to URL slug (apostrophes dropped, 40-char cap, untitled)12
luhn_validSLuhn checksum of a card number with spaces14
free_slotsMFree gaps in a working day from overlapping busy slots14
page_linksMPager labels with ellipses and bracketed current page14
ini_flattenMFlatten an INI-like file to section.key with line-numbered errors12
token_bucketMReplay a token-bucket rate limiter over request timestamps11
cron_matchMValidate and match a five-field cron expression15
roman_numeralsMRoman numerals both ways, strict standard form15
settings_diffMDiff two settings maps into change lines and re-apply them with conflict checks15
range_listMExpand 1-3,5 selections and compress number lists back14
cidr_containsMIPv4 CIDR membership with host-bit validation15
order_workflowLOrder lifecycle state machine: create, apply events, replay, summarize15
league_tableLParse match results, rank standings with tie-breaks, print the table14
shift_rosterLParse rota lines, weekly minutes, double-booking conflicts, overtime15
expense_splitLParse shared expenses, exact-cent balances, greedy settlement15

Cold start and agents

Fresh Claude models get only the documentation — the language card, the skills — and write programs and documents that hidden tests judge with the real toolchain. First attempt → after ptc fix (no model). Every round exposed a gap in the card, a skill, a teaching error or a fix; the next row measures after the correction. n is small: a signal, not a measurement — that is Baseline 12.

SetgivenSonnetHaiku
8 programs, round 1the card as it was8/87/8
8 programs, round 1the card after round 18/88/8
8 harder programs (Clock, Http, regex, json, async)the card as it was4/8 → 7/84/8 → 8/8
8 harder programsthe card after round 27/8 → 8/85/8 → 8/8
4 simple media documentsthe media skill as it was4/44/4
4 rich media documentsthe media skill as it was1/41/4
4 rich media documentsthe skill + the full format specs4/44/4
4 rich media documentsthe media skill with its vocabulary4/44/4
4 programs that write mediacard + media skill4/44/4
4 programs of two modulesthe card4/43/4 → 4/4

Agents in the real loop (skills + ptc check / fix / test through a logging shim): every run passed the hidden tests. In runs 1–3 none ran ptc fix — they corrected by hand from the message. Since Sprint 423 ptc check names the fix, since 429 the skill says to run it: in run 4 Haiku used it for the first time (one round to green; its hand correction in the same run took two). Run 5 is one package task: make a library, pass ptc pack, vendor it into an app; it passes when the gate, both hidden test sets and the vendored copy all hold. Run 6 uses a published package: the agent gets only a registry URL, finds the package in the index, vendors it with its dependency over HTTP and calls it. Run 7 is a command-line filter judged by real runs (stdin, stdout, stderr, exit code); run 8 an HTTP service judged by real requests; run 9 a directory tool judged by real files; run 10 a tool that runs git, judged against a real repository. Run 11 repeats run 2's tasks with the evening's skills: Sonnet 15 → 4 ptc calls, Haiku 20 → 9; run 12 repeats run 1's: Sonnet 10 → 3, Haiku 18 → 4.

RunModelhidden testsptc callsptc fix
1Sonnet3/3100
1Haiku3/3180
2Sonnet3/3150
2Haiku3/3200
3Sonnet3/360
3Haiku3/3270
4Sonnet3/360
4Haiku3/3221
5Sonnet1/1110
5Haiku1/1150
6Sonnet1/190
6Haiku1/180
7Sonnet1/170
7Haiku1/170
8Sonnet1/140
8Haiku1/1120
9Sonnet1/180
9Haiku1/1130
10Sonnet1/180
10Haiku1/1110
11Sonnet3/340
11Haiku3/390
12Sonnet3/330
12Haiku3/340
13Sonnet1/1120
13Haiku1/1191
14Sonnet1/1141
14Haiku1/1170

The corpus (58)

21 × tier S · 21 × tier M · 16 × tier L (multi-module: one file per module, each verified as its own entry) — each task: a prompt, a hidden judge, a reference solution.

tasktierarea
api_statusMCapabilities (mocked)
audio_probeMMedia codecs
badge_pageLModules (tier L)
bit_parityMBitwise & encoding
cart_dropSCollections (since Sprint 326, not yet measured)
clock_isoSCapabilities (mocked)
config_portMCapabilities (mocked)
content_tagSBitwise & encoding
csv_reportLModules (tier L)
csv_totalsMData formats
culled_partsLMedia codecs
dice_walkSCapabilities (mocked)
env_bannerLModules (tier L)
env_modeSCapabilities (mocked)
fetch_allLModules (tier L)
grade_bookSCollections
hex_dumpSBitwise & encoding
histogramSCollections
image_probeMMedia codecs
inventory_loadLModules (tier L)
json_pluckMData formats
label_cardLMedia codecs
log_scanSData formats
mesh_probeMMedia codecs
model_pageLMedia codecs
model_partsLModules (tier L)
money_orderMMethods & traits
parse_pointSErrors & Result
pkg_checkLModules (tier L)
poster_filmLModules (tier L)
ranked_pickLModules (tier L)
receipt_lineSPrelude & text (since Sprint 326, not yet measured)
rider_filmMMedia codecs
row_sumsSCollections
run_lengthMPrelude & text
safe_pickSCollections (since Sprint 326, not yet measured)
save_reportMCapabilities (mocked)
score_lineMPrelude & text (since Sprint 326, not yet measured)
season_labelSMethods & traits
set_overlapSCollections
shape_areaSMethods & traits
shape_reportLModules (tier L)
stat_kitLModules (tier L)
stereo_fieldMMedia codecs
swap_pairsSGenerics
tag_toggleMCollections (since Sprint 326, not yet measured)
task_batchMAsync & Tasks
text_afterSPrelude & text (since Sprint 326, not yet measured)
top_scorerSCollections
total_ofSErrors & Result
trait_travelLModules (tier L)
tune_mixLModules (tier L)
uniquesMGenerics
video_probeMMedia codecs
web_tocMMedia codecs
week_laterMData formats
wipe_revealMMedia codecs
word_statsSPrelude & text