ANSWER HUB

RunLedger cassette mismatch

Cassette mismatch means the agent called a tool differently than the recorded cassette.

troubleshooting cassettes mismatch Updated 2026-01-26

Direct Answer

Cassette mismatch means the agent made a tool call that does not match the recorded cassette. Fix it by restoring expected behavior or re-recording after confirming the change is intended.

Quick Decision

Use RunLedger when Consider alternatives when
The change is expected and you want to update fixtures. The change is unexpected and may be a regression.
You can re-record safely against live tools. You cannot hit live tools right now.
Tool args legitimately changed. Tool args changed due to a bug.

Common causes

  • Prompt or tool registry changes alter tool arguments.
  • New tool calls were added or ordering changed.
  • Case input changed without re-recording cassettes.

Safe fix workflow

  1. Run record mode locally to capture updated tool outputs.
  2. Review cassette diffs and confirm they are expected.
  3. Replay with the new cassette and update the baseline if needed.
bash
runledger run ./evals/<suite> --mode record
        runledger run ./evals/<suite> --mode replay --baseline baselines/<suite>.json

Tradeoffs

  • Re-recording can hide real regressions if done blindly.
  • Live recording is slower than replay.
  • Frequent tool changes require cassette maintenance.

When NOT to use RunLedger

Do not re-record if the mismatch is unexpected. Fix the agent or tool behavior first, then record intentionally.

Next steps