You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add core-side synthetic destination for swap-to-address
Let account.fetchSwapQuotes accept an optional toAddressInfo descriptor
(toPluginId, toTokenId, toAddress) as an alternative to a destination
toWallet. The core validates exactly one of the two, then builds a
synthetic, bridgified EdgeCurrencyWallet from the descriptor, backed by
the real currencyConfig it already holds. getAddresses and
getReceiveAddress return the pasted address; currencyInfo and
currencyConfig.allTokens come from the real plugin config. Swap plugins
receive an EdgeCurrencyWallet unchanged.
Make EdgeTxActionSwap.payoutWalletId optional, since a swap-to-address
destination has no payout wallet.
A bridge-crossing proof test stands up the production yaob wire format
(makeLocalBridge with a JSON cloneMessage): the GUI passes only the
descriptor, the core builds the synthetic destination, and a
plugin-faithful consumer reads a working address, token, and currency
info through the bridge. This inverts the Phase 1 failure where a
GUI-built fake wallet could not cross the bridge.
Copy file name to clipboardExpand all lines: CHANGELOG.md
+3Lines changed: 3 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,6 +2,9 @@
2
2
3
3
## Unreleased
4
4
5
+
- added: Accept an optional `toAddressInfo` descriptor on `EdgeSwapRequest` as an alternative to `toWallet`, so a swap can target a pasted destination address. The core builds a synthetic, bridgified destination wallet from the descriptor, backed by the real `currencyConfig`, leaving swap plugins unchanged. Exactly one of `toWallet` or `toAddressInfo` is required.
6
+
- changed: Make `EdgeTxActionSwap.payoutWalletId` optional, since a swap-to-address destination has no payout wallet (`payoutAddress` carries the destination).
7
+
5
8
## 2.44.0 (2026-04-06)
6
9
7
10
- added: Expose engine otherMethods on EdgeMemoryWallet so memory wallets support custom methods like makeMaxSpend.
0 commit comments