Skip to content

chore: CCTP & OFT deployments to all chains - #1436

Open
fusmanii wants to merge 21 commits into
masterfrom
faisal/deploy-scripts
Open

chore: CCTP & OFT deployments to all chains#1436
fusmanii wants to merge 21 commits into
masterfrom
faisal/deploy-scripts

Conversation

@fusmanii

@fusmanii fusmanii commented May 19, 2026

Copy link
Copy Markdown
Contributor

Closes ACP-111

Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com>

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 4be777f5e0

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread script/mintburn/cctp/DeploySponsoredCCTPDstPeriphery.s.sol
Comment thread script/mintburn/cctp/createSponsoredDeposit.s.sol
fusmanii added 2 commits May 20, 2026 09:49
Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com>
@fusmanii

Copy link
Copy Markdown
Contributor Author

@codex review

@fusmanii
fusmanii requested review from grasphoper and tbwebb22 May 20, 2026 13:52
@fusmanii

Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: c5aa03fe32

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

if (block.chainid == 999) {
donationBox.grantRole(donationBox.WITHDRAWER_ROLE(), address(sponsoredCCTPDstPeriphery));
} else {
donationBox.grantRole(donationBox.WITHDRAWER_ROLE(), address(multicallHandler));

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Grant DonationBox withdraw role to the dst periphery

For non-999 deployments this branch grants WITHDRAWER_ROLE only to multicallHandler, but SponsoredCCTPDstPeriphery executes sponsorship logic through delegatecalls that invoke donationBox.withdraw(...) from the periphery context. That means on those chains sponsored flows will revert with AccessControl when they need DonationBox funds. The previous script granted the role to the destination periphery, which is required for these withdrawal paths to work.

Useful? React with 👍 / 👎.

vm.stopBroadcast();

config.set("sponsoredCCTPDstPeriphery", address(sponsoredCCTPDstPeriphery));
config.set(string.concat("sponsoredCCTPDstPeriphery_", tokenName), address(sponsoredCCTPDstPeriphery));

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Keep canonical config key for deployed dst periphery

This change only writes sponsoredCCTPDstPeriphery_<token> and no longer updates the canonical sponsoredCCTPDstPeriphery key. Existing operational scripts in this repo (for example script/mintburn/cctp/SetUpTokens.s.sol and script/mintburn/cctp/createLighterDeposit.s.sol) still read the canonical key, so after deployment they will target a stale/old address instead of the newly deployed contract.

Useful? React with 👍 / 👎.

fusmanii added 2 commits May 25, 2026 23:59
Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com>
Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com>
@fusmanii fusmanii changed the title chore: Deploy script update chore: CCTP & OFT Deployment May 26, 2026
fusmanii added 2 commits May 27, 2026 13:13
Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com>
@fusmanii fusmanii changed the title chore: CCTP & OFT Deployment chore: CCTP deployments to all chains May 27, 2026
grasphoper and others added 2 commits May 28, 2026 20:39
Signed-off-by: Ihor Farion <ihor@umaproject.org>
Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com>
@fusmanii fusmanii changed the title chore: CCTP deployments to all chains chore: CCTP & OFT deployments to all chains Jun 3, 2026
@fusmanii
fusmanii force-pushed the faisal/deploy-scripts branch 2 times, most recently from 80917af to b3ae00f Compare June 3, 2026 20:05
fusmanii added 2 commits June 9, 2026 21:08
Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com>
@linear

linear Bot commented Jun 10, 2026

Copy link
Copy Markdown

ACP-111

fusmanii added 3 commits June 24, 2026 08:56
* undo unichain deployment

Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com>

* OFT deployment

* version

Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com>

* version

Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com>

* unichain dst deploy

Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com>

---------

Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com>
Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com>
fusmanii added 4 commits July 14, 2026 15:13
Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com>
Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com>
Signed-off-by: Ihor Farion <ihor@umaproject.org>
@grasphoper

grasphoper commented Aug 13, 2026

Copy link
Copy Markdown
Collaborator

Deployment vetting

Verified all 89 creations across 15 chains: on-chain creation bytecode is byte-identical to a clean FOUNDRY_PROFILE=mintburn build (only CBOR metadata hashes differ on older batches). Constructor args match the replaced contracts; new-chain tokens/messengers/domains/EIDs check out.

Open items:

  1. 999 DstOFTHandler 0x1fE1…38e5 — dev wallet still has DEFAULT_ADMIN_ROLE (only readiness FAIL). Grant to ops msig 0xd396…2A7F, then revoke dev.
  2. Arbitrum CCTP src mismatch — config.toml says 0x8292…269c (chore: OFT & CCTP direct deposit deploy #1423: dev-owned, no DIRECT_CALLER on new dst); receipts/deployed-addresses say 0xB675…7704 (hardened, wired). Reconcile.
  3. HyperEVM CCTP src mismatch — config.toml says 0xF71c…e95F (chore: OFT & CCTP direct deposit deploy #1423), whose DIRECT_CALLER on dst 0x05BC…C294 was granted then revoked; old 0xF4E3…a1B4 still holds it. Reconcile.

@grasphoper grasphoper left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Looks good, one comment #1436 (comment)

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