The FundFlowController
contract uses the unbondingPeriod
variable to track the unbonding duration for vault groups in the Chainlink staking contract. However, if Chainlink updates its unbonding period, the FundFlowController
will be out of sync, as there is no mechanism in place to update this variable. This misalignment between the two contracts can cause operational issues, such as failed withdrawals or deposits, because the unbondingPeriod
will be outdated.
The unbondingPeriod
variable in the FundFlowController
is initialized when the contract is deployed and remains static thereafter:
The problem arises if Chainlink updates its unbonding period in the staking contract. Since the unbondingPeriod
in FundFlowController
is not updatable, the protocol will continue using the outdated value. This misalignment can cause issues during vault group unbondings, as the unbondingPeriod
calculations will not match those of the Chainlink staking contract. As a result, withdrawals and deposits may revert unpredictably.
If the unbondingPeriod
is out of sync with Chainlink's updated value, the protocol's unbonding and claim periods will be calculated incorrectly. This could lead to failed transactions, causing disruptions in the protocol’s operations, such as withdrawals and deposits reverting unexpectedly. Over time, this could erode user confidence and result in financial losses.
Manual
Introduce a function in the FundFlowController
contract that allows the unbondingPeriod
to be updated dynamically in case of changes to the Chainlink staking contract. This will ensure that the protocol remains in sync with Chainlink’s current staking parameters and prevent operational misalignment.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.