Currently the payment calculated by fulfillRandomness -> _payBySubscription -> _calculatePaymentAmountInETH is less than the gas fee of the transaction itself, especially on L2 network. This means node operators can not cover their gas cost when fulfilling randomness, which is not expected by us.
Meanwhile, we found the gas used on practical L2 networks is often bigger than gas values we get in local foundry environment, resulting in out of gas error and invalid gas calculation.
The point is to understand more on gas mechanism, especially for L2 networks. We need more research and experience.
Currently the payment calculated by fulfillRandomness -> _payBySubscription -> _calculatePaymentAmountInETH is less than the gas fee of the transaction itself, especially on L2 network. This means node operators can not cover their gas cost when fulfilling randomness, which is not expected by us.
Meanwhile, we found the gas used on practical L2 networks is often bigger than gas values we get in local foundry environment, resulting in out of gas error and invalid gas calculation.
The point is to understand more on gas mechanism, especially for L2 networks. We need more research and experience.