roadmodel 0.2.91__tar.gz → 0.2.93__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. {roadmodel-0.2.91 → roadmodel-0.2.93}/PKG-INFO +2 -2
  2. {roadmodel-0.2.91 → roadmodel-0.2.93}/README.md +1 -1
  3. {roadmodel-0.2.91 → roadmodel-0.2.93}/docs/benchmarks.json +92 -92
  4. {roadmodel-0.2.91/roadmodel/data → roadmodel-0.2.93/docs}/catalog.json +2 -2
  5. {roadmodel-0.2.91 → roadmodel-0.2.93}/docs/claude-commands/roadmap-refresh.md +46 -9
  6. {roadmodel-0.2.91/roadmodel/data → roadmodel-0.2.93/docs/claude-commands}/roadmap-step.md +32 -25
  7. {roadmodel-0.2.91 → roadmodel-0.2.93}/docs/model-tier-cost-scale.md +1 -1
  8. {roadmodel-0.2.91/roadmodel/data → roadmodel-0.2.93/docs/templates}/phase-roadmap-template.md +105 -91
  9. {roadmodel-0.2.91/roadmodel/data → roadmodel-0.2.93/docs/templates}/planning-kit-how-to-use.md +4 -2
  10. {roadmodel-0.2.91/roadmodel/data → roadmodel-0.2.93/docs/templates}/project-roadmap-template.md +63 -32
  11. {roadmodel-0.2.91 → roadmodel-0.2.93}/docs/templates/prompt-phase-roadmap.md +19 -14
  12. {roadmodel-0.2.91 → roadmodel-0.2.93}/docs/templates/prompt-project-roadmap.md +3 -2
  13. {roadmodel-0.2.91 → roadmodel-0.2.93}/pyproject.toml +1 -1
  14. {roadmodel-0.2.91 → roadmodel-0.2.93}/roadmodel/data/benchmarks.json +92 -92
  15. {roadmodel-0.2.91/docs → roadmodel-0.2.93/roadmodel/data}/catalog.json +2 -2
  16. {roadmodel-0.2.91 → roadmodel-0.2.93}/roadmodel/data/model-tier-cost-scale.md +1 -1
  17. {roadmodel-0.2.91/docs/templates → roadmodel-0.2.93/roadmodel/data}/phase-roadmap-template.md +105 -91
  18. {roadmodel-0.2.91/docs/templates → roadmodel-0.2.93/roadmodel/data}/planning-kit-how-to-use.md +4 -2
  19. {roadmodel-0.2.91/docs/templates → roadmodel-0.2.93/roadmodel/data}/project-roadmap-template.md +63 -32
  20. {roadmodel-0.2.91 → roadmodel-0.2.93}/roadmodel/data/prompt-phase-roadmap.md +19 -14
  21. {roadmodel-0.2.91 → roadmodel-0.2.93}/roadmodel/data/prompt-project-roadmap.md +3 -2
  22. {roadmodel-0.2.91 → roadmodel-0.2.93}/roadmodel/data/roadmap-refresh.md +46 -9
  23. {roadmodel-0.2.91/docs/claude-commands → roadmodel-0.2.93/roadmodel/data}/roadmap-step.md +32 -25
  24. {roadmodel-0.2.91 → roadmodel-0.2.93}/scripts/update_projects.py +47 -19
  25. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/__init__.py +1 -1
  26. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/cli.py +4 -3
  27. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/mcp_server.py +3 -2
  28. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/scoring.py +174 -46
  29. {roadmodel-0.2.91 → roadmodel-0.2.93}/.github/README.md +0 -0
  30. {roadmodel-0.2.91 → roadmodel-0.2.93}/.gitignore +0 -0
  31. {roadmodel-0.2.91 → roadmodel-0.2.93}/LICENSE +0 -0
  32. {roadmodel-0.2.91 → roadmodel-0.2.93}/NOTICE +0 -0
  33. {roadmodel-0.2.91 → roadmodel-0.2.93}/docs/claude-commands/roadmap-phase.md +0 -0
  34. {roadmodel-0.2.91 → roadmodel-0.2.93}/docs/claude-commands/roadmap-project.md +0 -0
  35. {roadmodel-0.2.91 → roadmodel-0.2.93}/docs/claude-commands/roadmodel-upgrade.md +0 -0
  36. {roadmodel-0.2.91 → roadmodel-0.2.93}/docs/context-windows.json +0 -0
  37. {roadmodel-0.2.91 → roadmodel-0.2.93}/docs/effort-tokens.json +0 -0
  38. {roadmodel-0.2.91 → roadmodel-0.2.93}/docs/model-selector.txt +0 -0
  39. {roadmodel-0.2.91 → roadmodel-0.2.93}/docs/settings-display.md +0 -0
  40. {roadmodel-0.2.91 → roadmodel-0.2.93}/docs/user-context.example.md +0 -0
  41. {roadmodel-0.2.91 → roadmodel-0.2.93}/hatch_build.py +0 -0
  42. {roadmodel-0.2.91 → roadmodel-0.2.93}/infra/README.md +0 -0
  43. {roadmodel-0.2.91 → roadmodel-0.2.93}/infra/gcp-killswitch/README.md +0 -0
  44. {roadmodel-0.2.91 → roadmodel-0.2.93}/infra/supabase/README.md +0 -0
  45. {roadmodel-0.2.91 → roadmodel-0.2.93}/roadmodel/data/context-windows.json +0 -0
  46. {roadmodel-0.2.91 → roadmodel-0.2.93}/roadmodel/data/effort-tokens.json +0 -0
  47. {roadmodel-0.2.91 → roadmodel-0.2.93}/roadmodel/data/model-selector.txt +0 -0
  48. {roadmodel-0.2.91 → roadmodel-0.2.93}/roadmodel/data/roadmap-phase.md +0 -0
  49. {roadmodel-0.2.91 → roadmodel-0.2.93}/roadmodel/data/roadmap-project.md +0 -0
  50. {roadmodel-0.2.91 → roadmodel-0.2.93}/roadmodel/data/roadmodel-upgrade.md +0 -0
  51. {roadmodel-0.2.91 → roadmodel-0.2.93}/roadmodel/data/settings-display.md +0 -0
  52. {roadmodel-0.2.91 → roadmodel-0.2.93}/roadmodel/data/user-context.example.md +0 -0
  53. {roadmodel-0.2.91 → roadmodel-0.2.93}/scripts/agent_context.py +0 -0
  54. {roadmodel-0.2.91 → roadmodel-0.2.93}/scripts/agent_rules.py +0 -0
  55. {roadmodel-0.2.91 → roadmodel-0.2.93}/scripts/updater_lock.py +0 -0
  56. {roadmodel-0.2.91 → roadmodel-0.2.93}/scripts/upgrade_fleet.py +0 -0
  57. {roadmodel-0.2.91 → roadmodel-0.2.93}/scripts/worktree_memory.py +0 -0
  58. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/__main__.py +0 -0
  59. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/config.py +0 -0
  60. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/cost.py +0 -0
  61. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/errors.py +0 -0
  62. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/private_files.py +0 -0
  63. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/providers/__init__.py +0 -0
  64. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/providers/_safety.py +0 -0
  65. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/providers/anthropic.py +0 -0
  66. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/providers/google.py +0 -0
  67. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/providers/openai.py +0 -0
  68. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/providers/openai_compatible.py +0 -0
  69. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/providers/registry.py +0 -0
  70. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/recommend.py +0 -0
  71. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/series.py +0 -0
  72. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/usage.py +0 -0
  73. {roadmodel-0.2.91 → roadmodel-0.2.93}/src/roadmodel/user_context.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: roadmodel
