Commit graph

207 commits

Author SHA1 Message Date
woodser
38864d71ff implement batch key image polling for offer book in background 2022-12-19 11:26:09 +00:00
napoly
1adf7bd73f
avoid redundant wallet backups, max 10 backups (#505)
Co-authored-by: woodser <woodser@protonmail.com>
2022-12-18 15:15:55 +00:00
napoly
217e7e03a2 dockerize deamons with docker compose 2022-12-16 15:01:58 +00:00
woodser
f11c816cda enforce trade limit over grpc 2022-12-16 09:24:53 +00:00
woodser
31dfdd7710 remove btc fee service 2022-12-16 09:16:11 +00:00
woodser
3314eac881 stability improvements
synchronize timeout timer
fix concurrent modification exceptions
use wallet lock when saving multisig wallets
2022-12-16 09:16:11 +00:00
woodser
9fda20f88b update to new xmr price server api
remove timestamp data structure
2022-12-16 09:16:11 +00:00
napoly
13b5d123bb increase fiat trade limit to 2 XMR 2022-12-15 21:41:27 +00:00
napoly
3ba106d466 fix wallet rpc initialization 2022-12-04 17:20:40 +00:00
woodser
dd0a307a84 support funding make or take offer directly
QR code encodes payment URI
security deposit absorbs miner fee up to 5%
use binary search to maximize security deposit and minimize dust
show itemized funding popup on create offer
2022-12-04 14:38:22 +00:00
napoly
bd70b935e4 P2P status indicator with update prompt
Co-authored-by: jmacxx <47253594+jmacxx@users.noreply.github.com>
Co-authored-by: Christoph Atteneder <christoph.atteneder@gmail.com>
2022-12-01 10:14:07 +00:00
woodser
a2929035bc only update balances if not terminated 2022-11-28 15:28:40 +00:00
woodser
a408b0e7ae trade initialization defers opening and syncing wallet if idling 2022-11-28 15:28:40 +00:00
woodser
7ca3b8cee1 re-send payment sent/received messages on startup if not arrived 2022-11-28 15:28:40 +00:00
woodser
e20e23dbc5 stop initializing trades on shutdown 2022-11-28 15:28:40 +00:00
woodser
7062fa9e79 message handlers return synchronously 2022-11-28 15:28:40 +00:00
woodser
a266fab6ec process mailbox messages in order 2022-11-28 15:28:40 +00:00
woodser
456ef912ed delete trade wallet on error if deposit not requested 2022-11-26 22:28:30 +00:00
woodser
79db2bc0af arbitrator submits deposit txs and checks result before relaying 2022-11-26 22:28:30 +00:00
woodser
9aa6bbeff6 must provide fixed price unless using market price 2022-11-26 22:28:30 +00:00
woodser
9c5fdb5d4a finish processing PaymentReceivedMessage 2022-11-24 14:25:55 +00:00
woodser
4c7075b0bd set payout tx hash on payment received unless unlocked 2022-11-24 12:33:00 +00:00
napoly
d3949614c6 reject creating crypto payment account with invalid currency code or address 2022-11-24 11:34:22 +00:00
napoly
27fdf87e84 fix dispute deposit transaction IDs in legacy UI 2022-11-23 09:55:35 +00:00
woodser
0d981a2df6 get trade account payloads over grpc, support crypto account forms 2022-11-23 09:42:43 +00:00
napoly
1f61e82946 fix transaction IDs in legacy UI trade info views 2022-11-13 07:45:25 -05:00
woodser
d9f2ce425f improve performance by pre-fetching txs for subaddress queries 2022-11-07 08:26:30 -05:00
woodser
4fb62d8669 fix confirmation progress in ui
fix my role label to show during trade initialization
support arbitrator role label
2022-11-07 08:26:30 -05:00
woodser
247087ef46 refactor arbitration protocol
add dispute states and open/close messages routed through arbitrator
both traders publish dispute payout tx, winner is default
verify signatures of payment sent and received messages
seller sends deposit confirmed message to arbitrator
buyer sends payment sent message to arbitrator
arbitrator slows trade wallet sync rate after deposits confirmed
various refactoring, fixes, and cleanup
2022-11-07 08:26:30 -05:00
woodser
363f783f30 accurate tx fee estimation based on weight 2022-10-28 08:55:58 -04:00
woodser
416d21a8aa update to monero-java v0.7.8 2022-10-28 08:55:58 -04:00
woodser
f36dde2857 refactor payout protocol
send payment key & multisig hex on deposit confirm for resilience
support payout published, confirmed, unlocked states
keep trade wallets open throughout trade
close and delete trade wallets when payout unlocks
arbitrator idles trade wallets after deposits confirm (1/hour)
2022-10-27 08:06:18 -04:00
woodser
e79450f65e fix trade is in an invalid state warning
Co-authored-by: duriancrepe <duriancrepe@protonmail.com>
2022-10-17 11:22:01 -04:00
duriancrepe
2eb275281e fix packageInstallers for all platforms 2022-10-12 10:42:34 -04:00
woodser
79021dc9c6 revert getters for peer and arbitrator node addresses to avoid NPEs 2022-10-04 15:35:01 -04:00
woodser
767f4cf8c0 reset address entries of taker's offer model when done
fixes the "outdated addressEntry" warning
2022-10-04 15:35:01 -04:00
woodser
139896bced seller resets address entries on payout published 2022-10-02 14:41:24 -04:00
woodser
58aad5e6ae expect deposits to be confirmed or unlocked when payment sent 2022-10-02 14:41:24 -04:00
woodser
5bd05af890 synchronize price requests 2022-10-02 14:41:24 -04:00
woodser
dc9c04759f listen for published payout tx
fix "Swapping pending OFFER_FUNDING" warning
move payout tx from TradingPeer to Trade
2022-10-02 14:41:24 -04:00
woodser
5fbc41946e
refactor node addresses and pub key rings to TradingPeer (#460) 2022-10-01 13:29:38 -04:00
woodser
c153afff67
arbitrator does not share payment account key until after first confirmation (#457)
use payout address from contract instead of PaymentSentMessage
2022-10-01 07:47:18 -04:00
woodser
93472b9759
fixes based on refactored tests (#454)
log trade id with error
open dispute chat on user thread
fix null arbitrator signature by copying offer payload before modifying
2022-09-29 09:46:21 -04:00
woodser
5d45c08744 provide error message if price is unavailable for offer 2022-09-24 08:36:16 -04:00
woodser
c5f5a5af42 process messages on user thread and protocol tasks off user thread 2022-09-24 08:36:07 -04:00
woodser
d698555c9a trade completion fixes with payment key and multisig hex on confirmation
preserve peer multisig hex when arbitrator provides payment key
process payment received using persistent, non-transient data
payout_tx_published_msg represents payment_received_msg after payout
update arbitrator's peer address on payout published
schedule payment account key request after deposit request
2022-09-21 09:00:41 -04:00
woodser
c21ebe6a9d normalize names of protocol tasks 2022-09-21 09:00:41 -04:00
woodser
0388f283a7 remove open offer from books after deposit request 2022-09-21 09:00:41 -04:00
woodser
1f32fc2cbe seller decrypts buyer payment info on payment sent 2022-09-21 09:00:41 -04:00
woodser
64925d0137 close arbitrator trade by sending PayoutTxPublishedMessage 2022-09-21 09:00:41 -04:00