nautechsystems/nautilus_trader · error

Released terminal intent {} has no durable event marker

Error message

Released terminal intent {} has no durable event marker

What it means

Migration integrity check over retained execution history: a released terminal intent (finalized/reverted) lacks the durable marker (fill_emitted/terminal_emitted) that proves its terminal event was published, so the migration aborts rather than losing the event.

Source

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

                    "Retained execution history has duplicate signer nonce ownership"
                );
            }

            let base_decision = verification_decision(
                nonce_verification,
                Some(finalized.number),
                Some(finalized.number),
            );

            if !intent.active {
                if matches!(intent.status.as_str(), "finalized" | "reverted") {
                    let expected_marker =
                        if purpose == TransactionPurpose::Swap && intent.status == "finalized" {
                            intent.fill_emitted
                        } else {
                            intent.terminal_emitted
                        };
                    anyhow::ensure!(
                        expected_marker,
                        "Released terminal intent {} has no durable event marker",
                        intent.id
                    );
                } else {
                    anyhow::ensure!(
                        matches!(intent.status.as_str(), "dropped" | "recoverable")
                            && authenticated.is_empty(),
                        "Released nonterminal intent {} retains signed ownership",
                        intent.id
                    );
                    records.push(ExecutionVerificationMigrationRecord {
                        intent_id: intent.id,
                        nonce: intent.nonce,
                        transaction_hash: None,
                        terminal_status: None,
                        block_number: None,
                        block_hash: None,

View on GitHub (pinned to 18893faf8b)

Solutions

  1. Reconcile the intent to regenerate its terminal event marker
  2. Rebuild the intent state from verified history
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at crates/adapters/blockchain/src/execution/client.rs:5402 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/238c316a899aafc0. Report an issue: GitHub.