This proposal would be for an improvement on Gas Abstraction proposal, and embed it within layer 0/1.
If a transaction that don’t uses
msg.sender and uses
gas.price == 0, the signature verification is just bloating and the result of it is never effectely used to a state change.
To improve this, EVM would support a new type of call, which considers
gas.price == 0 and
msg.sender is not available (throws if called, would also fails to compile).
The gas abstraction contract would then be able to pay the ERC20 gas directly to
block.coinbase, as the block don’t uses any ETH (as gas.price is zero) and don’t reads
msg.sender it could be valid with no risk to consensus.
Ethereum Block Validators (PoS) would be able to test if those transactions are valid, and insert them in the block transactions which pay ERC20 they accept.
I would like feedback from devs to see if this makes sense and if (and how) I should continue with this EIP.