3
- Version: 0.2.91
3
+ Version: 0.2.93
4
4
  Summary: BYO-key CLI that recommends the right AI model, platform, and settings for a prompt.
5
5
  Project-URL: Homepage, https://roadmodel.ai
6
6
  Project-URL: Repository, https://github.com/nathanramoscfa/roadmodel
@@ -611,7 +611,7 @@ server and the reasoning-effort default in parity automatically.
611
611
  | `roadmodel recommend --user-context PATH` | Override the user-context.md location for this invocation. |
612
612
  | `roadmodel score --category C --complexity X` | Rank (model, platform, effort) candidates in code for a classified task — no engine call. See [docs/scoring-model.md](docs/scoring-model.md). |
613
613
  | `roadmodel backup --category C --complexity X --model M --effort E` | Name the cross-maker backup for a pick, by the rule /recommend uses — no engine call. Prints the roadmap Settings Backup cell, and first a `MODEL` cell when the pick's platform offers a newer version of its model (GPT-6 Sol → GPT-6.1 Sol). |
614
- | `roadmodel ladder --category C --complexity X [--novel] [--phase]` | Print a roadmap Settings table as the full ladder: Cost / Balanced / Quality, each with its effort and a cross-maker backup, plus the column the step runs and the rule for a tight or exhausted pool — no engine call. |
614
+ | `roadmodel ladder --category C --complexity X [--novel] [--phase]` | Print a roadmap Settings table as the full ladder: Cost / Balanced / Quality, each ranked three deep (pick, runner-up, cross-maker backup) with each option's effort and AA Index, plus the column the step runs and the rule for a tight or exhausted pool — no engine call. |
615
615
  | `roadmodel catalog show` | Print the bundled `model-selector.txt` (use `--doc tier-cost-scale` for the price doc). |
616
616
  | `roadmodel catalog path` | Print the on-disk path of the bundled catalog document (same `--doc` flag). |
617
617
  | `roadmodel context show` | Print the resolved `user-context.md` file. |
@@ -360,7 +360,7 @@ server and the reasoning-effort default in parity automatically.
360
360
  | `roadmodel recommend --user-context PATH` | Override the user-context.md location for this invocation. |
361
361
  | `roadmodel score --category C --complexity X` | Rank (model, platform, effort) candidates in code for a classified task — no engine call. See [docs/scoring-model.md](docs/scoring-model.md). |
362
362
  | `roadmodel backup --category C --complexity X --model M --effort E` | Name the cross-maker backup for a pick, by the rule /recommend uses — no engine call. Prints the roadmap Settings Backup cell, and first a `MODEL` cell when the pick's platform offers a newer version of its model (GPT-6 Sol → GPT-6.1 Sol). |
