Submitted by bin2chen
A very important modification of this update is that the GAS spent by pubdata is collected at the final step of the transaction.
But if there is a paymaster, when executing paymaster.postTransaction(_maxRefundedGas),
_maxRefundedGas does not subtract the spentOnPubdata.
bootloader.yul the code is as follow
paymaster's _maxRefundedGas = gasLeft + reservedGas, without subtracting spentOnPubdata.
This way _maxRefundedGas will be much larger than the correct value.
paymaster will refund the used spentOnPubdata to the user.
paymaster will refund the spentOnPubdata already used by the user.
Context
saxenism (zkSync) confirmed, but disagreed with severity and commented:
0xsomeone (judge) commented:
