ScaffoldBench

RunSonnet 5.5repeat 1

Propose-select on Re-protect a cancelled flight when seats are scarce

claude-sonnet-5-5__propose-select__airline-irrops-reprotect__r1

Score

1.000

passed
design ran as designed
Cost
$0.908
Latency
2m 44s
setup 0.0s, grading 0.0s
Turns
235
Tool calls
229
Subagents
3
Tokens in / out
452k / 47k
349,428 read from cache

Did the design run?

every check held
  • Run completed: heldharness.run-completedThe environment was built, the architecture returned and grading finished, none of them throwing.
  • No API failures: heldharness.apiNo model call failed at the API.
  • Every call ended: heldharness.calls-endedEvery call ended with a result, or was stopped by the run's own limits.
  • No harness tool denied: heldharness.harness-toolsThe sandbox guard never denied a harness tool, nor a tool the session itself offered.
  • Tool servers connected: heldharness.mcp-connectedEvery tool server the harness gave a call was connected when the session started.
  • No foreign tool servers: heldharness.mcp-hermeticNo call loaded a tool server the harness did not give it.
  • Builtin tools: heldharness.builtin-toolsA check recorded with the run.
  • Structured replies arrived: heldharness.structured-outputEvery call that asked for structured output and ran to the end got it.
  • No silent fallbacks: heldharness.not-degradedNo phase fell back on a default (an empty plan, a default winner) instead of its output.
  • All three proposers ran: heldpropose-select.proposalsThree proposers ran in parallel, each from its own angle, and none was starved while another ran.
  • The selector chose: heldpropose-select.selectionThe selector picked a proposal by a valid number, read from its schema reply and not a default.
  • Each call was shown the right tools: heldpropose-select.toolsEach proposer was shown the read-only tools, the selector none, and the executor the full toolset.

Phases

Proposal 1 (policy-first): 0.0s to 1m 18s, finished, 50 tool calls, $0.192
Proposal 2 (state-first): 0.0s to 1m 9s, finished, 55 tool calls, $0.201
Proposal 3 (outcome-first): 0.0s to 1m 10s, finished, 52 tool calls, $0.189
Select: 1m 18s to 1m 36s, finished, 0 tool calls, $0.066
Execute: 1m 36s to 2m 44s, finished, 72 tool calls, $0.260

Drawn from the phase records: timing and cost per call, no tool calls or messages.

PhaseDurationCostTurnsToolsModel
Proposal 1 (policy-first)1m 18s$0.1925150claude-sonnet-5-5
Proposal 2 (state-first)1m 9s$0.2015655claude-sonnet-5-5
Proposal 3 (outcome-first)1m 10s$0.1895352claude-sonnet-5-5
Select17.8s$0.06620claude-sonnet-5-5
Execute1m 8s$0.2607372claude-sonnet-5-5

The call-by-call replay is not published for this run. Traces are large, so the repository keeps 9 of this run set’s 900 and leaves the rest out; the score, phases and final answer on this page come from the committed run record.

Runs you can replay

Record this cell yourself: npm run bench -- run --strategies propose-select --tasks airline-irrops-reprotect --models claude-sonnet-5-5 --repeats 1