363
- | `roadmodel ladder --category C --complexity X [--novel] [--phase]` | Print a roadmap Settings table as the full ladder: Cost / Balanced / Quality, each with its effort and a cross-maker backup, plus the column the step runs and the rule for a tight or exhausted pool — no engine call. |
363
+ | `roadmodel ladder --category C --complexity X [--novel] [--phase]` | Print a roadmap Settings table as the full ladder: Cost / Balanced / Quality, each ranked three deep (pick, runner-up, cross-maker backup) with each option's effort and AA Index, plus the column the step runs and the rule for a tight or exhausted pool — no engine call. |
364
364
  | `roadmodel catalog show` | Print the bundled `model-selector.txt` (use `--doc tier-cost-scale` for the price doc). |
365
365
  | `roadmodel catalog path` | Print the on-disk path of the bundled catalog document (same `--doc` flag). |
366
366
  | `roadmodel context show` | Print the resolved `user-context.md` file. |
@@ -6,7 +6,7 @@
6
6
  "endpoint": "https://artificialanalysis.ai/api/v2/data/llms/models",
7
7
  "attribution": "Benchmark data © Artificial Analysis, used under its API terms with attribution."
8
8
  },
9
- "generated_at_utc": "2026-10-20T01:29:23Z",
9
+ "generated_at_utc": "2026-10-23T23:43:03Z",
10
10
  "model_count": 59,
11
11
  "unmapped": [],
12
12
  "missing_slugs": [],
@@ -100,8 +100,8 @@
100
100
  "tau2": null,
101
101
  "tau_banking": 0.472164948453608
102
102
  },
103
- "median_output_tokens_per_second": 72.606,
104
- "median_time_to_first_token_seconds": 187.594,
103
+ "median_output_tokens_per_second": 70.611,
104
+ "median_time_to_first_token_seconds": 125.093,
105
105
  "aa_effort": "max",
106
106
  "effort_variants": {
107
107
  "low": {
@@ -118,7 +118,7 @@
118
118
  "terminalbench_v4_0": 0.404040404040404,
119
119
  "tau_banking": 0.389690721649485
120
120
  },
121
- "median_output_tokens_per_second": 50.221
121
+ "median_output_tokens_per_second": 55.748
122
122
  },
123
123
  "medium": {
124
124
  "aa_slug": "claude-fable-5-1-medium",
@@ -134,7 +134,7 @@
134
134
  "terminalbench_v4_0": 0.44949494949495,
135
135
  "tau_banking": 0.410309278350515
136
136
  },
137
- "median_output_tokens_per_second": 51.602
137
+ "median_output_tokens_per_second": 56.095
138
138
  },
139
139
  "high": {
140
140
  "aa_slug": "claude-fable-5-1-high",
@@ -150,7 +150,7 @@
150
150
  "terminalbench_v4_0": 0.52020202020202,
151
151
  "tau_banking": 0.430927835051546
152
152
  },
153
- "median_output_tokens_per_second": 50.809
153
+ "median_output_tokens_per_second": 54.905
154
154
  },
155
155
  "xhigh": {
156
156
  "aa_slug": "claude-fable-5-1-xhigh",
@@ -166,7 +166,7 @@
166
166
  "terminalbench_v4_0": 0.55050505050505,
167
167
  "tau_banking": 0.457731958762887
168
168
  },
169
- "median_output_tokens_per_second": 56.948
169
+ "median_output_tokens_per_second": 58.425
170
170
  }
171
171
  }
172
172
  },
@@ -196,8 +196,8 @@
196
196
  "tau2": null,
197
197
  "tau_banking": null
198
198
  },
199
- "median_output_tokens_per_second": 238.822,
200
- "median_time_to_first_token_seconds": 279.366,
199
+ "median_output_tokens_per_second": 243.722,
200
+ "median_time_to_first_token_seconds": 216.792,
201
201
  "aa_effort": "max",
202
202
  "effort_variants": {
203
203
  "low": {
@@ -210,7 +210,7 @@
210
210
  "lcr": 0.72,
211
211
  "terminalbench_v4_0": 0.126262626262626
212
212
  },
213
- "median_output_tokens_per_second": 148.526
213
+ "median_output_tokens_per_second": 166.661
214
214
  },
215
215
  "medium": {
216
216
  "aa_slug": "claude-haiku-5-5-medium",
@@ -222,7 +222,7 @@
222
222
  "lcr": 0.773333333333333,
223
223
  "terminalbench_v4_0": 0.151515151515152
224
224
  },
225
- "median_output_tokens_per_second": 153.278
225
+ "median_output_tokens_per_second": 162.12
226
226
  },
227
227
  "high": {
228
228
  "aa_slug": "claude-haiku-5-5-high",
@@ -234,7 +234,7 @@
234
234
  "lcr": 0.773333333333333,
235
235
  "terminalbench_v4_0": 0.217171717171717
236
236
  },
237
- "median_output_tokens_per_second": 165.778
237
+ "median_output_tokens_per_second": 168.589
238
238
  },
