This decouples the action of creating a transfer or trade object from the actual waiting for it to confirm or fail on-chain.
Without this we cannot create many transfer concurrently without running into a plethora of 429 issues.
We also cannot recover gracefully since we never get the transfer object returns, so cannot subsequently make fetches for its status if it happens to fail (or returns a temporary error, e.g. 429).
TODO:
[x] Add Trade#sign and Transfer#broadcast unit tests
What changed? Why?
This decouples the action of creating a transfer or trade object from the actual waiting for it to confirm or fail on-chain.
Without this we cannot create many transfer concurrently without running into a plethora of 429 issues.
We also cannot recover gracefully since we never get the transfer object returns, so cannot subsequently make fetches for its status if it happens to fail (or returns a temporary error, e.g. 429).
TODO:
Trade#sign
andTransfer#broadcast
unit testsQualified Impact