rishflab
3b005bd15c
Resolve rebase issues, restructure code and fix warnings
2020-11-30 15:13:20 +11:00
Franck Royer
437c1cbb80
Started to extract some steps
...
Tealised that the whole point is for them to be idempotent to be useful
2020-11-27 09:34:36 +11:00
Franck Royer
66866f8fbd
Remove rng argument
2020-11-27 09:34:36 +11:00
Franck Royer
6c0df836ca
Deal with Btc Punished.
2020-11-27 09:34:36 +11:00
Franck Royer
6437b529eb
Punish Bob if t2 is reached
2020-11-27 09:34:36 +11:00
Franck Royer
8ff1824126
Remove abort function
2020-11-27 09:34:36 +11:00
Franck Royer
58ca33dd04
Remove warnings
2020-11-27 09:34:36 +11:00
Franck Royer
c501d84278
Park abort function for now
2020-11-27 09:34:36 +11:00
Franck Royer
4c4a10098c
Complete Refund path
2020-11-27 09:34:36 +11:00
Franck Royer
bff83bbe99
Progress on Cancellation path
2020-11-27 09:34:36 +11:00
Franck Royer
8e31a3af6a
Add steps from EncSignLearned
2020-11-27 09:34:36 +11:00
Franck Royer
8976a03b3d
Implemented Alice transition from BtcLocked
to XmrLocked
2020-11-27 09:34:35 +11:00
Franck Royer
75e7fedfed
Implemented Alice transition from Negotiated
to BtcLocked
2020-11-27 09:34:35 +11:00
Franck Royer
c4cd64d134
Implemented Alice transition from Started
to Negotiated
2020-11-27 09:34:35 +11:00
Franck Royer
0fe5131a8a
Fix import format
2020-11-27 09:34:35 +11:00
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
2020-11-27 09:34:35 +11:00
rishflab
ff7daf16f3
WIP: Test simplified swap execution
2020-11-27 09:21:21 +11:00
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
2020-11-27 09:21:21 +11:00
Lucas Soriano del Pino
483c819e17
Correctly re-export types from bitcoin and monero modules
2020-11-12 13:49:07 +11:00
Lucas Soriano del Pino
f5ff50157e
Some more fixes and comments after testing Alice's recovery
2020-11-12 13:49:07 +11:00
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.
2020-11-12 13:49:07 +11:00
Lucas Soriano del Pino
5930af3587
Move some things around in recover module
2020-11-12 13:49:07 +11:00
Lucas Soriano del Pino
33b36c98fa
Configure binary tracing level for xmr_btc and monero_harness
2020-11-12 13:49:07 +11:00
Lucas Soriano del Pino
5dede0f361
Add more logging to recovery
...
Also, remove redundant timelock check.
2020-11-12 13:49:07 +11:00
rishflab
11a7963081
Fix bugs
2020-11-12 13:49:07 +11:00
Lucas Soriano del Pino
f0d90130ad
Add recovery command
2020-11-12 13:49:07 +11:00
Lucas Soriano del Pino
09773dd15b
Re-introduce history command
2020-11-12 13:49:07 +11:00
rishflab
0f1a77fa21
Fix Alice's btc redeem recovery path
2020-11-12 13:49:07 +11:00
Lucas Soriano del Pino
6db40dce2a
Implement swap recover function for Bob
2020-11-12 13:49:07 +11:00
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.
2020-11-12 13:49:07 +11:00
Lucas Soriano del Pino
b989e94322
Remove stale TODO
2020-11-12 13:49:07 +11:00
Lucas Soriano del Pino
33a111d879
Move Swap state out of storage
2020-11-12 13:49:07 +11:00
Lucas Soriano del Pino
ac2cfd7f65
Print swap history on --history flag
2020-11-12 13:49:07 +11:00
Lucas Soriano del Pino
ecbfed9c11
Add Database API to fetch all swaps
2020-11-12 13:49:07 +11:00
Lucas Soriano del Pino
f9cfc2abe3
Remove generics from Database
2020-11-12 13:49:07 +11:00
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.
2020-11-12 13:49:07 +11:00
Lucas Soriano del Pino
823add218e
Remove temporary test tracing guards
2020-11-12 13:49:07 +11:00
Lucas Soriano del Pino
a26890001b
Fix swap e2e test
2020-11-12 13:49:07 +11:00
Lucas Soriano del Pino
934ddb366a
Save state for Alice at specific points in the swap
2020-11-12 13:49:07 +11:00
rishflab
ea08778b2f
Save state for Bob at specific points in the swap
2020-11-12 13:49:07 +11:00
Philipp Hoenisch
981fcacc95
Make swap e2e test work with new monerod lib
2020-11-03 16:52:00 +11:00
Philipp Hoenisch
70d64f74ae
Testcontainers upgrade
2020-11-03 16:52:00 +11:00
Philipp Hoenisch
0b9e8c145e
Update xmr-btc lib to use new monero-harness
2020-11-03 16:51:26 +11:00
rishflab
a44303f839
Add monerod to config
...
Fixed rebase issues
2020-11-03 16:08:46 +11:00
rishflab
7afd316210
Construct tor transport for Bob
2020-11-03 15:13:25 +11:00
rishflab
3b008c38a6
Remove redundant code and stale comments
2020-11-03 15:13:25 +11:00
rishflab
249f273d1b
Remove stale comments
2020-11-03 15:13:25 +11:00
rishflab
5971ef1f28
Fix clippy warnings
2020-11-03 15:13:23 +11:00
rishflab
606c48c752
Format swap crate Cargo.toml
2020-11-03 15:13:03 +11:00
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.
2020-11-03 15:12:52 +11:00