nautechsystems/nautilus_trader · error
Released nonterminal intent {} retains signed ownership
Error message
Released nonterminal intent {} retains signed ownership What it means
Migration integrity check: a released intent that is not yet terminal still carries signed nonce ownership, which would conflict with future signing; the migration aborts instead of permitting double ownership.
Source
Thrown at crates/adapters/blockchain/src/execution/client.rs:5408
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,
receipt_success: None,
gas_used: None,
effective_gas_price: None,
recover_prepared: false,
decisions: vec![base_decision],
});View on GitHub (pinned to 18893faf8b)
Solutions
- Re-run verification migration after fixing intent ownership records
- Inspect the intent's release path for premature ownership release
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at crates/adapters/blockchain/src/execution/client.rs:5408 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/36423ca3f9952e47.
Report an issue: GitHub.