Function: zkAllocation(LenderAllocation[] _newPositions)
This manually updates the allocations from the ZK verifier.
Inputs
_newPositions
Control: Full.
Constraints: Should be in order of decreasing debt and increasing debt AND must match with
_lenders
in length (_lenders.length == _newPositions.length
).Impact: The list of position info.
Branches and code coverage (including function calls)
Intended branches
Owner successfully updates the allocations from the ZK verifier.
Negative behavior
Function reverts if not invoked by
_zkVerifier
.Function reverts because
position.debt
is greater thanlenderData.max_debt
(supply cap).Function reverts because
lenderData.activation
for one of the strategies is unactivated (in_manualAllocation()
).
Function call analysis
rootFunction -> _manualAllocation(LenderAllocation[])
What is controllable?
_newPositions
.If return value controllable, how is it used and how can it go wrong? N/A.
What happens if it reverts, reenters, or does other unusual control flow? N/A.