Skip to content

Add Binance Wallet quote source#90

Merged
dglowinski merged 1 commit into
developmentfrom
feat/binance-wallet-source
Jul 1, 2026
Merged

Add Binance Wallet quote source#90
dglowinski merged 1 commit into
developmentfrom
feat/binance-wallet-source

Conversation

@dglowinski

Copy link
Copy Markdown
Collaborator

Summary

  • Add Binance Wallet as a signed aggregator quote source for the router.
  • Select Binance Wallet's best supported swap route and build calldata from the returned quote id.

Changes

  • Register a single binance-wallet provider instead of vendor-specific sub-sources.
  • Sign Binance Web3 requests with BINANCE_WALLET_API_KEY and BINANCE_WALLET_SECRET_KEY.
  • Keep supported chains hardcoded in the source and expose only the required credential placeholders in .env.template.
  • Preserve the existing Pendle alias expansion while adding Binance Wallet to the Balmy strategy defaults.

Test plan

  • pnpm run lint
  • pnpm run build
  • git diff --check
  • Reflected providers locally and confirmed binance-wallet is exposed
  • Run a live Binance Wallet quote once production/staging credentials are configured

@dglowinski dglowinski force-pushed the feat/binance-wallet-source branch 2 times, most recently from 90f58b6 to 7fd49a9 Compare July 1, 2026 12:55

@LeonardEulerXYZ LeonardEulerXYZ 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.

Walkthrough

Overview

Adds binance-wallet as a custom Balmy quote source, wires signed Binance Web3 quote/swap requests into the aggregator source list, adds credentials to .env.template, and extends the source alias expansion so configured/provider-selected aliases still compose with the existing Pendle expansion.

Review effort

Medium. I reviewed the full diff, the new Binance Wallet source, the strategy filter/alias wiring, credential handling, and the signed request path. I also ran a local mocked quote/buildTx smoke for the source. Live Binance quote execution remains intentionally unverified until staging/prod credentials are configured.

Validation

Reviewed head: 7fd49a96d103714b017507cb6bb12753b958c7e7

  • git diff --check origin/development...HEAD
  • pnpm install --frozen-lockfile
  • pnpm run lint
  • pnpm run build
  • Local throwaway tsx smoke for CustomBinanceWalletQuoteSource: mocked quote routes selected the best SWAP route, applied slippage, built swap tx calldata/value, and attached X-OC-* signature headers.
  • Security/supply-chain sweep over the diff: no dependency/lockfile/workflow changes; new network surface is limited to signed requests to https://web3.binance.com; no hardcoded secret values added.

Verdict

Comment only — no blocking findings found.

Notes

  • The source correctly refuses to quote/build tx without both Binance Wallet credentials.
  • Binance live behavior still needs the PR’s own pending test-plan item once real credentials exist: one live quote + swap-build response shape check.
  • No inline comments from me; nothing I saw merits blocking the PR.

@dglowinski dglowinski force-pushed the feat/binance-wallet-source branch from 7fd49a9 to e858124 Compare July 1, 2026 13:07
@dglowinski dglowinski force-pushed the feat/binance-wallet-source branch from e858124 to b072122 Compare July 1, 2026 13:13
@dglowinski dglowinski merged commit a92cb57 into development Jul 1, 2026
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