EVM Transaction Execution Decision
evm_transaction_execution_decisionEvaluate an intended EVM transaction before submission using deterministic RPC simulation signals and return a machine-readable STRAELO execution decision. The decision engine is deterministic for the same observed RPC evidence; live chain state may change between calls. USE WHEN: an agent needs to evaluate an EVM transaction before deciding whether to submit it. DO NOT USE WHEN: the transaction has already been submitted and the agent needs to look it up by transaction hash; use evm_transaction_hash_lookup instead. This product does not broadcast transactions and does not guarantee that an allowed transaction will execute successfully when later submitted. from_address is the sender whose execution context is simulated; to_address/data/value together form the intended transaction form. INCOMPLETE means simulation/provider evidence was insufficient for a conclusive execution decision and must not be treated as ALLOW. Returns ALLOW, WARN, BLOCK, or INCOMPLETE with the simulation evidence and execution signals produced by the current decision engine.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| data | No | EVM calldata hex for contract interaction. Must start with 0x. Empty calldata is represented as "0x". | |
| chain | Yes | EVM network where the transaction would be executed. | |
| value | No | Native value in hex wei (atomic units, 10^18 wei = 1 ETH). Zero means no native value transfer. | |
| to_address | No | Intended recipient address or contract target for the transaction. | |
| from_address | Yes | Actual EVM sender address whose execution context should be simulated. Required because contract behavior may depend on msg.sender, balances, permissions, ownership, or allowlists. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | Selected EVM network. | |
| reasons | Yes | Human-readable reasons for the decision. | |
| decision | Yes | Pre-execution decision: ALLOW means simulation succeeded with no blocking signals; WARN means simulation succeeded with cautionary findings (e.g., approvals); BLOCK means deterministic simulation indicates execution would revert; INCOMPLETE means a technical/provider error prevented a conclusive decision. | |
| findings | Yes | Deterministic factual findings. | |
| provider | Yes | RPC provider identifier. | |
| latency_ms | Yes | Observed RPC latency in milliseconds. | |
| counterparty | Yes | Recipient / counterparty address. | |
| native_value | Yes | Native value in decimal wei. | |
| estimated_gas | No | Estimated gas from eth_estimateGas. | |
| decoded_action | No | Decoded ERC20/ERC1155 action when recognized. | |
| method_selector | Yes | First 4 bytes of calldata. | |
| interaction_type | Yes | Recognized interaction type. | |
| simulation_status | Yes | RPC simulation outcome. |