239
239
  "xhigh": {
240
240
  "aa_slug": "claude-haiku-5-5-xhigh",
@@ -246,7 +246,7 @@
246
246
  "lcr": 0.783333333333333,
247
247
  "terminalbench_v4_0": 0.292929292929293
248
248
  },
249
- "median_output_tokens_per_second": 193.588
249
+ "median_output_tokens_per_second": 183.969
250
250
  }
251
251
  }
252
252
  },
@@ -372,8 +372,8 @@
372
372
  "tau2": null,
373
373
  "tau_banking": null
374
374
  },
375
- "median_output_tokens_per_second": 95.965,
376
- "median_time_to_first_token_seconds": 620.587,
375
+ "median_output_tokens_per_second": 97.21,
376
+ "median_time_to_first_token_seconds": 403.924,
377
377
  "aa_effort": "max",
378
378
  "effort_variants": {
379
379
  "low": {
@@ -386,7 +386,7 @@
386
386
  "lcr": 0.806666666666667,
387
387
  "terminalbench_v4_0": 0.313131313131313
388
388
  },
389
- "median_output_tokens_per_second": 74.167
389
+ "median_output_tokens_per_second": 76.525
390
390
  },
391
391
  "medium": {
392
392
  "aa_slug": "claude-opus-5-5-medium",
@@ -398,7 +398,7 @@
398
398
  "lcr": 0.843333333333333,
399
399
  "terminalbench_v4_0": 0.525252525252525
400
400
  },
401
- "median_output_tokens_per_second": 72.979
401
+ "median_output_tokens_per_second": 76.933
402
402
  },
403
403
  "high": {
404
404
  "aa_slug": "claude-opus-5-5-high",
@@ -410,7 +410,7 @@
410
410
  "lcr": 0.826666666666667,
411
411
  "terminalbench_v4_0": 0.565656565656566
412
412
  },
413
- "median_output_tokens_per_second": 73.95
413
+ "median_output_tokens_per_second": 78.071
414
414
  },
415
415
  "xhigh": {
416
416
  "aa_slug": "claude-opus-5-5-xhigh",
@@ -422,7 +422,7 @@
422
422
  "lcr": 0.846666666666667,
423
423
  "terminalbench_v4_0": 0.595959595959596
424
424
  },
425
- "median_output_tokens_per_second": 76.535
425
+ "median_output_tokens_per_second": 81.762
426
426
  }
427
427
  }
428
428
  },
@@ -532,8 +532,8 @@
532
532
  "tau2": null,
533
533
  "tau_banking": null
534
534
  },
535
- "median_output_tokens_per_second": 137.117,
536
- "median_time_to_first_token_seconds": 322.006,
535
+ "median_output_tokens_per_second": 137.827,
536
+ "median_time_to_first_token_seconds": 271.952,
537
537
  "aa_effort": "max",
538
538
  "effort_variants": {
539
539
  "low": {
@@ -546,7 +546,7 @@
546
546
  "lcr": 0.76,
547
547
  "terminalbench_v4_0": 0.207070707070707
548
548
  },
549
- "median_output_tokens_per_second": 91.038
549
+ "median_output_tokens_per_second": 102.528
550
550
  },
551
551
  "medium": {
552
552
  "aa_slug": "claude-sonnet-5-5-medium",
@@ -558,7 +558,7 @@
558
558
  "lcr": 0.763333333333333,
559
559
  "terminalbench_v4_0": 0.297979797979798
560
560
  },
561
- "median_output_tokens_per_second": 91.762
561
+ "median_output_tokens_per_second": 99.833
562
562
  },
563
563
  "high": {
564
564
  "aa_slug": "claude-sonnet-5-5-high",
@@ -570,7 +570,7 @@
570
570
  "lcr": 0.78,
571
571
  "terminalbench_v4_0": 0.439393939393939
572
572
  },
573
- "median_output_tokens_per_second": 98.359
573
+ "median_output_tokens_per_second": 106.373
574
574
  },
575
575
  "xhigh": {
576
576
  "aa_slug": "claude-sonnet-5-5-xhigh",
@@ -582,7 +582,7 @@
582
582
  "lcr": 0.796666666666667,
583
583
  "terminalbench_v4_0": 0.570707070707071
584
584
  },
585
- "median_output_tokens_per_second": 97.737
585
+ "median_output_tokens_per_second": 105.47
586
586
  }
587
587
  }
588
588
  },
@@ -612,8 +612,8 @@
612
612
  "tau2": null,
613
613
  "tau_banking": null
614
614
  },
615
- "median_output_tokens_per_second": 231.727,
616
- "median_time_to_first_token_seconds": 0.701,
615
+ "median_output_tokens_per_second": 0,
616
+ "median_time_to_first_token_seconds": 0,
617
617
  "aa_effort": "max",
618
618
  "effort_variants": {}
619
619
  },
@@ -643,8 +643,8 @@
643
643
  "tau2": null,
644
644
  "tau_banking": 0.395876288659794
645
645
  },
646
- "median_output_tokens_per_second": 95.868,
647
- "median_time_to_first_token_seconds": 1.045,
646
+ "median_output_tokens_per_second": 83.591,
647
+ "median_time_to_first_token_seconds": 1.089,
648
648
  "aa_effort": "max",
