Repository navigation
Description
What happened?
3.1 release blocker — manual sanity case RS-BRIDGE. A fresh Ethereum → Arbitrum USDT estimate accepted 4.00 USDT, showing 1.28 USDT deduction / 2.72 USDT estimated credit. After the exact 4 USDT source transfer succeeded, Android showed Needs attention, with below_minimum / xchain_amount_too_small. The bridge did not complete.
Linked investigation: synonymdev/bitkit-ios#1197 — iOS 2 and 2.5 USDT attempts failed identically and both were fully refunded. This Android attempt is now refunded: the full 4 USDT returned to the same MetaMask Ethereum address.
Expected behavior
Reject amounts that cannot meet execution constraints before presenting funding instructions. An accepted estimate should be consistent with the standing-deposit execution requirements, with clear handling of any remaining execution risk.
Steps to Reproduce
- On the existing mainnet wallet, open USDT → Receive → Network → Ethereum.
- Enter 4 USDT and obtain a fresh estimate: 1.28 USDT deduction, 2.72 USDT credit.
- Continue to the deposit address and manually send exactly 4 USDT on Ethereum.
- Open Cross-Network Deposits and the new deposit.
- Observe Needs attention; locally inspect the support diagnostics for
below_minimum / xchain_amount_too_small.
These are completed reproduction steps, not a request to spend more mainnet funds.
Logs / Screenshots / Recordings
- Source transaction: Ethereum Success, exactly 4.000000 USDT, 2026-11-03 14:45:35 Europe/Warsaw, block 26334659; 4,000,000 token base units.
- Ethereum USDT contract:
0xdAC17F958D2ee523a2206206994597C13D831ec7. - Deposit address:
0x9E6C59d51801C540d2018f49Fd72a7D1b7E3447a. - Deposit reference:
xit_c13b81db-a38c-4a4a-bc95-97351db0a048. - Source gas: 0.00014313356015919 ETH, separate from the 4 USDT deposit.
- Refund completed; Samsung shows Refunded. Support form inspected locally and closed unsent.
Asset: USDT
Bridge: Orchestra
Source network: Ethereum
Recipient network: Arbitrum One
Deposit reference: xit_c13b81db-a38c-4a4a-bc95-97351db0a048
Status: Needs attention (below_minimum)
Source transaction: 0x775f3b32b0b285c9253076a4f07036238fa0858eed328ef01d7b1c8a17781436
Status code: xchain_amount_too_small
Bitkit Version
3.1.0 (196), release head d13769269cf17737100e092d66b2bc9236bc8eb8.
Device / OS
Samsung Galaxy S22 (SM-S901B), Android 16. Existing mainnet wallet preserved.
Reproducibility
1/1 funded Android attempt at 4 USDT. Together with the linked iOS report: 3/3 funded attempts failed (2, 2.5 and 4 USDT). Other amounts and routes are untested.
Additional context
- Blocks release sign-off while this route remains enabled. Resolve with a verified fix and successful funded route/minimum checks, or disable the affected route and verify both clients prevent new deposits through it.
- An estimated net credit above 2 USDT did not resolve the rejection. No safe minimum is established; stop larger trial deposits pending execution evidence.
- Cross-platform symptom suggests the shared service/provider path, but exact root cause and whether this is a 3.1 regression remain unproven. Estimates are indicative; the reusable standing address does not lock execution pricing.
- Prior unfunded Android preflight: 1 USDT rejected with a $2 minimum; 2 USDT estimate accepted (~0.68 deduction / ~1.32 credit).
- Release PRs: chore: bump version 3.1.0 #1755 and chore: bump version 3.1.0 bitkit-ios#1193.
- Distinct from closed Android [Bug]: Solana USDT quote minimum shows decimal-format error and persists after amount edits #1520 / iOS chore: bump version 2.3.0 #964 (quote error formatting) and Android bug: usdt receive doesn't warn that only arbitrum one deposits arrive #1557 (receive-network warning).
Android refund verified
Samsung shows Refunded for xit_c13b81db-a38c-4a4a-bc95-97351db0a048. The full 4 USDT refund succeeded on Ethereum at 2026-11-03 15:01:23 Europe/Warsaw, block 26334738, returning exactly 4.000000 USDT to 0x6a405Cf34fBF1d5160445f890AdF64E9A80646Fb. All three deposits' principal is recovered (8.5 USDT total); original source gas remains spent. Refund recovery passed; the failed bridge case and 3.1 blocker remain open.
Activity
ovitrif commentedon Nov 3, 2026
Added to the 3.2.0 milestone with its iOS twin, synonymdev/bitkit-ios#1197: this is not a 3.1 regression, since the same Ethereum deposit flow ships in 3.0.1 and the USDT gateway is unchanged since mid-October. The failure comes from the gateway's non-binding estimate for standing deposits, so the mitigation is turning the Ethereum source off on the gateway, which covers 3.0.1 and 3.1 with no app release. This issue tracks the proper per-network minimum once Orchestra's executable floor is known.