feat: add outbound USDT0 bridging - #158
Conversation
|
Two independent reviews. needs changing before merge
worth doing, does not block
nits
|
There was a problem hiding this comment.
Verdict: ✅ Approve
Review: diff 13 files.
Reviewed by gpt-6.1-sol-high via gh-pr-review-loop skill
Commands: @ovi-reviewer review · test · retest (author)
|
@coreyphillips fixed the polling and restored-amount items in 25d4492.
The missing-field reproduction is correct, but the USDT integration has not shipped in a Bitkit release. We are deliberately keeping one final schema rather than adding compatibility for development versions. This change does not reset databases or discard pending payments. If the Arbitrum-only schema ships before bridging, we will need to handle that released schema before shipping this change. I left EVM recipient decoding unchanged. It matches LayerZero's Validation: 61 USDT tests passed, with the opt-in deployed-contract fork test ignored. Formatting and Clippy passed, with existing warnings outside USDT. The existing bridge test now covers the polling interval and restored amounts without matching bridge evidence. |
Description
Adds outbound USDT0 transfers from the Arbitrum wallet to Ethereum, Polygon, Plasma and Stable. Users review the destination amount and maximum total USDT fee, including bridge costs, without needing ETH.
Based on #157. This PR adds outbound bridging APIs; native release sends remain Arbitrum-only until routes are enabled and validated. Inbound deposit addresses are provided separately by #159.
QA Notes
cargo test --locked --lib modules::usdt,cargo fmt --checkandcargo clippy --locked --lib --tests.v0.6.0. Before remote package consumption, build the selected merged source, record the final SwiftPM checksum in a release-preparation commit, and tag/publish that exact iOS archive and matching Android package. Use matching local artifacts for branch testing; later stack layers must use a new version if an earlier layer has already been released.