# Ideas for eth_simulateV2 List all suggested ideas for the possible next version of eth_simulate ## Contract creation events emit event when a contract is created. Currently its impossible to see if a transaction creates a contracts. except when the transaction only creates one contract using the standard way ## Multi gas calculation Currently if you override ecrecover, it consumes more gas than it should. We could make it to consume what it should normally ecrecover should consume, but then make it consume the correct gas amounts against for the global gas limit of the call ## Stack traces When execution fails all you get is the error being thrown, but it would be super useful to be able to get stack trace too ## Full tracing full tracing support for all transactions ## Phantom blocks currently you cannot create blocks far in future, phantom blocks would allow you to create blocks far in future and pad the missing blocks with "phantom blocs" concept ## Witness creation One should be able to generate witness for the eth simulate result that would allow receiver to confirm that the results are correct ## Allow increasing timestamp and block timestamp dynamically Currently if you want to create future blocks and timestamps that depend on the head, you have to query head and then fast make eth_simulate call that has all the correct values. It could be handy to be able to send the timestamp as: `latest + 10` and the block number as `latest + 10`, so you avoid in querying on what is the latest block and also avoid race conditions that the block number mighth have changed in between. ## Gas simulations for each transaction: ``` gasLimit: number | null | 'estimate' ``` or ``` { gasLimit: number | null, estimatePlease: true } ``` (what to do what both are defined?) include the transaction with the estimated gas limit to block ## Remove `size` from return value