nautechsystems/nautilus_trader · error

Independent swap quote changed before signing

Error message

Independent swap quote changed before signing

What it means

Pre-sign quote re-verification: re-querying the independent swap quote (exact-input or exact-output) at signing time returned a different result than the anchored quote, so the market moved and signing would execute stale terms.

Source

Thrown at crates/adapters/blockchain/src/execution/client.rs:2743

                    )
                    .await,
                "pre-sign exact-input quote reread",
            )?,
            SwapQuoteKind::ExactOutput(amount_out) => required_verification(
                self.verification
                    .verify_quote_exact_output_single(
                        &anchors.quote_contract,
                        anchors.token_in,
                        anchors.token_out,
                        amount_out,
                        anchors.fee,
                        anchors.state.number,
                    )
                    .await,
                "pre-sign exact-output quote reread",
            )?,
        };
        anyhow::ensure!(
            quote.value == anchors.quote,
            "Independent swap quote changed before signing"
        );
        Ok(vec![
            verification_decision(
                &checkpoint,
                Some(checkpoint.value.number),
                Some(checkpoint.value.number),
            ),
            verification_decision(
                &watermark,
                Some(anchors.watermark.number),
                Some(anchors.watermark.number),
            ),
            verification_decision(
                &ancestry,
                Some(anchors.watermark.number),
                Some(anchors.state.number),

View on GitHub (pinned to 18893faf8b)

Solutions

  1. Retry the swap from a fresh quote
  2. Tighten the interval between quoting and signing
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at crates/adapters/blockchain/src/execution/client.rs:2743 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of nautechsystems/nautilus_trader@18893faf8b (2026-09-08). Data as JSON: /api/errors/c566b644b9e2e031. Report an issue: GitHub.