Commit Graph

100 Commits (75e7fedfed41aef3a9bcd3221e242e050c0811ee)

Author SHA1 Message Date
Franck Royer 75e7fedfed Implemented Alice transition from `Negotiated` to `BtcLocked` 4 years ago
Franck Royer c4cd64d134 Implemented Alice transition from `Started` to `Negotiated` 4 years ago
Franck Royer 0fe5131a8a Fix import format 4 years ago
rishflab ae94b170fd Cleanup
Move state machine executors into seperate files

Remove check for ack message from Alice. Seems like a bad idea to
rely on an acknowledgement message instead of looking at the
blockchain.

Fix warnings
4 years ago
rishflab ff7daf16f3 WIP: Test simplified swap execution 4 years ago
rishflab dd07e2f882 Add Alice execution path
Consolidate and simplify swap execution. Generators are no longer
needed. Consolidate recovery and swap data structures. The
recursive calls can be replaced with a loop if returning prior to
completion is desired for testing purposes.

Fill out alice abort path

Move state machine executors into seperate files

Not compiling due to recursion/async issues

Fix async recursion compilation errors

Fix Bob swap execution

Remove check for ack message from Alice. Seems like a bad idea to
rely on an acknowledgement message instead of looking at the
blockchain.

Fix Bob abort

Fix warnings

Xmr lock complete

Add TxCancel submit to XmrLocked

Bob swap completed

Remove alice
4 years ago
Lucas Soriano del Pino 483c819e17 Correctly re-export types from bitcoin and monero modules 4 years ago
Lucas Soriano del Pino f5ff50157e Some more fixes and comments after testing Alice's recovery 4 years ago
Lucas Soriano del Pino bea99185ed Use correct default values for monerod_url*
*`monerod_url` is an incorrect name as it's actually a
`monero_wallet_rpc_url`. This is fixed in another branch.
4 years ago
Lucas Soriano del Pino 5930af3587 Move some things around in recover module 4 years ago
Lucas Soriano del Pino 33b36c98fa Configure binary tracing level for xmr_btc and monero_harness 4 years ago
Lucas Soriano del Pino 5dede0f361 Add more logging to recovery
Also, remove redundant timelock check.
4 years ago
rishflab 11a7963081 Fix bugs 4 years ago
Lucas Soriano del Pino f0d90130ad Add recovery command 4 years ago
Lucas Soriano del Pino 09773dd15b Re-introduce history command 4 years ago
rishflab 0f1a77fa21 Fix Alice's btc redeem recovery path 4 years ago
Lucas Soriano del Pino 6db40dce2a Implement swap recover function for Bob 4 years ago
Lucas Soriano del Pino 28225f8643 Implement swap recover function for Alice
This introduces a lot of duplication between the binary and the
library, but it's okay because this module should only be a temporary
measure until we allow recovery to be handled by the original state
machine.

Also, fix a bug in `xmr_btc::alice::action_generator` caused by the
incorrect assumption that Alice's ability to punish Bob could be
determined before the cancel transaction hits the blockchain.
4 years ago
Lucas Soriano del Pino b989e94322 Remove stale TODO 4 years ago
Lucas Soriano del Pino 33a111d879 Move Swap state out of storage 4 years ago
Lucas Soriano del Pino ac2cfd7f65 Print swap history on --history flag 4 years ago
Lucas Soriano del Pino ecbfed9c11 Add Database API to fetch all swaps 4 years ago
Lucas Soriano del Pino f9cfc2abe3 Remove generics from Database 4 years ago
Lucas Soriano del Pino 02075c2a1d Support saving multiple swaps
By replacing `LAST_STATE_KEY` with a swap ID passed as an argument to
inserting and reading from the database.
4 years ago
Lucas Soriano del Pino 823add218e Remove temporary test tracing guards 4 years ago
Lucas Soriano del Pino a26890001b Fix swap e2e test 4 years ago
Lucas Soriano del Pino 934ddb366a Save state for Alice at specific points in the swap 4 years ago
rishflab ea08778b2f Save state for Bob at specific points in the swap 4 years ago
Philipp Hoenisch 981fcacc95
Make swap e2e test work with new monerod lib 4 years ago
Philipp Hoenisch 70d64f74ae
Testcontainers upgrade 4 years ago
Philipp Hoenisch 0b9e8c145e
Update xmr-btc lib to use new monero-harness 4 years ago
rishflab a44303f839 Add monerod to config
Fixed rebase issues
4 years ago
rishflab 7afd316210 Construct tor transport for Bob 4 years ago
rishflab 3b008c38a6 Remove redundant code and stale comments 4 years ago
rishflab 249f273d1b Remove stale comments 4 years ago
rishflab 5971ef1f28 Fix clippy warnings 4 years ago
rishflab 606c48c752 Format swap crate Cargo.toml 4 years ago
rishflab 796d0b3439 Extract transport creation and remove tor conditional compile
The numerous tor conditional compile flags were removed by
extracting transport creation to the main statement. A tor
transport is created if Alice specifies a tor port using the CLI.
4 years ago
rishflab 0ca511bf8a Remove hardcoded configuration
The hardcoded configuration was replaced with CLI
configuration options. CLI based config was chosen
over a config file as it does not access and clutter
the user's file system. By CLI options depend on whether
the program is run in Alice or Bob mode.
4 years ago
Lucas Soriano del Pino 92c7e8e84f Run swap e2e test without tor feature
Not worth automatically testing both `tor` and `not(tor)`, it should
not make a difference.
4 years ago
Lucas Soriano del Pino 792fa351c8 Upgrade bitcoin-harness dependency
From dev-branch to master.
4 years ago
Lucas Soriano del Pino 7fa7641feb Clean up some logs and comments 4 years ago
Tobin C. Harding 4d4acde476 Bubble up an event when Bob receives message 3 response
Before this patch Bob is not sending message 3. This is because we are not
polling Bob's swarm correctly. To fix it we can just mimic the other NB's and
bubble up an event when Bob receives message 3 response from Alice, this way we
can `await` upon this event which triggers polling, making Bob's swarm send the
message.
4 years ago
Lucas Soriano del Pino a37f43a1ba wip: Provide enough funds to both parties
Also use cosntant backoff retry strategy as opposed to exponential
backoff. This is in case retrying several times quickly causes the
retry intervals to become large enough that the test is very slow
and/or the Bitcoin lock transaction expires.

The current problem occurs on the last message i.e. Bob sending
tx_redeem_encsig to Alice. The action is yielded for Bob to do it, but
Alice appears to never receive it (unconfirmed claim, requires more
logging).
4 years ago
Lucas Soriano del Pino eb6bbe6180 wip: Fix bug where bob was sending two amount request 4 years ago
Lucas Soriano del Pino 9f32cd988e wip: Use same timelock value for refund and punish 4 years ago
Lucas Soriano del Pino 62c4501926 wip: Add xmr_btc tracing filter 4 years ago
Lucas Soriano del Pino ae87c10cae wip: fixed message0 4 years ago
Tobin C. Harding 119f2a7c54 Add error logging to request_response 4 years ago
Tobin C. Harding b8ab4b4eee wip: add env filter 4 years ago