Skip to content

feat: V4 deployment scripts (review only) - #1326

Draft
avniculae wants to merge 6 commits into
mainfrom
feat/v4-deployments
Draft

feat: V4 deployment scripts (review only)#1326
avniculae wants to merge 6 commits into
mainfrom
feat/v4-deployments

Conversation

@avniculae

@avniculae avniculae commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

Review only, not for merge.

Scripts:

  • scripts/deploy/AaveV4DeployCorrelatedSpoke.s.sol — base plus AaveV4DeployUSDGCorrelatedSpoke and AaveV4DeployMapleCorrelatedSpoke
  • scripts/deploy/AaveV4DeployIsolatedHub.s.sol — base plus AaveV4DeployPendlePaxosIsolatedHub
  • scripts/deploy/AaveV4DeployTokenizationSpoke.s.sol — base plus AaveV4DeployGlobalDollarTokenizationSpokes

Tests:

  • tests/scripts/AaveV4DeployUSDGCorrelatedSpoke.t.sol
  • tests/scripts/AaveV4DeployMapleCorrelatedSpoke.t.sol
  • tests/scripts/AaveV4DeployGlobalDollarTokenizationSpokes.t.sol
  • tests/deployments/fork/GlobalDollarTokenizationSpokesActivation.t.sol — devnet activation test, self-skips without TENDERLY_DEVNET_RPC

@avniculae
avniculae force-pushed the feat/v4-deployments branch from 1ee6cda to c20a0a6 Compare July 28, 2026 09:15
The Paxos Hub was renamed to Global Dollar Hub, so the replacement
TokenizationSpokes take the Global Dollar naming: shareName
`Wrapped Aave Global Dollar <asset>` and shareSymbol `waGlobalDollar<asset>`.

Both feed the CREATE2 address (the symbol is the salt label and both go into
the proxy init data), so the three instances already deployed on mainnet
(0xFaB4..d2fD, 0xF38C..0E27, 0xB408..E406) are obsolete and need a redeploy.
The activation batch has not been executed on mainnet, so nothing is live.

The `NEW_WA_GLOBAL_DOLLAR_*` addresses in the activation fork test are the
deterministic addresses for deployer 0x0315d353045f8FBCDd8CAcEbA40b019d094B670E;
the same derivation reproduces the three currently deployed addresses exactly.
A new devnet is required for that test to pass again.
@avniculae
avniculae force-pushed the feat/v4-deployments branch from c20a0a6 to 6586a87 Compare July 28, 2026 09:15
Comment on lines +95 to +98
address public constant ACCESS_MANAGER = 0x08aE3BE30958cDd1847ec58fFfd4C451a87fDF01;
// GovernanceV3Ethereum.EXECUTOR_LVL_1
// https://github.com/aave-dao/aave-address-book/blob/c48a741a10b94202f738d52a09e9c9a8bf18a67d/src/GovernanceV3Ethereum.sol#L56
address public constant EXECUTOR_LVL_1 = 0x5300A1a15135EA4dc7aD5a167152C01EFc9b192A;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I really don't want to import the aave-address-book here (since the address book import v4 as well), but I'm not a fan either of copy-pasting the addresses like this as well.

How about we do like with Gho, and start an aave-v4-deploy repo that imports aave-v4 & the address-book, and where those scripts + related tests can live ?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like Standalone more than Isolated. Also, do we need to add this distinction?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants