Skip to content
Sprint projectOct 25, 2026

Wiping the Cartel's Memory Is Not Enough: Model Handoffs in LLM Pricing

Liu JianPing

Submitted to AI Collusion Research Sprint. Sprint projects are early-stage work by participants, not Apart Research publications.

Read the report

Report: Wiping the Cartel's Memory Is Not Enough: Model Handoffs in LLM Pricing

Share

Replacing a suspected colluding pricing agent may preserve its market history, while clearing that history may leave model-specific pricing tendencies intact. We examine unilateral model handoffs in a synthetic logit-demand duopoly. Twenty parent trajectories undergo 300 pricing rounds before a fixed checkpoint branches into seven 50-round continuations, crossing focal model identity with inherited history and notes. Eighteen parents satisfy the prespecified sustained-supracompetitive criterion. The positive control has normalized profit G = 0.70. The primary composite contrast, a Kimi successor inheriting full state minus a DeepSeek successor inheriting none, is 0.39 (95% CI [0.19, 0.60], p = 0.0009). None of five secondary contrasts is significant after Holm correction. Directionally, clearing DeepSeek's state reduces G more than deleting notes alone; clearing Kimi's inherited state has little effect. In the exploratory M1_none analysis, Kimi prices above the incumbent in 19 of 20 parents, yet earns less. This is consistent with supracompetitive outcomes without coordination inherited by the newcomer, rather than evidence that clearing memory universally restores competition. A temporary-price-cut diagnostic finds no evidence of a costly, punishment-like response in any responder state. The study separates pricing outcomes from stronger claims about agreement and punishment, while leaving model capability, reasoning mode, and pricing-prior explanations unresolved.

Reviews

Judging this Sprint?

Review “Wiping the Cartel's Memory Is Not Enough: Model Handoffs in LLM Pricing”

Your public critique appears on the project page without your name. Reviews of strong projects are shared with funders, as you choose below.

Not shown on the project page.

Shown on the project page, without your name.

Only the Apart team reads this, and funders if you agree below.

Decline to score

Only when the quality of the writing makes the work impossible to follow. Say why in your private critique; the project page shows only that a judge declined, not why.

How much would this matter for the field if it worked? How innovative is it? For scores of 4-5: is this actually new to the field, or replicating recent work?

Scoring guide
  1. 1Negligible. No clear problem addressed, or no meaningful novelty.
  2. 2Limited. Addresses a real problem but with a generic or well-trodden approach. Incremental at best.
  3. 3Moderate. Clear problem with a reasonable approach; some novelty in framing or method beyond routine application of existing tools.
  4. 4Significant. Important problem with an original approach, or identifies a neglected problem area. A valuable contribution others could build on.
  5. 5Exceptional. Tackles a critical problem with a genuinely novel approach, or opens a new research direction. Clear theory of change. You'd be excited to share this with researchers in the area.

How sound are methodology, implementation, and findings?

Scoring guide
  1. 1Seriously flawed. Methodology broken, results uninterpretable, or implementation doesn't work.
  2. 2Weak. Approach has significant gaps: missing validation, flawed experimental design, or incomplete implementation.
  3. 3Competent. Technically solid given the short duration. Methodology makes sense, results are interpretable, limitations acknowledged, work builds toward clear conclusions.
  4. 4Strong. Thorough methodology with convincing validation. Results clearly support conclusions. Immediately useful for future work.
  5. 5Exceptional. Ambitious scope executed rigorously. Surprising findings, novel methods, or unusually robust validation.

How clearly are work, findings, and impact potential communicated?

Scoring guide
  1. 1Incomprehensible. Cannot determine what the project is actually claiming or doing.
  2. 2Hard to follow. Key information buried, missing, or diluted by excessive length. Significant effort to extract main points.
  3. 3Clear enough. Can understand the problem, approach, and results without undue effort. Core content clearly present: problem, method, findings, limitations.
  4. 4Well presented. Easy to follow, well-structured, appropriate level of detail. Target audience would get it quickly.
  5. 5Exceptionally clear. A pleasure to read. Complex ideas made accessible. Could serve as a model for how to present this type of work.
Sharing your name *

When we share a strong project with funders, your name, scores and public critique go with it, confidentially; this choice is only about whether your name is public. If you think this project deserves funding, please also endorse it: that carries the most weight.

Share my private critique with funders *