649
649
  "effort_variants": {}
650
650
  },
@@ -817,8 +817,8 @@
817
817
  "tau2": 0.956140350877193,
818
818
  "tau_banking": 0.214432989690722
819
819
  },
820
- "median_output_tokens_per_second": 128.016,
821
- "median_time_to_first_token_seconds": 14.735,
820
+ "median_output_tokens_per_second": 134.017,
821
+ "median_time_to_first_token_seconds": 18.074,
822
822
  "aa_effort": null,
823
823
  "effort_variants": {}
824
824
  },
@@ -908,8 +908,8 @@
908
908
  "tau2": null,
909
909
  "tau_banking": 0.175257731958763
910
910
  },
911
- "median_output_tokens_per_second": 393.608,
912
- "median_time_to_first_token_seconds": 4.671,
911
+ "median_output_tokens_per_second": 408.724,
912
+ "median_time_to_first_token_seconds": 5.282,
913
913
  "aa_effort": null,
914
914
  "effort_variants": {}
915
915
  },
@@ -1032,8 +1032,8 @@
1032
1032
  "tau2": null,
1033
1033
  "tau_banking": 0.449484536082474
1034
1034
  },
1035
- "median_output_tokens_per_second": 140.053,
1036
- "median_time_to_first_token_seconds": 15.532,
1035
+ "median_output_tokens_per_second": 128.372,
1036
+ "median_time_to_first_token_seconds": 16.604,
1037
1037
  "aa_effort": "high",
1038
1038
  "effort_variants": {
1039
1039
  "low": {
@@ -1096,8 +1096,8 @@
1096
1096
  "tau2": null,
1097
1097
  "tau_banking": null
1098
1098
  },
1099
- "median_output_tokens_per_second": 81.009,
1100
- "median_time_to_first_token_seconds": 29.413,
1099
+ "median_output_tokens_per_second": 79.973,
1100
+ "median_time_to_first_token_seconds": 29.896,
1101
1101
  "aa_effort": "high",
1102
1102
  "effort_variants": {}
1103
1103
  },
@@ -1220,8 +1220,8 @@
1220
1220
  "tau2": null,
1221
1221
  "tau_banking": 0.503092783505155
1222
1222
  },
1223
- "median_output_tokens_per_second": 76.005,
1224
- "median_time_to_first_token_seconds": 2.68,
1223
+ "median_output_tokens_per_second": 65.845,
1224
+ "median_time_to_first_token_seconds": 2.674,
1225
1225
  "aa_effort": "max",
1226
1226
  "effort_variants": {
1227
1227
  "low": {
@@ -1234,7 +1234,7 @@
1234
1234
  "lcr": 0.726666666666667,
1235
1235
  "terminalbench_v4_0": 0.348484848484849
1236
1236
  },
1237
- "median_output_tokens_per_second": 87.498
1237
+ "median_output_tokens_per_second": 75.269
1238
1238
  }
1239
1239
  }
1240
1240
  },
@@ -1264,8 +1264,8 @@
1264
1264
  "tau2": null,
1265
1265
  "tau_banking": 0.472164948453608
1266
1266
  },
1267
- "median_output_tokens_per_second": 76.49,
1268
- "median_time_to_first_token_seconds": 2.074,
1267
+ "median_output_tokens_per_second": 68.732,
1268
+ "median_time_to_first_token_seconds": 2.483,
1269
1269
  "aa_effort": null,
1270
1270
  "effort_variants": {}
1271
1271
  },
@@ -1596,8 +1596,8 @@
1596
1596
  "tau2": 0.859649122807018,
1597
1597
  "tau_banking": null
1598
1598
  },
1599
- "median_output_tokens_per_second": 117.588,
1600
- "median_time_to_first_token_seconds": 44.852,
1599
+ "median_output_tokens_per_second": 80.495,
1600
+ "median_time_to_first_token_seconds": 42.473,
1601
1601
  "aa_effort": "xhigh",
1602
1602
  "effort_variants": {}
1603
1603
  },
@@ -2056,8 +2056,8 @@
2056
2056
  "tau2": 0.862573099415205,
2057
2057
  "tau_banking": 0.402061855670103
2058
2058
  },
2059
- "median_output_tokens_per_second": 139.684,
2060
- "median_time_to_first_token_seconds": 195.754,
2059
+ "median_output_tokens_per_second": 129.604,
2060
+ "median_time_to_first_token_seconds": 71.518,
2061
2061
  "aa_effort": "max",
2062
2062
  "effort_variants": {
2063
2063
  "low": {
@@ -2077,7 +2077,7 @@
2077
2077
  "tau2": 0.605263157894737,
2078
2078
  "tau_banking": 0.187628865979381
2079
2079
  },
2080
- "median_output_tokens_per_second": 92.011
2080
+ "median_output_tokens_per_second": 104.899
2081
2081
  },
2082
2082
  "medium": {
2083
2083
  "aa_slug": "gpt-5-6-terra-medium",
@@ -2095,7 +2095,7 @@
2095
2095
  "tau2": 0.728070175438596,
2096
2096
  "tau_banking": 0.255670103092783
2097
2097
  },
