Thrown when a long-running transaction operation times out or fails during polling.
Remarks
This error occurs when asynchronous relayer operations exceed the configured timeout
or encounter non-recoverable errors during status polling. It preserves the operation ID
to allow recovery and status checking at a later time.
The error includes:
Operation ID for recovery and status checking
Last known status before failure
Original error details
Recovery strategies:
Save the operation ID for later status checking
Implement manual recovery flow using the operation ID
Check transaction status through alternative means
Contact support if operation remains stuck
Example
try { constresult = awaitvana.permissions.grant({ grantee:'0x...', files: [1, 2, 3] }); } catch (error) { if (errorinstanceofTransactionPendingError) { // Save operation ID for recovery localStorage.setItem('pending_operation', error.operationId);
// Show recovery UI showRecoveryDialog({ operationId:error.operationId, lastStatus:error.lastKnownStatus });
// Attempt recovery later conststatus = awaitvana.checkOperationStatus(error.operationId); } }
Thrown when a long-running transaction operation times out or fails during polling.
Remarks
This error occurs when asynchronous relayer operations exceed the configured timeout or encounter non-recoverable errors during status polling. It preserves the operation ID to allow recovery and status checking at a later time.
The error includes:
Recovery strategies:
Example