Skip to content

Variable: Execute

const Execute: {
  BufferExceeded: "submitterBufferExceeded";
  CallReverted: "onchainCallReverted";
  ExecuteRejected: "onchainExecuteRejected";
  ExecuteReverted: "onchainExecuteReverted";
  GasPriceTooHigh: "onchainGasPriceTooHigh";
  InsufficientStake: "onchainInsufficientStake";
  InvalidExtensionValue: "onchainInvalidExtensionValue";
  InvalidNonce: "onchainInvalidNonce";
  InvalidSignature: "onchainInvalidSignature";
  MissingValidationInformation: "onchainMissingValidationInformation";
  OverCapacity: "submitterOverCapacity";
  PaymentValidationRejected: "onchainPaymentValidationRejected";
  PaymentValidationReverted: "onchainPaymentValidationReverted";
  PayoutFailed: "onchainPayoutFailed";
  ReceiptTimeout: "submitterReceiptTimeout";
  RpcError: "submitterRpcError";
  SimulationTimeout: "submitterSimulationTimeout";
  SubmitTimeout: "submitterSubmitTimeout";
  Success: "onchainSuccess";
  UnexpectedError: "submitterUnexpectedError";
  UnexpectedReverted: "onchainUnexpectedReverted";
  ValidationRejected: "onchainValidationRejected";
  ValidationReverted: "onchainValidationReverted";
};

Defined in: packages/submitter/lib/handlers/execute/types.ts:10

Possible results of a submit call.

Type declaration

BufferExceeded

readonly BufferExceeded: "submitterBufferExceeded" = "submitterBufferExceeded";

The submitter rejected the request because of its Boop buffering policies.

CallReverted

readonly CallReverted: "onchainCallReverted" = "onchainCallReverted";

The call made by the account's execute function reverted.

ExecuteRejected

readonly ExecuteRejected: "onchainExecuteRejected" = "onchainExecuteRejected";

The account's execute function returned indicating a failure. This is typically caused by an incorrect input from the user.

ExecuteReverted

readonly ExecuteReverted: "onchainExecuteReverted" = "onchainExecuteReverted";

The account's execute call reverted.

GasPriceTooHigh

readonly GasPriceTooHigh: "onchainGasPriceTooHigh" = "onchainGasPriceTooHigh";

The boop got rejected because the gas price was above the maxFeePerGas.

InsufficientStake

readonly InsufficientStake: "onchainInsufficientStake" = "onchainInsufficientStake";

The submitter or paymaster has insufficient stake.

InvalidExtensionValue

readonly InvalidExtensionValue: "onchainInvalidExtensionValue" = "onchainInvalidExtensionValue";

The account or the paymaster rejected the boop because an extension value in the extraData is invalid.

InvalidNonce

readonly InvalidNonce: "onchainInvalidNonce" = "onchainInvalidNonce";

The nonce provided was invalid outside of simulation.

InvalidSignature

readonly InvalidSignature: "onchainInvalidSignature" = "onchainInvalidSignature";

The account or the paymaster rejected the boop because of an invalid signature.

MissingValidationInformation

readonly MissingValidationInformation: "onchainMissingValidationInformation" = "onchainMissingValidationInformation";

The boop passes simulation but can't be submitted onchain because either validation or payment validation has indicated that the status is unknown during validation. This typically means they need a signature, which could only be obtained once simulation was used to get the gas values to sign over (for self-paying transactions).

OverCapacity

readonly OverCapacity: "submitterOverCapacity" = "submitterOverCapacity";

The submitter rejected the request because it is over capacity.

PaymentValidationRejected

readonly PaymentValidationRejected: "onchainPaymentValidationRejected" = "onchainPaymentValidationRejected";

The paymaster rejected the boop during payment validation.

PaymentValidationReverted

readonly PaymentValidationReverted: "onchainPaymentValidationReverted" = "onchainPaymentValidationReverted";

The paymaster's payout call reverted. This indicates either a dysfunctional paymaster or a dysfunctional submitter.

PayoutFailed

readonly PayoutFailed: "onchainPayoutFailed" = "onchainPayoutFailed";

When self-paying and the payment from the account fails, either because IAccount.payout reverts, consumes too much gas, or does not transfer the full cost to the submitter.

ReceiptTimeout

readonly ReceiptTimeout: "submitterReceiptTimeout" = "submitterReceiptTimeout";

Timed out while waiting for a receipt. This could indicate that the submitter tx is stuck in the mempool or an RPC issue.

RpcError

readonly RpcError: "submitterRpcError" = "submitterRpcError";

Error from the node's JSON-RPC server.

SimulationTimeout

readonly SimulationTimeout: "submitterSimulationTimeout" = "submitterSimulationTimeout";

The RPC simulation call (or related RPC call) timed out.

SubmitTimeout

readonly SubmitTimeout: "submitterSubmitTimeout" = "submitterSubmitTimeout";

The RPC execution call (or related RPC call) timed out.

Success

readonly Success: "onchainSuccess" = "onchainSuccess";

The Boop succeeded: the intended call was made without errors.

UnexpectedError

readonly UnexpectedError: "submitterUnexpectedError" = "submitterUnexpectedError";

The submitter failed with an unexpected error.

UnexpectedReverted

readonly UnexpectedReverted: "onchainUnexpectedReverted" = "onchainUnexpectedReverted";

Unexpected revert of the boop, most likely out-of-gas. This is not supposed to happen and is indicative of a deep issue, as only the EntryPoint can revert, and because of simulation we should always be able to provide enough gas that this does not happen (third-parties like accounts and paymasters are provided their separate gas limits and so cannot trigger a paymaster OOG revert).

ValidationRejected

readonly ValidationRejected: "onchainValidationRejected" = "onchainValidationRejected";

The account rejected the boop during validation.

ValidationReverted

readonly ValidationReverted: "onchainValidationReverted" = "onchainValidationReverted";

The account validation of the Boop reverted. This indicates either a dysfunctional account or a dysfunctional submitter.