nautechsystems/nautilus_trader · error
Unassigned active intent {} is not an unsigned preparation
Error message
Unassigned active intent {} is not an unsigned preparation What it means
During verification migration, an intent is still active and unassigned but carries signed or prepared transaction payload state; the invariant that unassigned active intents must be unsigned preparations is violated, indicating corrupted or partially migrated state, so migration fails.
Source
Thrown at crates/adapters/blockchain/src/execution/client.rs:5432
records.push(ExecutionVerificationMigrationRecord {
intent_id: intent.id,
nonce: intent.nonce,
transaction_hash: None,
terminal_status: None,
block_number: None,
block_hash: None,
receipt_success: None,
gas_used: None,
effective_gas_price: None,
recover_prepared: false,
decisions: vec![base_decision],
});
continue;
}
}
if intent.active && intent.nonce.is_none() {
anyhow::ensure!(
intent.status == "prepared" && hashes.is_empty(),
"Unassigned active intent {} is not an unsigned preparation",
intent.id
);
records.push(ExecutionVerificationMigrationRecord {
intent_id: intent.id,
nonce: None,
transaction_hash: None,
terminal_status: None,
block_number: None,
block_hash: None,
receipt_success: None,
gas_used: None,
effective_gas_price: None,
recover_prepared: true,
decisions: vec![base_decision],
});
continue;View on GitHub (pinned to 18893faf8b)
Solutions
- Correct the intent status or attach its preparation record
- Rebuild the intent records from the database
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at crates/adapters/blockchain/src/execution/client.rs:5432 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/2d5448649b0efed4.
Report an issue: GitHub.