2098
- "median_output_tokens_per_second": 98.024
2098
+ "median_output_tokens_per_second": 107.351
2099
2099
  },
2100
2100
  "high": {
2101
2101
  "aa_slug": "gpt-5-6-terra-high",
@@ -2114,7 +2114,7 @@
2114
2114
  "tau2": 0.783625730994152,
2115
2115
  "tau_banking": 0.28659793814433
2116
2116
  },
2117
- "median_output_tokens_per_second": 103.772
2117
+ "median_output_tokens_per_second": 106.103
2118
2118
  },
2119
2119
  "xhigh": {
2120
2120
  "aa_slug": "gpt-5-6-terra-xhigh",
@@ -2133,7 +2133,7 @@
2133
2133
  "tau2": 0.804093567251462,
2134
2134
  "tau_banking": 0.296907216494845
2135
2135
  },
2136
- "median_output_tokens_per_second": 110.081
2136
+ "median_output_tokens_per_second": 117.72
2137
2137
  }
2138
2138
  }
2139
2139
  },
@@ -2163,8 +2163,8 @@
2163
2163
  "tau2": null,
2164
2164
  "tau_banking": 0.414432989690722
2165
2165
  },
2166
- "median_output_tokens_per_second": 68.466,
2167
- "median_time_to_first_token_seconds": 220.44,
2166
+ "median_output_tokens_per_second": 63.825,
2167
+ "median_time_to_first_token_seconds": 181.63,
2168
2168
  "aa_effort": "max",
2169
2169
  "effort_variants": {
2170
2170
  "low": {
@@ -2181,7 +2181,7 @@
2181
2181
  "terminalbench_v4_0": 0.419191919191919,
2182
2182
  "tau_banking": 0.319587628865979
2183
2183
  },
2184
- "median_output_tokens_per_second": 55.769
2184
+ "median_output_tokens_per_second": 52.623
2185
2185
  },
2186
2186
  "medium": {
2187
2187
  "aa_slug": "gpt-6-astra-medium",
@@ -2197,7 +2197,7 @@
2197
2197
  "terminalbench_v4_0": 0.494949494949495,
2198
2198
  "tau_banking": 0.354639175257732
2199
2199
  },
2200
- "median_output_tokens_per_second": 53.119
2200
+ "median_output_tokens_per_second": 51.981
2201
2201
  },
2202
2202
  "high": {
2203
2203
  "aa_slug": "gpt-6-astra-high",
@@ -2213,7 +2213,7 @@
2213
2213
  "terminalbench_v4_0": 0.54040404040404,
2214
2214
  "tau_banking": 0.4
2215
2215
  },
2216
- "median_output_tokens_per_second": 56.392
2216
+ "median_output_tokens_per_second": 51.428
2217
2217
  },
2218
2218
  "xhigh": {
2219
2219
  "aa_slug": "gpt-6-astra-xhigh",
@@ -2229,7 +2229,7 @@
2229
2229
  "terminalbench_v4_0": 0.595959595959596,
2230
2230
  "tau_banking": 0.430927835051546
2231
2231
  },
2232
- "median_output_tokens_per_second": 61.104
2232
+ "median_output_tokens_per_second": 61.195
2233
2233
  }
2234
2234
  }
2235
2235
  },
@@ -2259,8 +2259,8 @@
2259
2259
  "tau2": null,
2260
2260
  "tau_banking": null
2261
2261
  },
2262
- "median_output_tokens_per_second": 126.161,
2263
- "median_time_to_first_token_seconds": 106.434,
2262
+ "median_output_tokens_per_second": 146.56,
2263
+ "median_time_to_first_token_seconds": 58.336,
2264
2264
  "aa_effort": "max",
2265
2265
  "effort_variants": {
2266
2266
  "low": {
@@ -2273,7 +2273,7 @@
2273
2273
  "lcr": 0.74,
2274
2274
  "terminalbench_v4_0": 0
2275
2275
  },
2276
- "median_output_tokens_per_second": 115.423
2276
+ "median_output_tokens_per_second": 116.978
2277
2277
  },
2278
2278
  "medium": {
2279
2279
  "aa_slug": "gpt-6-luna-medium",
@@ -2285,7 +2285,7 @@
2285
2285
  "lcr": 0.783333333333333,
2286
2286
  "terminalbench_v4_0": 0.0252525252525253
2287
2287
  },
2288
- "median_output_tokens_per_second": 0
2288
+ "median_output_tokens_per_second": 125.437
2289
2289
  },
2290
2290
  "high": {
2291
2291
  "aa_slug": "gpt-6-luna-high",
@@ -2297,7 +2297,7 @@
2297
2297
  "lcr": 0.793333333333333,
2298
2298
  "terminalbench_v4_0": 0.0454545454545455
2299
2299
  },
2300
- "median_output_tokens_per_second": 118.257
2300
+ "median_output_tokens_per_second": 111.742
2301
2301
  },
2302
2302
  "xhigh": {
2303
2303
  "aa_slug": "gpt-6-luna-xhigh",
@@ -2309,7 +2309,7 @@
2309
2309
  "lcr": 0.8,
2310
2310
  "terminalbench_v4_0": 0.0808080808080808
2311
2311
  },
