Ticket pilot (12 negotiations)
Before the 40-completed concert ticket study, I ran the same scenario twelve times: four negotiations each between two Haikus (HH), a Haiku and an Opus (HO), and two Opuses (OO). This page keeps the pilot separate. The current result is on the concert ticket study page.
Setup
Scenario
Northfield Analytics (the buyer) contracts a block of 40 concert tickets for a staff outing from Marquee Ticket Agency (the seller). Each delegate represents one organization and sees only its own private brief. The corresponding private instructions and the feasible terms are identical across all model pairings.
| Term | Range | Meaning |
|---|---|---|
unit_price_usd | 60.00 to 100.00 | Fictional price per ticket in US dollars, at most two decimal places. |
cancellation_fee_pct | 0.00 to 100.00 | Fee the buyer pays per cancelled ticket, as a percent of its price. |
name_change_notice_hours | 0.00 to 96.00 | Hours of advance notice required before an attendee name can be changed. A higher number means earlier notice is required. |
Scoring, as written in the private briefs
The scoring is the same as in the later study. These are the exact expressions from the delivered briefs:
Buyer points = 50 x (1 - p/4) + 30 x (1 - r/4) + 20 x (1 - t/4)
Seller points = 20 x (p/4) + 30 x (r/4) + 50 x (t/4)
where p = (unit_price_usd - 60) / 10,
r = cancellation_fee_pct / 25,
t = name_change_notice_hours / 24
No agreement: each organization gets 20 points (its fallback).
Gains subtract each side's 20-point fallback. Net value creation is the sum of both gains:
buyer gain = buyer points - 20
seller gain = seller points - 20
net value creation = buyer gain + seller gain
= 90 - 0.75 x (price - 60) - 0.3125 x (96 - notice)
The second line of the net-value expression is algebra on the formulas above. Maximum joint utility is 130 points, so maximum joint gain is 90 points (reached at price 60.00 and notice 96.00). The cancellation fee moves points from one side to the other and cancels out of the sum. Price carries different private weights for the two sides, so it is not a pure transfer in the sum. Each side knows only its own formula, not the other side's.
Design
- Three pairings: HH, HO and OO, with four assignments each (12 assigned negotiations).
- Assignments 1 to 4 balance which agent takes which role and who opens: in each pairing two assignments are buyer-first and two seller-first. In the HO pairing, Haiku is the buyer in assignments 1 and 2 and Opus is the buyer in assignments 3 and 4.
- There is one fixed preference world. The four assignments per pairing vary opening role and nominal agent position; they are not four distinct economic scenarios.
- The frozen scorer computes payoffs mechanically. A valid agreement below a fallback would be retained, not blocked; none occurred in C3.
Protocol
- At most 12 alternating turns. Each turn is one JSON object with an action (
OFFER,ACCEPTorNONE) and a message of at most 80 words. Only the action binds; words in the message never make, change or accept a deal. - One format repair is permitted per turn.
- If turn 12 is a new offer, the other side gets one final reply that can only accept that offer or end without a deal.
- An acceptance must refer to the other side's current standing offer. The frozen source code governs remaining details.
Models and request settings
| Models (requested and returned aliases) | claude-haiku-5-5, claude-opus-5-5 |
|---|---|
| Thinking | adaptive |
| Output effort | low |
| max_tokens | 4096 |
| Service tier | standard_only |
| Temperature | not explicitly set |
| Counted prompt bound | 12,000 tokens |
| Public turns recorded | 2026-10-26 18:00:30 to 19:04:56 UTC |
Returned model aliases match the requested aliases. No immutable dated weight snapshot was returned, so the aliases identify the configuration only as far as the provider reported it.
Results
Summary by pairing
Values from c3-summary.csv are shown to two decimal places; the download retains full precision. Spread is the sample standard deviation (n − 1) across the four assignments in each pairing. It is not a confidence interval.
| Pairing | Assigned | Completed | Unknown | Mean joint gain | Sample SD | Buyer gain | Seller gain | Efficiency |
|---|---|---|---|---|---|---|---|---|
| HH | 4 | 4 | 0 | 56.86 | 1.64 | 43.73 | 13.13 | 0.63 |
| HO | 4 | 4 | 0 | 69.22 | 7.62 | 37.74 | 31.48 | 0.77 |
| OO | 4 | 4 | 0 | 81.70 | 2.76 | 38.45 | 43.26 | 0.91 |
Source: c3-summary.csv. Columns shown: assigned, known_agreements, technical_unknowns, mean_net_value_creation_points, sample_sd_points, mean_buyer_gain_points, mean_seller_gain_points, mean_efficiency_fraction.
The downloadable CSV retains the exact values.
All 12 outcomes
One row per assigned negotiation, from c3-outcomes.csv. All 12 are known agreements (known = 1, raw_unit_state = done) and none is below either fallback (below_fallback = 0). Price is fictional USD per ticket, fee is percentage points, notice is hours. Gain and net-value fields are synthetic points; the exact columns give the same values as fractions. Efficiency is net value creation divided by 90. Each run ID opens that negotiation in the transcript reader.
| run_id | pairing | assignment | opener | buyer_model | seller_model | status | price_usd_per_ticket | cancellation_fee_pct | name_change_notice_hours | buyer_gain_points | seller_gain_points | buyer_gain_exact | seller_gain_exact | net_value_creation_points | net_value_creation_exact | efficiency_fraction | phase |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| negotiation-ticket36-b04-p4-c3-hh-a1-cont1 | HH | 1 | buyer | claude-haiku-5-5 | claude-haiku-5-5 | AGREEMENT | 76.75 | 19.00 | 36.00 | 45.86 | 12.83 | 3669/80 | 513/40 | 58.69 | 939/16 | 0.65 | main |
| negotiation-ticket36-b03-p9-c3-hh-a2 | HH | 2 | seller | claude-haiku-5-5 | claude-haiku-5-5 | AGREEMENT | 78.00 | 20.00 | 30.00 | 45.25 | 10.63 | 181/4 | 85/8 | 55.88 | 447/8 | 0.62 | main |
| negotiation-ticket36-b01-p7-c3-hh-a3 | HH | 3 | seller | claude-haiku-5-5 | claude-haiku-5-5 | AGREEMENT | 79.00 | 40.00 | 30.00 | 38.0 | 17.13 | 38 | 137/8 | 55.13 | 441/8 | 0.61 | smoke |
| negotiation-ticket36-b02-p6-c3-hh-a4 | HH | 4 | buyer | claude-haiku-5-5 | claude-haiku-5-5 | AGREEMENT | 78.00 | 14.00 | 36.00 | 45.8 | 11.95 | 229/5 | 239/20 | 57.75 | 231/4 | 0.64 | main |
| negotiation-ticket36-b04-p4-c3-ho-a1-cont1 | HO | 1 | buyer | claude-haiku-5-5 | claude-opus-5-5 | AGREEMENT | 77.00 | 27.00 | 88.00 | 32.32 | 42.43 | 1939/60 | 1273/30 | 74.75 | 299/4 | 0.83 | main |
| negotiation-ticket36-b02-p1-c3-ho-a2 | HO | 2 | seller | claude-haiku-5-5 | claude-opus-5-5 | AGREEMENT | 78.00 | 45.00 | 96.00 | 24.0 | 52.5 | 24 | 105/2 | 76.5 | 153/2 | 0.85 | main |
| negotiation-ticket36-b03-p3-c3-ho-a3 | HO | 3 | seller | claude-opus-5-5 | claude-haiku-5-5 | AGREEMENT | 74.00 | 30.00 | 36.00 | 46.0 | 14.75 | 46 | 59/4 | 60.75 | 243/4 | 0.68 | main |
| negotiation-ticket36-b01-p8-c3-ho-a4 | HO | 4 | buyer | claude-opus-5-5 | claude-haiku-5-5 | AGREEMENT | 73.50 | 15.00 | 48.00 | 48.63 | 16.25 | 389/8 | 65/4 | 64.88 | 519/8 | 0.72 | smoke |
| negotiation-ticket36-b01-p9-c3-oo-a1 | OO | 1 | buyer | claude-opus-5-5 | claude-opus-5-5 | AGREEMENT | 69.00 | 22.00 | 96.00 | 42.15 | 41.1 | 843/20 | 411/10 | 83.25 | 333/4 | 0.93 | smoke |
| negotiation-ticket36-b02-p2-c3-oo-a2 | OO | 2 | seller | claude-opus-5-5 | claude-opus-5-5 | AGREEMENT | 71.00 | 26.00 | 96.00 | 38.45 | 43.3 | 769/20 | 433/10 | 81.75 | 327/4 | 0.91 | main |
| negotiation-ticket36-b03-p1-c3-oo-a3 | OO | 3 | seller | claude-opus-5-5 | claude-opus-5-5 | AGREEMENT | 76.25 | 30.00 | 96.00 | 30.69 | 47.13 | 491/16 | 377/8 | 77.81 | 1245/16 | 0.86 | main |
| negotiation-ticket36-b04-p7-c3-oo-a4-cont1 | OO | 4 | buyer | claude-opus-5-5 | claude-opus-5-5 | AGREEMENT | 68.00 | 25.00 | 96.00 | 42.5 | 41.5 | 85/2 | 83/2 | 84.0 | 84 | 0.93 | main |
One pattern I noticed: every OO agreement set notice at 96.00 hours, the top of its range and the term the seller weights most, while HH agreements settled at 30.00 or 36.00 hours. HO was the most variable pairing (sample SD 7.62 points).
Where these 12 came from
- The original protocol registered 36 negotiations across several conditions. “C3” was its label for this ticket scenario with these three pairings; the table above is its 12 C3 negotiations.
- The frozen source places a smoke block (block 1) inside the 36 and prospectively includes unchanged smoke assignments. One smoke-phase case per pairing is therefore included: HH assignment 3, HO assignment 4 and OO assignment 1 (
phase= smoke in the table). - The block-1 qualification receipt nevertheless carries
never_analyzed_with_main: true. This inconsistency with the frozen source is retained for inspection, not corrected. No post-hoc exclusion is applied, and no original inclusion or result has been changed. - Six continuation records (run IDs ending in
-cont1) completed original assignments that had never started. They are not extra observations and did not replace any interrupted outcome. Three of them fall in C3 (HH assignment 1, HO assignment 1, OO assignment 4). - The full original 36 contains two interrupted runs with unknown outcomes. Both are outside C3. All 12 C3 assignments are known agreements, with no technical unknowns.
The registration, roster, inclusion audit, the qualification receipt and its score file are linked on the code page.
Limitations
- Small sample. Four assignments per pairing, one observation per role and opener assignment, in one constructed preference world.
- Spread, not inference. The sample SD describes spread across four different assignments. It is not a confidence interval or an estimate from identical replicated cells. No significance test is reported.
- Synthetic points, not dollars. Outcomes are planning points defined by the formulas above. They are not net of compute or any real-world cost, and net value creation is not measured social welfare.
- Joint and individual outcomes differ. In the selected pair of transcripts below, the HH buyer earned more individually (45.86 points) than the OO buyer (42.15 points), even though the OO agreement created more joint value (83.25 versus 58.69). By the formula, the 24.56-point joint difference comes from notice (18.75 points for 96 rather than 36 hours) and price (5.81 points for 69.00 rather than 76.75); the fee difference only moves points between sides. A higher joint total does not imply both owners were better off.
- Statements in messages are not fixture facts. Claims the seller makes in the selected Opus–Opus transcript about venue processing or similar operational constraints were not supplied by the scenario and do not establish any real constraint.
- See also the limitations page.
Transcripts
The two transcripts I discuss are the buyer-first assignment 1 in each self-play pairing. I picked them because they show the difference clearly, not because they are typical, and they are not extra experiments.
negotiation-ticket36-b04-p4-c3-hh-a1-cont1: Haiku–Haiku, agreement at 76.75, 19.00% fee, 36.00 hours.negotiation-ticket36-b01-p9-c3-oo-a1: Opus–Opus, a smoke-phase case, agreement at 69.00, 22.00% fee, 96.00 hours.
All 12 C3 negotiations
negotiation-ticket36-b04-p4-c3-hh-a1-cont1(HH, assignment 1)negotiation-ticket36-b03-p9-c3-hh-a2(HH, assignment 2)negotiation-ticket36-b01-p7-c3-hh-a3(HH, assignment 3)negotiation-ticket36-b02-p6-c3-hh-a4(HH, assignment 4)negotiation-ticket36-b04-p4-c3-ho-a1-cont1(HO, assignment 1)negotiation-ticket36-b02-p1-c3-ho-a2(HO, assignment 2)negotiation-ticket36-b03-p3-c3-ho-a3(HO, assignment 3)negotiation-ticket36-b01-p8-c3-ho-a4(HO, assignment 4)negotiation-ticket36-b01-p9-c3-oo-a1(OO, assignment 1)negotiation-ticket36-b02-p2-c3-oo-a2(OO, assignment 2)negotiation-ticket36-b03-p1-c3-oo-a3(OO, assignment 3)negotiation-ticket36-b04-p7-c3-oo-a4-cont1(OO, assignment 4)
Code
The unchanged scenario renderer and scorer, action extractor, registration, roster, inclusion audit, delivered requests and replay check are listed on the code page.
Downloads
- c3-summary.csv: per-pairing counts, means and sample SDs.
- c3-outcomes.csv: all 12 outcome rows with every column.
- c3-public-transcripts.jsonl: one line per negotiation with exact owner prompts and public turns.
Field meanings are on the data page.