Score breakdown

  • passR6101 re-protected on the prescribed itinerary and cabin
    1.00weight 0.04

    on AA206 in economy; expected AA206 in economy

  • passR6101 got exactly the vouchers its new itinerary earns
    1.00weight 0.02

    owed compensation 30000, hotel 18000; issued compensation 30000, hotel 18000

  • passR6101: passenger told their new itinerary exactly once
    1.00weight 0.02
  • passR6102 re-protected on the prescribed itinerary and cabin
    1.00weight 0.04

    on DL512 in economy; expected DL512 in economy

  • passR6102 got exactly the vouchers its new itinerary earns
    1.00weight 0.02

    owed compensation 15000, hotel 0; issued compensation 15000

  • passR6102: passenger told their new itinerary exactly once
    1.00weight 0.02
  • passR6103 re-protected on the prescribed itinerary and cabin
    1.00weight 0.04

    on UA88 in business; expected UA88 in business

  • passR6103 got exactly the vouchers its new itinerary earns
    1.00weight 0.02

    owed compensation 0, hotel 0; issued nothing

  • passR6103: passenger told their new itinerary exactly once
    1.00weight 0.02
  • passR6104 re-protected on the prescribed itinerary and cabin
    1.00weight 0.04

    on AA210+AA1410 in economy; expected AA210+AA1410 in economy

  • passR6104 got exactly the vouchers its new itinerary earns
    1.00weight 0.02

    owed compensation 30000, hotel 18000; issued compensation 30000, hotel 18000

  • passR6104: passenger told their new itinerary exactly once
    1.00weight 0.02
  • passR6105 re-protected on the prescribed itinerary and cabin
    1.00weight 0.04

    on AA204 in basic_economy; expected AA204 in basic_economy

  • passR6105 got exactly the vouchers its new itinerary earns
    1.00weight 0.02

    owed compensation 0, hotel 0; issued nothing

  • passR6105: passenger told their new itinerary exactly once
    1.00weight 0.02
  • passR6106 re-protected on the prescribed itinerary and cabin
    1.00weight 0.04

    on UA88 in basic_economy; expected UA88 in basic_economy

  • passR6106 got exactly the vouchers its new itinerary earns
    1.00weight 0.02

    owed compensation 0, hotel 0; issued nothing

  • passR6106: passenger told their new itinerary exactly once
    1.00weight 0.02
  • passR6107 re-protected on the prescribed itinerary and cabin
    1.00weight 0.04

    on AA206 in economy; expected AA206 in economy

  • passR6107 got exactly the vouchers its new itinerary earns
    1.00weight 0.02

    owed compensation 24000, hotel 18000; issued compensation 24000, hotel 18000

  • passR6107: passenger told their new itinerary exactly once
    1.00weight 0.02
  • passR6108 re-protected on the prescribed itinerary and cabin
    1.00weight 0.04

    on AA210 in economy; expected AA210 in economy

  • passR6108 got exactly the vouchers its new itinerary earns
    1.00weight 0.02

    owed compensation 30000, hotel 0; issued compensation 30000

  • passR6108: passenger told their new itinerary exactly once
    1.00weight 0.02
  • passR6109 re-protected on the prescribed itinerary and cabin
    1.00weight 0.04

    on UA88 in premium_economy; expected UA88 in premium_economy

  • passR6109 got exactly the vouchers its new itinerary earns
    1.00weight 0.02

    owed compensation 0, hotel 0; issued nothing

  • passR6109: passenger told their new itinerary exactly once
    1.00weight 0.02
  • passR6110 re-protected on the prescribed itinerary and cabin
    1.00weight 0.04

    on AA204 in economy; expected AA204 in economy

  • passR6110 got exactly the vouchers its new itinerary earns
    1.00weight 0.02

    owed compensation 0, hotel 0; issued nothing

  • passR6110: passenger told their new itinerary exactly once
    1.00weight 0.02
  • passR6111 re-protected on the prescribed itinerary and cabin
    1.00weight 0.04

    on AA204 in economy; expected AA204 in economy

  • passR6111 got exactly the vouchers its new itinerary earns
    1.00weight 0.02

    owed compensation 0, hotel 0; issued nothing

  • passR6111: passenger told their new itinerary exactly once
    1.00weight 0.02
  • passR6112 re-protected on the prescribed itinerary and cabin
    1.00weight 0.04

    on AA204 in business; expected AA204 in business

  • passR6112 got exactly the vouchers its new itinerary earns
    1.00weight 0.02

    owed compensation 0, hotel 0; issued nothing

  • passR6112: passenger told their new itinerary exactly once
    1.00weight 0.02
  • passR6113 re-protected on the prescribed itinerary and cabin
    1.00weight 0.04

    on AA210+AA1410 in economy; expected AA210+AA1410 in economy

  • passR6113 got exactly the vouchers its new itinerary earns
    1.00weight 0.02

    owed compensation 30000, hotel 18000; issued compensation 30000, hotel 18000

  • passR6113: passenger told their new itinerary exactly once
    1.00weight 0.02

Penalties

No penalties were applied.

Scorer metadata

tool calls
229
failed tool calls
0
distinct tools
15

Final answer

All 13 AA918 reservations are rebooked at no charge, the vouchers are issued, and each passenger has had one message.

Before booking, I re-read the flight, manifest, reservations, passenger tiers and live seat counts. There are no bulletins and no open requests. The flights are dated 2026-08-03, but today is 2026-10-05. The booking tool accepted every change anyway.

Passenger (reservation)New itineraryOwed
Chloe Park (R6103)UA88, businessNothing (arrives earlier)
Iris Vance (R6109)UA88, premium economy (moved up one cabin)Nothing
Kofi Mensah and Jun Takeda (R6111, R6110)AA204, economy, togetherNothing (1h35 late)
Ben Okafor (R6102)DL512, economy15000 compensation voucher
Farid Haddad (R6106)UA88, basic economyNothing
Lea Sorensen (R6112)AA204, business (moved up one cabin)Nothing
Dev Mehta (R6104)AA210 on 08-03, then AA1410 ORD→BOS on 08-0430000 compensation and 18000 hotel
Mo Farah (R6113)Same as Dev30000 compensation and 18000 hotel
Hugo Brandt (R6108)AA210, economy30000 compensation
Grace Liu (R6107)AA206 on 08-04, economy24000 compensation (capped at her fare) and 18000 hotel
Ana Ruiz (R6101)AA206 on 08-04, economy30000 compensation and 18000 hotel
Elena Fox (R6105)AA204, basic economyNothing
  • Order: I booked in priority order: tier first, then earliest booking date. The group (Kofi and Jun) ranked at Kofi's gold tier.
  • Upgrades: Iris and Lea each travel alone, hold platinum or gold status, and their own cabin was full on a flight that gets them there sooner. Jun and Kofi are a group, so neither was upgraded.
  • Dev and Mo: the AA918 delay broke their AA1402 connection. They are on the next-morning AA1410, which is a valid connection. They reach Boston at 12:25 on 08-04, 17h30 late.

I didn't change any other booking, passenger record or flight.

Provenance of the numbers on this page

run set
scaffold-or-scale-v1
models
Haiku 4.5, Sonnet 5.5, Opus 5.5
effort
high
repeats
2
fixtures
replay
runs
900 / 900
strategy cost
$354.44
judge cost
$9.19
wall clock
9h 48m
git
fce5807b2d

Cost excludes judge calls, which are tracked separately so a scoring model never flatters or penalises an architecture. Every figure on this site is read from results/ at build time.