Skip to content

fix: gate Fast Transfer by source-chain support - #170

Open
UfukNode wants to merge 1 commit into
circlefin:masterfrom
UfukNode:fix/unsupported-fast-transfer-routes
Open

UfukNode wants to merge 1 commit into
circlefin:masterfrom
UfukNode:fix/unsupported-fast-transfer-routes

Conversation

@UfukNode

@UfukNode UfukNode commented Sep 4, 2026

Copy link
Copy Markdown

After #160, the app opens with Arc Testnet as the source and Fast Transfer selected. Circle currently lists Arc as a Standard Transfer source only, so the default UI promises a faster route that is not available for that source. The same mismatch applies to several other supported source chains.

This change:

  • keeps the Fast tab disabled for source chains that do not support it
  • defaults Arc to Standard and resets the selection when switching from a Fast-capable source
  • validates the capability again in the transfer function so the rule does not depend on UI state
  • selects the fee entry with finality threshold 1000 instead of assuming the first API item is the Fast fee

Fast-capable sources follow Circle's supported chains table:
https://developers.circle.com/cctp/concepts/supported-chains-and-domains

Checked with:

  • npm run lint (passes; existing getBalance hook warning remains)
  • npm run build
  • browser flow: Arc -> Arbitrum -> select Fast -> Arc; Fast is re-enabled for Arbitrum and the selection returns to Standard for Arc

@UfukNode

UfukNode commented Sep 4, 2026

Copy link
Copy Markdown
Author

@hjchen-circle, #160 correctly made the old RPC rewrite in #149 unnecessary. While checking the current Arc flow, I found that Arc is now the default source with Fast selected even though it is Standard-only as a source in Circle's support table. This PR updates that current behavior and keeps the check in both the UI and transfer path. I verified the Arc/Arbitrum/Arc selection flow in a browser as well as lint and production build.

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