Bug Fixes
- add HTTP timeouts to Alchemy requests - (d7d40ba)
- slippage setting drift - (006d58e)
- WalletConnect multiple inits (#1222) - (0af2ae7)
- use pair hashes again - (10c9cff)
- nice error message for rejected transactions - (ccca155)
- avoid reload after network switch - (33c7059)
- tugrik symbol for USDT - (ac4ea41)
- show already refunded for EVM refunds - (df67a0b)
- persist half signed commitment lockups - (d3c7c31)
- creation data off by one (#1238) - (7c88e89)
- do not show routing fee limit for invalid pairs (#1241) - (3a2b217)
- amount for OFT sweeps - (f84f1e7)
- builds without git history - (cef100c)
- connect wallet mismatch for contract check - (ca2077c)
- show TransactionClaimed component on InvoicePaid status (#16) - (eeec3c7)
- validate if send asset is allowed (#15) - (c073daf)
- hardware wallet for non RSK EVM chains (#14) - (897b87f)
- bigint replacer for logs - (980c842)
- EIP-1559 on hardware signers (#24) - (df857e5)
- EIP-1559 on hardware signers - (62b9b87)
- TBTC receive amount with gas topup - (1dcd58d)
- get message fee for OFT refunds - (23982fe)
- guard against reading OFT of null - (ede4455)
- OFT on ETH L1 (#1259) - (ae8167d)
- OFT send amount fee calculation (#1261) - (91d384e)
- asset order in selector (#1265) - (382c73b)
- routed refunds (#1271) - (f8f49fd)
- preserve refund tx button (#1270) - (6cf53e7)
- amount below minimum value after clicking "min" (#1280) - (2b2cd7b)
- USDT and LN icon sizes (#1285) - (c91478a)
- USDT 0-amount chain swap (#1289) - (c1f0605)
- allow 0-amount chain swaps with post OFT (#1293) - (fe91b65)
- 0-amount receive with OFT (#1295) - (1a051b9)
- harden OFT swap worker - (0aaef7e)
- backfill missed OFT commitment - (69a5580)
- reset ERC20 approval if needed (#1299) - (90d69db)
- input validation race (#1303) - (4396db4)
- recover from Alchemy fail on pre OFT lockup (#1308) - (d092566)
- clear invoice when amounts change - (6b35728)
- run generate in Docker builds (#1318) - (f30cb5f)
- OFT refund followup (#1320) - (39c48fa)
Features
- USDT0 swaps - (ab97e08)
- dynamic WalletConnect config (#1210) - (ceff4ad)
- show loading indicator for quote fetching - (e912a0f)
- commitment refunds - (a16a32f)
- allowing sending to external EVM addresses - (1e8fa20)
- refund to original token for routed swaps (#1234) - (f0c50e9)
- receive extra gas token when going to ERC20 (#1225) - (ab37aed)
- send to USDT0 OFT - (d245776)
- show OFT messaging fee - (2a801a3)
- add multi-step asset selection (#2) - (b33f71f)
- asset selection search (#5) - (ba528c5)
- send via OFT - (4c0a90b)
- forward gas in OFT send - (0330cd1)
- USDT0 -> USDT (#12) - (3c3c41b)
- Bitcoin-Only Mode (#18) - (58fc3b7)
- also check native balance for OFT lockup - (009219d)
- fallback RPC provider - (62f4361)
- refund back to OFT - (d1679b3)
- show OFT lockup transaction link - (d38af0c)
- notify user when changing assets in bitcoin-only mode (#1255) - (28d379b)
- flip amount and assets for USDT swaps (#1277) - (67a1a58)
- resume external TBTC swaps (#1263) - (dcd3401)
- USDT chain swaps (#1274) - (ccf67b8)
- oft legacy mesh receive (#1275) - (2a9e8a5)
- Tempo support (#1302) - (5dc24dc)
- fee collapse (#1300) - (1212f99)
- show quote loading when pasting invoice - (47806e2)
- add loading skeleton to swap limits - (0b5884a)
- Solana send support (#1305) - (4691673)
Miscellaneous Chores
- add simplex bot link to swap box in pro build (#1221) - (e3c0e8c)
- fix misc review comments - (8d213f5)
- enable on mainnet - (84e6953)
- switch tbtc logo to vector svg (#1239) - (c391011)
- switch tbtc logo (#1243) - (1c5f75f)
- relax CI for non-gh runners (#1244) - (ceb4530)
- add USDT0 Hedera - (b66f452)
- add .vercel to .gitignore - (43e4bda)
- add .vercelignore - (f1122e7)
- cleanup USDT0 networks - (674f5b3)
- asset selection cleaner keyboard focus - (6878392)
- cleanup unused icons - (e7ad739)
- update OFT wording - (f5be1ef)
- address review - (10a4bca)
- address review feedback - (5974773)
- address review comments - (d0d9f87)
- disable chain swap route (#1273) - (f6230d5)
- log version and commit hash on load (#1276) - (000c42c)
- bump h3 from 1.15.5 to 1.15.10 (#1278) - (8cde66c)
- update GitHub action dependencies (#1288) - (1caa25d)
- add Alchemy endpoint for Polygon (#1294) - (80ed83b)
- bump Vite to v8 - (ab9d964)
- bump TypeScript to v6 - (cef4537)
- misc dependency updates - (ee31b3e)
- bump bignumber.js - (2a9d361)
- run npm audit fix - (e24de27)
- update USDT icon (#1313) - (6036303)
- update to boltz-core v4.0.3 - (29dec54)
Refactoring
- slippage cleanup - (a1f6c63)
- preimage derivation based on chain id - (feda38d)
- gas abstraction enum - (2526711)
- generic gas abstraction - (c1efd5c)
- sort quotes in api client - (5cf76d8)
- LayerZero explorer for OFT claim txs - (75d431c)
- cleanup USDT0 send - (4c20f68)
- cleanup OFT pre swap - (ff45b22)
- harden OFT handler with retries - (2c2b2ce)
- show OFT transaction link for refunds - (613fd81)
- cleanup LayerZero block explorer links - (e658b86)
- cleanup after rabbit review - (f6a3dde)
- normalize L-BTC to LBTC and USDT0 to USDT (#1262) - (bac1ff8)
- require Rescue Key backup for all but reverse swaps (#1269) - (949b47e)
- improve backup flow by creating swap first (#1286) - (7c739c0)
- rescue key backup in mobile EVM browsers (#1311) - (e14de9e)
- switch to bolt12-utils (#1260) - (980e138)
- oft fee adjustments (#1314) - (8229909)
- refund to OFT without leaving dust - (d169171)
- unify hops and oft position (#1321) - (9036977)
Tests
- make mainnet RPC test more resilient - (68c51a8)