feat(vip-663): Pendle PT adapter handover, THE oracle update, TRX & lisUSD deprecation - #766
Open
vancegpt-bot wants to merge 5 commits into
Open
vancegpt-bot wants to merge 5 commits into
vancegpt-bot wants to merge 5 commits into
Conversation
Completes the handover of the second PendlePTVaultAdapter proxy (0x179bD219c2a20a49406C9AdA39634eDac1C7F656) and restores the access-control checks on it. The proxy and its own ProxyAdmin were left with the deployer EOA, and its implementation 0x79276267b23B611ee9Aa8D8D50CB134334e876fA is missing _checkAccessAllowed on addMarket, pause and unpause, leaving those three callable by any address. Commands: acceptOwnership on the adapter, upgrade the proxy to the guarded implementation 0x70B093Df30B62105e1aCb91Feeb1E9a916d7d899 already used by the VIP-606 adapter, then mirror VIP-606's ACM grants. Assumes the deployer has first called transferOwnership(NORMAL_TIMELOCK) on both the adapter and its ProxyAdmin. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The ProxyAdmin address was written with an invalid EIP-55 checksum, which made ethers reject it while encoding the proposal targets and failed the whole simulation. Corrected it and the shared ProxyAdmin reference in the description. The deployer's two transferOwnership transactions have since landed on BNB Chain mainnet (blocks 123125269 and 123125372), so the simulation now forks at 123125400 and asserts that real pre-state instead of impersonating the deployer to reproduce it. Simulation: 25 passing, 0 failing. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
vancegpt-bot
marked this pull request as ready for review
September 21, 2026 05:35
|
fred-venus
reviewed
Sep 21, 2026
VPD-2089 as currently scoped: the THE oracle item and the TRX & lisUSD deprecation. THE: RedStone is discontinuing the THE feed (0xFB1267A2...) read by the RedStoneOracle in THE's FALLBACK slot. setTokenConfig rewrites THE as [Chainlink, Atlas, none] with the fallback disabled; main, pivot and caching are unchanged. TRX & lisUSD (Core Pool): caps to 0, vlisUSD CF 50% -> 0 with LT kept at 55%, RF to 100%, IRM to the deprecation JumpRateModel 0xc2553529... (base 300%, ~500% at full utilisation), and pause the actions still open (vTRX BORROW + ENTER_MARKET, vlisUSD MINT + ENTER_MARKET). The simulation now forks at 123494000 (2026-09-23), after the ticket's 2026-09-22 snapshot. It asserts the pre-state from the ticket, the post-state, event counts with zero Failure events, THE pricing with the RedStone feed removed, and that redeem and repay still work while mint, borrow and enterMarkets revert. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
vancegpt-bot
force-pushed
the
vip/pendle-pt-adapter-governance-handover
branch
from
September 23, 2026 03:54
c3e6f90 to
dfe5ecc
Compare
fred-venus
dismissed stale reviews from GitGuru7, Debugger022, and themself
via
September 23, 2026 06:28
d71b0bf
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
VIP-663 [BNB Chain] Pendle PT Adapter Governance Handover, THE Oracle Update and TRX & lisUSD Deprecation
This VIP has three parts on BNB Chain:
Part 1: Pendle PT adapter governance handover
Two PendlePTVaultAdapter proxies exist on BNB Chain mainnet. The first (0x60Db419d8ea13C5827072Cf693D13cA1Ec6E0B4a) was activated by VIP-606, is recorded in the venus-periphery deployment artifacts, and is owned by the Normal Timelock under the shared ProxyAdmin 0x6beb6D2695B67FEb73ad4f172E8E2975497187e4. The second (0x179bD219c2a20a49406C9AdA39634eDac1C7F656) was deployed on 2026-03-23 and never went through the same handover: it and its own ProxyAdmin (0xaE560a5e368Ea72D4090533B245bF163c9Dc6dc2) remained owned by the deployer address 0x24c30C9C84b8a3C71A521ad30007ED47372331b3, and its implementation 0x79276267b23B611ee9Aa8D8D50CB134334e876fA was never recorded in a deployment artifact.
The two implementations are byte-identical in source except for three lines: the _checkAccessAllowed call is absent from addMarket(address,address), pause() and unpause() on 0x79276267b23B611ee9Aa8D8D50CB134334e876fA. As a result those three functions are callable by any address on this proxy today, while the equivalent calls on the VIP-606 adapter revert with the ACM Unauthorized error. Because withdraw and redeemAtMaturity carry the whenNotPaused modifier, any address can suspend this adapter's deposit and exit paths — and any address can lift the pause again, since unpause() is equally open.
Users hold their vTokens directly, but existing delegate approvals remain effective until revoked. This VIP places the legacy adapter under governance and repairs its access checks; it does not revoke those approvals or disable user redemption. Users can also authorize the VIP-606 adapter or redeem directly through the vToken, subject to normal market liquidity, collateral and pause restrictions.
Prerequisites
The deployer address 0x24c30C9C84b8a3C71A521ad30007ED47372331b3 has completed the two prerequisite transactions:
Execution requires the Normal Timelock to remain the adapter’s pending owner and the ProxyAdmin’s owner.
Changes
1. Accept ownership of the adapter
2. Restore the guarded implementation
Legacy adapter permissions
No ACM permissions are granted: the production integration uses the VIP-606 adapter, so this legacy adapter does not need ongoing market or pause administration. After the upgrade, addMarket, pause and unpause require ACM authorization, which has not been granted on this adapter to the timelocks or guardians. Ownership alone does not authorize these functions. Governance retains the ability to upgrade the contract or grant permissions later if necessary.
The upgrade preserves the existing pause state. If the legacy adapter is paused before execution, it remains paused and cannot be unpaused without a subsequent permission grant or other governance action. Users can instead authorize and redeem through the VIP-606 adapter; the two adapters have independent pause states.
Part 2: THE oracle update
RedStone is discontinuing its THE price feed (0xFB1267A29C0aa19daae4a483ea895862A69e4AA5). On Venus the feed is read through the RedStoneOracle (0x8455EFA4D7Ff63b8BFD96AdD889483Ea7d39B70a), which sits in the FALLBACK slot of THE's ResilientOracle configuration. The current configuration is:
3. Clear THE's fallback oracle
Part 3: TRX and lisUSD deprecation
The next deprecation stage for two BNB Chain Core Pool markets, vTRX (0xC5D3466aA484B040eE977073fcF337f2c00071c1) and vlisUSD (0x689E0daB47Ab16bcae87Ec18491692BF621Dc6Ab):
vTRX
vlisUSD
Both markets move to the deprecation interest rate model 0xc255352947ef3594C45b0Fe8bcB690e51C3D744A, the one already used by the deprecated Core Pool markets: a 300% base rate, rising to about 500% APR at full utilisation.
4. Pause actions
5. Set supply and borrow caps to zero
6. Set the vlisUSD collateral factor to zero
7. Set the reserve factor to 100% on vTRX and vlisUSD via _setReserveFactor(uint256).
8. Switch to the deprecation interest rate model on vTRX and vlisUSD via _setInterestRateModel(address).
Summary
If approved, this VIP will:
After execution, both Pendle PT adapters on BNB Chain are owned by the Normal Timelock, but this legacy adapter receives no ACM permission grants.
Validation
npx hardhat test simulations/vip-663/bscmainnet.ts --fork bscmainnet— 55 passing, fork block 123494000.castVote(663, 1).Safe transactions
Execute propose first. Before executing either vote, verify that the proposer’s latest proposal ID is 663 and its state is Active.