• © Goverland Inc. 2026
  • Privacy Policy
  • Terms of Use
EverclearEverclearby0xD976faAa19135dB4B846e43DdAaA9C66db842B7B0xD976…2B7B

Social EGP-33 - Amarok Technical Upgrade Proposal (Asset Recovery & Withdrawal)

Voting ended 3 months agoSucceeded

Amarok Upgrade Proposal

Overview

  • Amarok protocol was shut down, with all contracts paused. During the shut down period, some users were not able to withdraw funds staked in the LP pools.
  • To mitigate this, a technical upgrade is proposed to the Amarok contracts holding the underlying assets. This upgrade will allow the owner of the contracts (security council) to withdraw assets to a multisig governed by the community admins.
  • Users can submit claims against these assets by submitting a proof of burn transaction, at which point the signers can refund the user their equivalent next* balance in the appropriate asset.

Background

  • Amarok LP pools were created to swap the minted next* assets to the useful asset on that chain, i.e. Arbitrum LP pools hold nextUSDC/USDC.
  • The capital underlying the next assets are held on the respective canonical domain for the asset. They are minted once the underlying asset is locked and a message arrives on the chain with the LP pool. For example, when staking in nextUSDC/USDC pool on Arbitrum:
    • User locks USDC on mainnet Amarok contracts.
    • A message is sent from mainnet → Arbitrum, indicating the amount of locked USDC.
    • The message arrives on Arbitrum, and nextUSDC is minted and delivered to the user.
    • User stakes nextUSDC / USDC in a (roughly) 1:1 ratio on Arbitrum.
    • LP tokens are minted to the user.
  • Users who have not withdrawn from the LP pool are no longer able to redeem their LP tokens for the nextUSDC / USDC value, nor are they able to unwind nextUSDC to USDC by sending a message back to the deposit chain.

Impacted Assets

  • The following assets exist on the Amarok contracts as backing for the LP pools:

    Asset Amount Locked Canonical Chain Pool Chains
    USDC 147,910.8749 Ethereum Arbitrum One (42161); BNB Chain (56); Base (8453); Gnosis Chain (100); Linea (59144); Metis (1088); Optimism (10); Polygon (137)
    USDT 16,653.1342 Ethereum Arbitrum One (42161); BNB Chain (56); Gnosis Chain (100); Linea (59144); Metis (1088); Optimism (10); Polygon (137)
    WETH 75.7338 Ethereum Arbitrum One (42161); BNB Chain (56); Base (8453); Gnosis Chain (100); Linea (59144); Metis (1088); Mode (34443); Optimism (10); Polygon (137); X Layer (196); Mode (34443)
    DAI 15,674.2730 Ethereum Arbitrum One (42161); BNB Chain (56); Base (8453); Gnosis Chain (100); Linea (59144); Optimism (10); Polygon (137)
    xCLEAR 52,200,633.756 Ethereum None
    GIV 11,216.27236 Ethereum Gnosis Chain (100); Optimism (10)

Special Case: CLEAR

  • CLEAR is an xERC20 token, and the Connext contracts hold xCLEAR. When xCLEAR is sent across chains, it is burned and minted by whitelisted bridges.
    • Due to a configuration oversight, instead of burning on the origin chain, the Connext bridges actually held the xCLEAR to support bridging out.
  • To fix this, the xCLEAR simply needs to be burned from the Connext contract on Mainnet, as it should have been in the original flow.

Contract Upgrade

Changes

  • Contract upgrade would add the following functionality to Ethereum (the only canonical domain):

    function withdrawCanonical(address _asset, address _recipient) whenPaused onlyOwner public {
    	IERC20Metadata asset = IERC20Metadata(_asset);
    
      // Withdraw entirety of held balance to recipient
      uint256 amount = asset.balanceOf(address(this));
      
    	AssetLogic.handleOutgoingAsset(amount, _asset, _recipient);
    }
    

    🚧 This will ensure that no funds exist in the Amarok contracts. If any in-flight transfers exist for the listed assets that have not already been refunded, they can also exercise claims against this recovered capital by showing their xcall as proof of burn.

  • Contracts that have LP pools with balance would update the following functionality allowing users to redeem their LP tokens for the underlying pair:

    function removeSwapLiquidity(...) external nonReentrant deadlineCheck(deadline) ~~whenNotPaused~~ returns (uint256[] memory)
    function removeSwapLiquidity(...) external nonReentrant deadlineCheck(deadline) whenPaused returns (uint256[] memory)
    

Upgrade

  • Security Council Lead will review the deployment script
  • Security Council will propose the upgrade to the relevant contracts, initiating a 1-week delay.
  • After the delay elapses, Security Council will execute a mainnet upgrade that:
    • Performs the appropriate facet cuts.
    • Executes the withdrawCanonical function for all of the locked assets to send balance to community admin multisig.
    • Burns CLEAR from the mainnet Connext contracts.
  • Once the mainnet upgrade is complete, the remove functions can be upgraded on the pool chains with the 7-day delay:
    • Gnosis
    • Optimism
    • Linea
    • Arbitrum
    • Base
    • BNB
    • Metis
    • X-Layer
    • Polygon
    • Mode
  • After the withdrawal is completed, a quick balance check is required to confirm that all funds have been successfully withdrawn for the relevant assets.

Redemption Process

  • Separate UI will be built for this (technical specification for the claiming UI, including how users must submit a valid proof of burn, will be created);
  • To exercise a claim on the funds, users must submit a valid proof of burn of the next asset. After confirmation, funds will be sent to the burning address on mainnet (to minimize operational complexity):

💡 Quick guide for the user

If you are holding LP tokens, you must:

  1. Remove the liquidity to get a balance of underlying assets.
  2. Burn the received next asset.

If you have an ongoing transfer in flight for one of the listed assets, you must:

  1. Send the xcall transaction on the origin chain.
  2. The amount of next asset burnt in the xcall will represent your claimable amount, and it will be sent to the initiating caller of the origin chain.

Note: Everything is redeemable on mainnet to minimize operational complexity.

  • Ops setup for the multi-sig and signers will be determined by the Security council;
  • Users will have 6 months to redeem their funds from the community admin multisig, after which they will return to the Everclear DAO;
  • Everclear DAO will be responsible for providing the necessary information so that users are informed in a timely manner;
  • Once the funds have been transferred to the DAO, no user will have the right to claim the funds from the DAO.

Off-Chain Vote

For
22.41M NEXT100%
Against
0 NEXT0%
Abstain
1.66K NEXT0%
Quorum:149%
Download mobile app to vote

Discussion

EverclearSocial EGP-33 - Amarok Technical Upgrade Proposal (Asset Recovery & Withdrawal)

Timeline

Oct 22, 2025Proposal created
Oct 24, 2025Proposal vote started
Oct 31, 2025Proposal vote ended
Oct 31, 2025Proposal updated