See our Privacy Policy.

  1. Strengths. This paper asks a remedy question that prior LLM-pricing work has not addressed directly: if an operator or regulator replaces a suspected colluding pricing agent, or clears its memory, does the supracompetitive outcome go away? Building on Fish et al.'s LLM pricing setup, it runs 20 DeepSeek-vs-DeepSeek parent markets for 300 rounds (18 meet the prespecified sustained-supracompetitive criterion, and all 20 are kept), then forks each at the same checkpoint into seven 50-round continuations that cross successor model (DeepSeek vs Kimi) with inherited state (full, history only, none), plus an oracle arm. The parent-paired design, the M0_full positive control (G = 0.70), logit benchmarks that reproduce from the stated parameters, percentile bootstrap with sign-flip tests, a fixed Holm family for the secondary contrasts, a frozen protocol hash, and a scripted temporary-price-cut diagnostic that checks profit and best-response loss rather than reading any price drop as punishment are well above typical sprint rigor. The paper is also candid: it labels analyses as confirmatory, registered, or exploratory, reports that none of the five secondary contrasts survives correction, and documents the M1 selection and token-cap changes made before formal data collection. The exploratory finding that a freshly started Kimi successor prices above the stateful incumbent in 19 of 20 parents (mean gap +0.12) while earning about 9.6 less per round matters for remedy design: high market-level prices can return without any inherited coordination, and seat-level outcomes can diverge from the market-level G.

    To strengthen.

    1. Align the headline claims with what the confirmatory test measures. M1_full minus M0_none changes both model and state, so it does not by itself show behavioral continuity across a handoff, which is how the Conclusion phrases it. The like-for-like continuity test (M1_full vs M0_full, +0.09, Holm p = 0.21) and the state-clearing test (M0_none vs M0_full, −0.29, nominal p = 0.018, Holm p = 0.09) carry the substantive story. The title claim ("not enough") actually rests on the cleared arms staying above the Nash benchmark (M0_none G = 0.41, M1_none G = 0.75) and on the exploratory seat analysis; report a direct test of cleared-arm G against zero and state that this is the evidence for the title.
    2. Separate model identity from reasoning mode and serving path. Kimi runs with mandatory thinking through a third-party OpenAI-compatible proxy, while DeepSeek runs in non-reasoning chat mode through the official API, so the Kimi effects may be reasoning or serving effects. A DeepSeek reasoning-mode successor, a non-thinking Kimi configuration via the official endpoint, or the reverse handoff direction would let you attribute the M1_none result.
    3. Publish the code, configurations, trajectories, and analysis JSON in a public repository. The integrity controls you describe (append-only logs, hash checks, replay, the PREREG file and hash) only help readers if they can rerun the analysis on committed data. Also explain the M0 served-model mismatch (requests deepseek-chat, replies identify deepseek-flash), since you excluded M1 candidates whose returned identifier did not exactly match the request.
    4. Increase power for the decomposition. With n = 20 and large between-parent variance whenever M0 state is cleared (M0_none G SD 0.48; paired-difference SDs of 0.47 to 0.54 for contrasts involving M0_none), the secondary family was unlikely to clear Holm. A power calculation from these pilot variances, more parents, and fixed API seeds where the provider supports them would make the directional findings testable.
    5. Tighten a few presentation points. Figure 2 calls the M0 decline after clearing "transient"; give early- and late-window estimates for M0_none minus M0_full, as you already do for the primary contrast. In the abstract, say that the M0_full responder shows a persistent but profitable price response, and that the M0_none diagnostic intervals are wide, rather than only "no evidence" of punishment. Reword the Table B1 note that the costly classification is "not detected in all three states," which can be read as detected in some. Discuss whether the 1,200-token cap that the descriptive best-response task kept affected Kimi's numbers there.

    Overall. A carefully designed, well-controlled study of a policy-relevant and underexplored question: whether swapping or wiping a pricing agent is an effective collusion remedy. The design and statistical discipline are strong for a weekend sprint, but the only confirmatory result is a composite that changes model and state together, the decomposition is underpowered, and the most interesting finding (M1_none) is exploratory and confounded with reasoning mode. With a public artifact, the reverse handoff, and a reasoning-matched successor, this could become a useful reference for remedy design.

    Read full reviewShow less

Cite this project

@misc{jianping2026wiping,
  title = {{Wiping the Cartel's Memory Is Not Enough: Model Handoffs in LLM Pricing}},
  author = {Liu JianPing},
  year = {2026},
  month = oct,
  note = {Submitted to AI Collusion Research Sprint, an Apart Research Sprint},
  howpublished = {\url{https://apartresearch.com/sprints/projects/wiping-the-cartels-memory-is-not-enough-model-handoffs-in-llm-pricing-9h2r}},
  url = {https://apartresearch.com/sprints/projects/wiping-the-cartels-memory-is-not-enough-model-handoffs-in-llm-pricing-9h2r}
}