Skip to content

chore: upgrade hyperliqued contract - #646

Open
karim-en wants to merge 1 commit into
mainfrom
upgrade-hyperliqued
Open

chore: upgrade hyperliqued contract#646
karim-en wants to merge 1 commit into
mainfrom
upgrade-hyperliqued

Conversation

@karim-en

@karim-en karim-en commented Aug 5, 2026

Copy link
Copy Markdown
Collaborator

This pull request updates the Hardhat configuration and the OpenZeppelin deployment metadata to support the HyperEVM Mainnet (chain ID 999) and to improve contract storage layout descriptions. The most important changes are summarized below.

Support for HyperEVM Mainnet

  • Added a new network configuration for hyperEvmMainnet (chain ID 999) in evm/hardhat.config.ts, including API and block explorer URLs.

OpenZeppelin Storage Layout Updates

  • Updated the evm/.openzeppelin/unknown-999.json file with:
    • New or revised type definitions for contract storage, including MultiTokenInfo and IWormhole types. [1] [2] [3] [4] [5]
    • Additional details for struct members, primitive types, and mappings, improving the accuracy and clarity of the storage layout for deployed contracts.
    • Inclusion of erc7201 namespace entries for AccessControlUpgradeable and Initializable contracts.
    • Updated addresses and type references to match the latest deployments on chain 999.

@claude

claude Bot commented Aug 5, 2026

Copy link
Copy Markdown

Pull request overview

This is a maintenance PR that onboards HyperEVM Mainnet (EVM chainId 999) to the EVM tooling. It adds an Etherscan verification entry for the hyperEvmMainnet network and refreshes the OpenZeppelin upgrades storage-layout manifest (unknown-999.json) to record a new OmniBridge/OmniBridgeWormhole implementation deployment on that chain. No Solidity source, payload encoders, or ChainKind discriminants are touched.

Changes:

  • hardhat.config.ts: new etherscan.customChains entry for hyperEvmMainnet (chainId 999) pointing at the Etherscan V2 multichain API + hyperevmscan.io explorer.
  • unknown-999.json: bumped AST-node IDs on the existing impl entry (MultiTokenInfo 9674→9973, IWormhole 11143→11442), expanded types/namespaces (newer OZ-plugin format), and appended a new impl entry (bb303034…, 0x4448cE…).

Reviewed changes

Per-file summary
File Description
evm/hardhat.config.ts Adds Etherscan custom-chain verification config for hyperEvmMainnet (chainId 999). Network already defined at L541 with omniChainId 9.
evm/.openzeppelin/unknown-999.json Auto-generated OZ storage-layout manifest: refreshed type IDs on the current impl and appended a new impl deployment; storage layout unchanged.

Findings

I checked the items that matter for this repo: the counterpart chain-tag constant, storage-layout upgrade safety, and config consistency.

  • Chain-tag correctness ✓hyperEvmMainnet.omniChainId = 9 (hardhat.config.ts:543) matches ChainKind::HyperEvm = 9. The EVM network chainId (999) is orthogonal to the on-wire chain tag; no conflict.
  • Storage-layout upgrade safety ✓ — the new impl (bb303034…, slots 0–9 + slot 58) is identical in slot ordering, offsets, and semantic types to the current impl (577b5b3d…); __gap remains uint256[49], nothing reordered or removed. Only AST-node IDs differ (expected across separate compilations). Storage-compatible.
  • Etherscan config consistency ✓ — the new customChains entry references an existing network (hyperEvmMainnet, L541) and mirrors the existing Abstract entries' V2-API pattern.

No blocking issues. Both files are configuration / auto-generated metadata; no contract logic or cross-chain encoding is affected.

✅ Approved

@karim-en
karim-en requested review from a team and a lite review from Copilot August 5, 2026 11:34

Copilot AI left a comment

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.

🟢 Ready to approve

The changes are small, consistent with existing configuration patterns, and the OpenZeppelin manifest remains structurally valid.

This review doesn't count toward merge requirements. Sign up for the private preview to control whether Copilot approvals count.

Pull request overview

This PR extends the EVM tooling/configuration for HyperEVM Mainnet (chain ID 999) and refreshes the OpenZeppelin upgrades manifest for chain 999 so storage layout/type metadata is more complete (including ERC-7201 namespace entries).

Changes:

  • Added an etherscan.customChains entry for hyperEvmMainnet (chainId 999) to support contract verification/linking via the configured explorer.
  • Updated evm/.openzeppelin/unknown-999.json with revised type IDs and richer storage/type metadata (e.g., MultiTokenInfo, IWormhole, and ERC-7201 namespaces).
File summaries
File Description
evm/hardhat.config.ts Adds HyperEVM Mainnet to the Etherscan/verification customChains list (network already exists in networks).
evm/.openzeppelin/unknown-999.json Updates chain 999 OpenZeppelin deployment/layout metadata, including improved type definitions and namespace entries.
Review details
  • Files reviewed: 2/2 changed files
  • Comments generated: 1
  • Review effort level: Lite

We're testing this review assessment. Please use 👍 or 👎 to tell us if it's correct.

Comment thread evm/hardhat.config.ts
Comment on lines +625 to +632
{
network: "hyperEvmMainnet",
chainId: 999,
urls: {
apiURL: "https://api.etherscan.io/v2/api?chainid=999",
browserURL: "https://hyperevmscan.io",
},
},
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