3.2 patch for legacy periphery

Share on X
Raw-Ipfs
For

771.75K

Against

0

Voters

Voting power

Support

aci.eth

307.38K

For

ezr3al.eth

173.25K

For

areta...v.eth

100.60K

For

token...c.eth

46,950.80

For

winte...e.eth

44,689.33

For

Payload 1/11
Show more
Created

11 Oct 2024, 8:18 AM

Open for voting

12 Oct 2024, 8:40 AM

Voting closed

15 Oct 2024, 8:40 AM

Passed

Finished

16 Oct 2024, 9:23 AM

Executed

3.2 patch for legacy periphery

Created

11 Oct 2024, 8:18 AM

Open for voting

12 Oct 2024, 8:40 AM

Voting closed

15 Oct 2024, 8:40 AM

Passed

Finished

16 Oct 2024, 9:23 AM

Executed

Author

BGD Labs @bgdlabs

Creator

0xf71fc92e2949ccF6A5Fd369a0b402ba80Bc61E02

Copy

Simple Summary

Upgrade the Pool contract across all networks, to add an extra fallback on the getReserveData() view function, allowing for integrators unable to update peripheral contracts (Aave Pool Data Provider) to still be compatible with v3.2.

Motivation

Aave v3.2 included the removal of all the logic of stable rate borrow mode, and the release of a new ProtocolDataProvider maintaining retro-compatibility.

However, post-release we have been contacted by integrators with totally immutable infrastructure depending on so-called “hardcoding” of legacy peripheral contracts, in this case, an old version of the ProtocolDataProvider, designed to be replaced on the core contract of Aave (PoolAddressesProvider) whenever an upgrade happens.

Even if non-critical, this has created issues for those integrators, and from the Aave side, it is possible to increase even more the retro-compatibility by doing a simple upgrade on the Pool smart contract.

Specification

The governance proposal will configure a MOCK_STABLE_DEBT variable on the PoolAddressesProvider, together with upgrading the Aave Pool contract across all networks.

On this pool upgrade, the only modification would be to now return the previously configured MOCK_STABLE_DEBT address for stableDebtTokenAddress on Pool.getReserveData(), this way removing any type of unexpected behavior from integrators using legacy ProtocolDataProvider peripheral contracts, consuming getReserveData().

Security considerations

The proposal was tested via unit tests and Certora checked the upgrade and proposal.

References

Copyright

Copyright and related rights waived via CC0.

by BGD Labs