Increasing of pyth.getUpdateFee() may cause keepers refusing to work
Summary
The pyth.getUpdateFee() is not compensated to keepers. Though it's a negligible 1 wei cost currently. But if the Pyth project becomes more popular, they are likely to increase the fee to a reasonable amount. Then, keeper will get less premium, or even lead to deficits.
Vulnerability Detail
Here is related source codes, please pay attention on L190 of _validateAndGetPrice() function,the pyth.getUpdateFee() is sent to Pyth's contract. And L40~57 of keep(), there is no compensation for this fee.
KingNFT
medium
Increasing of
pyth.getUpdateFee()
may cause keepers refusing to workSummary
The
pyth.getUpdateFee()
is not compensated to keepers. Though it's a negligible1 wei
cost currently. But if the Pyth project becomes more popular, they are likely to increase the fee to a reasonable amount. Then, keeper will get less premium, or even lead to deficits.Vulnerability Detail
Here is related source codes, please pay attention on L190 of
_validateAndGetPrice()
function,thepyth.getUpdateFee()
is sent to Pyth's contract. And L40~57 ofkeep()
, there is no compensation for this fee.Impact
Increasing of pyth.getUpdateFee() may cause keepers refusing to work
Code Snippet
https://github.com/sherlock-audit/2023-07-perennial/blob/main/perennial-v2/packages/perennial-oracle/contracts/pyth/PythOracle.sol#L190
Tool used
Manual Review
Recommendation
Take
pyth.getUpdateFee()
into consideration.