Skip to content

feat(bridge): receive HYPE on Elysium - #132

Closed
Vasanthdev2004 wants to merge 1 commit into
feat/bridge-elysiumfrom
feat/bridge-hype
Closed

Vasanthdev2004 wants to merge 1 commit into
feat/bridge-elysiumfrom
feat/bridge-hype

Conversation

@Vasanthdev2004

Copy link
Copy Markdown
Collaborator

Stacked on #131 (feat/bridge-elysium), including its latest commit cd910df. Phase 7 of the bridge update.

What changes

HYPE, Elysium's gas token, can now arrive on Elysium as the asset of any route there. It is never sent. This adds eleven routes, seventy-three in all: into HYPE from Base ETH and USDC, Robinhood ETH and USDG, Arc USDC, and ETH or USDC from Ethereum, Arbitrum and Optimism.

  • Registry. Each asset now has a send side and a receive side (BRIDGE_SEND_ASSETS, BRIDGE_RECEIVE_ASSETS). Elysium sends USDC and receives USDC or HYPE. Every asset check names its side, so HYPE is refused as a source everywhere (requests, links, stored transfers, route changes, history).
  • One pinned exception in the validator. Relay's solvers hold USDC on Elysium and swap it into HYPE, so a failed fill refunds that USDC on Elysium. The registry pins Elysium USDC 0xb47c…0B65 as the only destination refund HYPE may use. Native HYPE, any other token, or the origin's currency as that refund is refused, and so is a HYPE request paid out in USDC. Every other output still refunds in itself, USDC into Elysium included. The rest of the order checks are unchanged.
  • Panel. Elysium's Receive menu lists USDC and HYPE. When Elysium receives USDC, a button reads "Gas on Elysium is paid in HYPE. With none there yet, receive HYPE instead" and switches the asset. feat(bridge): Elysium routes for USDC #131's "USDC only · Gas in HYPE" caption now shows only on Elysium's Send side. The /bridge page lists HYPE on Elysium as receive only.
  • Bridge, then buy. A buy paid in HYPE on Elysium can now be bridged into.
  • Live test fix. USDC to Arc USDC is now quoted by Circle on every source. A Circle quote has no Relay request, so the live test reads Relay's status only for Relay quotes.

Left out on purpose

  • Gas top-up (topupGas). The HYPE it adds appears only in the quote's details, not in the signed order's payments, so nothing verified guarantees it arrives. Its $2 default is 8% of a $25 transfer.
  • Sending HYPE. These quotes deposit to Relay's router with a swap call (0xcd6e13f7), not the depository deposit this bridge verifies.

Verification

  • All 73 read-only live routes passed through the server validator. Each of the 11 HYPE routes guarantees 99.5% of its estimate. Relay's fee is 0.34% to 0.46% of what is sent (it includes the swap on Elysium); USDC arriving as USDC costs 0.11% to 0.15%. Figures are in docs/bridge.md.
  • New tests cover the send and receive lists, the pinned refund, HYPE being Elysium's alone, and every wrong refund, output and label across all eight sources into HYPE. They also cover route changes, links, history, bridge-then-buy and all 73 deposit routes.
  • Full suite: 1539 tests, 28 failures, all of them existing ones. tsc and eslint are clean.
  • Browser check on desktop and phone: the Receive menu, the HYPE switch, the reversed route, the networks list, and the review page's HYPE scenes.
  • No wallet signed anything. A small real transfer into HYPE is still needed before this counts as exercised.

HYPE, Elysium's gas token, can now arrive there as the asset of any
route into Elysium. It is never sent. The asset registry gains a send
and a receive side, so Elysium sends USDC and receives USDC or HYPE.

Relay delivers HYPE by swapping its Elysium USDC, so a failed fill
refunds that USDC on Elysium. The registry pins this as the one
destination refund HYPE may use; every other output still refunds in
itself, and the rest of the order checks are unchanged.

The panel offers a one-tap switch to HYPE when Elysium receives USDC,
the /bridge page lists HYPE as receive only, and a buy paid in HYPE on
Elysium can now be bridged into. Gas top-ups and sending HYPE stay out:
neither is part of the signed deposit this bridge verifies.

The live test no longer asks Relay for the status of a Circle quote,
which USDC routes into Arc now return.
@coderabbitai

coderabbitai Bot commented Nov 10, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

Run configuration

  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: defaults
  • Review profile: CHILL
  • Plan: Essentials
  • Run ID: bd55f228-9096-427e-84f9-e26461c5e700

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

@Vasanthdev2004

Copy link
Copy Markdown
Collaborator Author

Closed in favour of #135, which holds the whole bridge update in one PR. The commits from this PR are in it unchanged.

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.

1 participant