2312
- "median_output_tokens_per_second": 113.619
2312
+ "median_output_tokens_per_second": 107.513
2313
2313
  }
2314
2314
  }
2315
2315
  },
@@ -2419,8 +2419,8 @@
2419
2419
  "tau2": null,
2420
2420
  "tau_banking": null
2421
2421
  },
2422
- "median_output_tokens_per_second": 52.211,
2423
- "median_time_to_first_token_seconds": 258.287,
2422
+ "median_output_tokens_per_second": 58.876,
2423
+ "median_time_to_first_token_seconds": 144.396,
2424
2424
  "aa_effort": "max",
2425
2425
  "effort_variants": {
2426
2426
  "low": {
@@ -2433,7 +2433,7 @@
2433
2433
  "lcr": 0.84,
2434
2434
  "terminalbench_v4_0": 0.308080808080808
2435
2435
  },
2436
- "median_output_tokens_per_second": 43.006
2436
+ "median_output_tokens_per_second": 50.904
2437
2437
  },
2438
2438
  "medium": {
2439
2439
  "aa_slug": "gpt-6-1-sol-medium",
@@ -2445,7 +2445,7 @@
2445
2445
  "lcr": 0.833333333333333,
2446
2446
  "terminalbench_v4_0": 0.47979797979798
2447
2447
  },
2448
- "median_output_tokens_per_second": 42.634
2448
+ "median_output_tokens_per_second": 49.146
2449
2449
  },
2450
2450
  "high": {
2451
2451
  "aa_slug": "gpt-6-1-sol-high",
@@ -2457,7 +2457,7 @@
2457
2457
  "lcr": 0.823333333333333,
2458
2458
  "terminalbench_v4_0": 0.515151515151515
2459
2459
  },
2460
- "median_output_tokens_per_second": 47.308
2460
+ "median_output_tokens_per_second": 49.388
2461
2461
  },
2462
2462
  "xhigh": {
2463
2463
  "aa_slug": "gpt-6-1-sol-xhigh",
@@ -2469,7 +2469,7 @@
2469
2469
  "lcr": 0.796666666666667,
2470
2470
  "terminalbench_v4_0": 0.54040404040404
2471
2471
  },
2472
- "median_output_tokens_per_second": 49.454
2472
+ "median_output_tokens_per_second": 58.185
2473
2473
  }
2474
2474
  }
2475
2475
  },
@@ -2499,8 +2499,8 @@
2499
2499
  "tau2": 0.657894736842105,
2500
2500
  "tau_banking": 0.127835051546392
2501
2501
  },
2502
- "median_output_tokens_per_second": 259.362,
2503
- "median_time_to_first_token_seconds": 0.495,
2502
+ "median_output_tokens_per_second": 202.247,
2503
+ "median_time_to_first_token_seconds": 0.486,
2504
2504
  "aa_effort": "high",
2505
2505
  "effort_variants": {
2506
2506
  "low": {
@@ -2522,7 +2522,7 @@
2522
2522
  "tau2": 0.450292397660819,
2523
2523
  "tau_banking": 0.0288659793814433
2524
2524
  },
2525
- "median_output_tokens_per_second": 254.032
2525
+ "median_output_tokens_per_second": 247.597
2526
2526
  }
2527
2527
  }
2528
2528
  },
@@ -2552,8 +2552,8 @@
2552
2552
  "tau2": 0.60233918128655,
2553
2553
  "tau_banking": 0.0701030927835052
2554
2554
  },
2555
- "median_output_tokens_per_second": 251.271,
2556
- "median_time_to_first_token_seconds": 0.401,
2555
+ "median_output_tokens_per_second": 167.821,
2556
+ "median_time_to_first_token_seconds": 0.463,
2557
2557
  "aa_effort": "high",
2558
2558
  "effort_variants": {
2559
2559
  "low": {
@@ -2572,7 +2572,7 @@
2572
2572
  "terminalbench_hard": 0.0454545454545455,
2573
2573
  "tau2": 0.502923976608187
2574
2574
  },
2575
- "median_output_tokens_per_second": 276.709
2575
+ "median_output_tokens_per_second": 223.167
2576
2576
  }
2577
2577
  }
2578
2578
  },
@@ -2742,8 +2742,8 @@
2742
2742
  "tau2": null,
2743
2743
  "tau_banking": null
2744
2744
  },
2745
- "median_output_tokens_per_second": 72.357,
2746
- "median_time_to_first_token_seconds": 21.703,
2745
+ "median_output_tokens_per_second": 88.851,
2746
+ "median_time_to_first_token_seconds": 13.77,
2747
2747
  "aa_effort": "xhigh",
2748
2748
  "effort_variants": {
2749
2749
  "low": {
@@ -2756,7 +2756,7 @@
2756
2756
  "lcr": 0.8,
2757
2757
  "terminalbench_v4_0": 0.161616161616162
2758
2758
  },
2759
- "median_output_tokens_per_second": 60.826
2759
+ "median_output_tokens_per_second": 71.198
2760
2760
  },
2761
2761
  "high": {
2762
2762
  "aa_slug": "grok-4-7-high",
@@ -2768,7 +2768,7 @@
2768
2768
  "lcr": 0.77,
2769
2769
  "terminalbench_v4_0": 0.247474747474747
2770
2770
  },
2771
- "median_output_tokens_per_second": 73.681
2771
+ "median_output_tokens_per_second": 85.921
2772
2772
  }
2773
2773
  }
2774
2774
  },
@@ -2798,8 +2798,8 @@
2798
2798
  "tau2": 0.900584795321637,
2799
2799
  "tau_banking": 0.202061855670103
2800
2800
  },
2801
- "median_output_tokens_per_second": 52.069,
2802
- "median_time_to_first_token_seconds": 1.162,
2801
+ "median_output_tokens_per_second": 45.41,
2802
+ "median_time_to_first_token_seconds": 1.151,
2803
2803
  "aa_effort": null,
2804
2804
  "effort_variants": {}
2805
2805
  },
@@ -2829,8 +2829,8 @@
2829
2829
  "tau2": null,
2830
2830
  "tau_banking": 0.45979381443299
2831
2831
  },
2832
- "median_output_tokens_per_second": 40.71,
2833
- "median_time_to_first_token_seconds": 3.084,
2832
+ "median_output_tokens_per_second": 38.856,
2833
+ "median_time_to_first_token_seconds": 3.003,
2834
2834
  "aa_effort": "max",
2835
2835
  "effort_variants": {
2836
2836
  "low": {
@@ -2847,7 +2847,7 @@
2847
2847
  "terminalbench_v4_0": 0.126262626262626,
2848
2848
  "tau_banking": 0.416494845360825
2849
2849
  },
2850
- "median_output_tokens_per_second": 39.625
2850
+ "median_output_tokens_per_second": 37.164
2851
2851
  }
2852
2852
  }
2853
2853
  },
@@ -2908,8 +2908,8 @@
2908
2908
  "tau2": 0.941520467836257,
2909
2909
  "tau_banking": 0.150515463917526
2910
2910
  },
2911
- "median_output_tokens_per_second": 151.809,
2912
- "median_time_to_first_token_seconds": 0.705,
2911
+ "median_output_tokens_per_second": 156.771,
2912
+ "median_time_to_first_token_seconds": 0.691,
2913
2913
  "aa_effort": null,
2914
2914
  "effort_variants": {}
2915
2915
  },
@@ -2939,8 +2939,8 @@
2939
2939
  "tau2": 0.412280701754386,
2940
2940
  "tau_banking": 0.0494845360824742
2941
2941
  },
2942
- "median_output_tokens_per_second": 173.612,
2943
- "median_time_to_first_token_seconds": 0.638,
2942
+ "median_output_tokens_per_second": 182.195,
2943
+ "median_time_to_first_token_seconds": 0.617,
2944
2944
  "aa_effort": null,
2945
2945
  "effort_variants": {}
2946
2946
  },
@@ -2970,8 +2970,8 @@
2970
2970
  "tau2": null,
2971
2971
  "tau_banking": 0.505154639175258
2972
2972
  },
2973
- "median_output_tokens_per_second": 114.302,
2974
- "median_time_to_first_token_seconds": 38.237,
2973
+ "median_output_tokens_per_second": 98.66,
2974
+ "median_time_to_first_token_seconds": 54.571,
2975
2975
  "aa_effort": "max",
2976
2976
  "effort_variants": {
2977
2977
  "xhigh": {
@@ -2988,7 +2988,7 @@
2988
2988
  "terminalbench_v4_0": 0.166666666666667,
2989
2989
  "tau_banking": 0.472164948453608
2990
2990
  },
2991
- "median_output_tokens_per_second": 273.793
2991
+ "median_output_tokens_per_second": 402.022
2992
2992
  }
2993
2993
  }
2994
2994
  },
@@ -3018,8 +3018,8 @@
3018
3018
  "tau2": null,
3019
3019
  "tau_banking": null
3020
3020
  },
3021
- "median_output_tokens_per_second": 136.078,
3022
- "median_time_to_first_token_seconds": 35.1,
3021
+ "median_output_tokens_per_second": 149.093,
3022
+ "median_time_to_first_token_seconds": 31.086,
3023
3023
  "aa_effort": "max",
3024
3024
  "effort_variants": {}
3025
3025
  },
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "schema_version": "4",
3
3
  "output_contract_version": 2,
4
- "generated_at_utc": "2026-10-21T02:30:06Z",
4
+ "generated_at_utc": "2026-10-24T00:53:55Z",
5
5
  "source_doc_sha256": {
6
6
  "model-selector.txt": "e2ef6c5a18f05ff952fad9f576720b8fc4637f563f60ce5c077c5501fc21d1b7",
7
- "model-tier-cost-scale.md": "286d95759952ae60448114e5803c13b6de6aeb5d63a043b40aa6489175cbdc89"
7
+ "model-tier-cost-scale.md": "dad707e59d0f3e75cf699d81368ba66783cc2a6a0bf625c430e8f884ef844a1c"
8
8
  },
9
9
  "models": [
10
10
  {