--- Day changed Sun Apr 16 2017 00:17 -!- stachrom [d4338865@gateway/web/freenode/ip.212.51.136.101] has joined #joinmarket 00:27 -!- coins123 [~coins123@unaffiliated/coins123] has quit [] 03:26 -!- stachrom [d4338865@gateway/web/freenode/ip.212.51.136.101] has quit [Ping timeout: 260 seconds] 04:19 < belcher> hmm yes, mistake 04:24 -!- btcdrak [uid165369@gateway/web/irccloud.com/x-gocbminorxqqyfpr] has quit [Quit: Connection closed for inactivity] 04:25 * adlai wonders what could be done to make tests run faster 04:25 < adlai> at the very least, it should be possible to cache the non-JM setup that gets done from scratch each time 04:26 < waxwing> adlai: yes that'd be nice. 04:27 < waxwing> belcher: adlai btw i posted to the coinswap thread. 04:28 < belcher> looks good 04:28 < belcher> only thing, in your gist it could be useful to have the new script you propose 04:29 < waxwing> yes, would be easier, good point 04:29 < adlai> admittedly, this would only save ~10% of the total time per test 04:29 < belcher> or at least pseudocode 04:29 < waxwing> will add that 04:29 < waxwing> btw belcher saw your github post on the topic, will have to read again to get the idea 04:30 < belcher> IF CarolPub OP_CHECKSIG AND HASH OP_CHECKEQUAL ELSE 30days OP_CSV CarolPub OP_CHECKSIG ENDIF 04:30 < waxwing> yesterday was trying to get the trickiest backout step to work on my code, got lost in the tangles of listunspent and listtransactions and whatnot :) 04:30 < belcher> or however it goes 04:30 < waxwing> i think it was more the idea than the script i didn't get, let me check again 04:34 < waxwing> belcher: are you writing 'coinjoin' when you mean 'coinswap' there? i presume so 04:34 < belcher> nope, i mean coinjoin 04:34 < belcher> but with unequal output amounts 04:34 < belcher> just mean two people agreeing to make one transaction with both their inputs 04:35 < belcher> ill make a diagram 04:35 < waxwing> ah ok 04:35 < waxwing> yeah it's getting complicated now, prob some diagram or something would help 04:37 < belcher> my post should be read soon after this post https://github.com/JoinMarket-Org/joinmarket/issues/335#issuecomment-291613405 04:41 < waxwing> belcher: so what's the latest on the whole importing addresses and accounts thing; accounts are going to be deprecated, so what's going to be the correct way of 'listening' on non-wallet addresses? still importaddress, but without account? 04:42 < belcher> account is replaced by labels iirc 04:42 < belcher> which we would use in exactly the same way, we use accounts as labels now 04:42 < waxwing> i see, that sounds ok. 04:42 < belcher> accounts also have a feature where you can do getbalance "account" or sendfrom "account" which we never use 04:42 < waxwing> right 04:44 < waxwing> so on your idea, where does this new tx fit in? carol and alice send to a 2 of 2 first, that's different from the 2 of 2 used for TX0/TX1? 04:44 < belcher> yes 04:45 < belcher> this new 2of2 + timeout is used so that if Alice backs out, Carol can get her money back without paying a miner fee 04:45 < belcher> Alice pays the miner fee 04:46 < belcher> so its shifting the potential cost from carol to alice, im thinking alice is the taker and carol the maker 04:46 < waxwing> yes got the idea a bit better now, thanks 04:48 < waxwing> belcher: can we not have this asymmetry built into existing timeouts? 04:48 < belcher> hmm yes we can 04:48 -!- MaxSan [~one@46.166.165.225] has joined #joinmarket 04:48 < belcher> wait maybe not 04:49 < belcher> so you're saying make the refund transactions be coinjoins of alice's and carol's 2of2s together? 04:49 < waxwing> note the timeouts are effectively pseudo-coinjoins already: instead of 2 inputs and each pass signature, it is 1 2-2 input, and they pass each signature. 04:50 < belcher> iv edited this post btw to add a diagram --- | --- | 04:50 < belcher> err https://github.com/JoinMarket-Org/joinmarket/issues/335#issuecomment-291613405 04:52 < waxwing> well alright 'pseudo-coinjoins', no, that's not a good description. different thing, but still a "we both agree on this by signing it". 04:53 < belcher> so for the idea you just said, thats TX_O_refund and TX_1_refund being one transaction 04:53 < belcher> from https://bitcointalk.org/index.php?topic=321228.0 04:53 < belcher> and that would allow money to flow from alice to carol to pay for miner fees or whatever 04:54 < belcher> the only issue is, i think there might be situations where TX_O_refund needs to be broadcast but not TX_1_refund 04:56 < arubi> belcher, in your diagram, which of the inputs are signed anyonecanpay|single? 04:56 < waxwing> well only thinking about new design, but still point remains: Carol's backout could be either TX2 or TX3, so now i'm thinking that 'you can fold in the asymmetry to the existing backouts' doesn't work. 04:56 < belcher> arubi Alice's UTXO 04:56 < belcher> ill edit that now 04:57 < belcher> the anyonecanpay|single idea doesnt work btw, but to understand the idea its helpful to know about this first 04:58 < belcher> the idea is that alice sends her utxo with single|anyonecanpay to carol, and carol can attach it to the utxo in the 2of2, and then less interactivity is needed 04:58 < belcher> but the problem is alice can just doublespend her utxo which invalidates it 04:58 < arubi> carol could also just steal the 0.03 no? 04:59 < belcher> yes 05:00 < arubi> I'm pretty sure anyone could yank that input-output pair and steal it even mid flight 05:00 < belcher> needless to say, its a bad idea 05:00 < arubi> yea hard to make use of that sighash 05:00 < belcher> maybe i should totally rewrite that all to not even involve the single|anyonecanpay 05:00 < belcher> in reality you need a 2of2 so that neither side can back out without permission from the other 05:02 < arubi> right, the tricky part is keeping two transaction branches separated along the execution.. I'm also deep into this :) 05:03 < belcher> what are you working on? 05:03 < arubi> this coinswap thing 05:03 < arubi> just trying it out, getting the feel of what's possible 05:28 -!- MaxSan [~one@46.166.165.225] has quit [Quit: Leaving.] 05:29 -!- MaxSan [~one@46.166.165.225] has joined #joinmarket 05:54 -!- FASDFSF [~FASDFSF@unaffiliated/fasdfsf] has quit [Remote host closed the connection] 08:12 -!- btcdrak [uid165369@gateway/web/irccloud.com/x-fldpbbtewubphush] has joined #joinmarket 11:09 -!- coins123 [~coins123@unaffiliated/coins123] has joined #joinmarket 11:34 -!- btcdrak [uid165369@gateway/web/irccloud.com/x-fldpbbtewubphush] has quit [Quit: Connection closed for inactivity] 11:44 -!- btcdrak [uid165369@gateway/web/irccloud.com/x-egbfgydmfikwtccc] has joined #joinmarket 11:45 -!- btcdrak [uid165369@gateway/web/irccloud.com/x-egbfgydmfikwtccc] has quit [Client Quit] 11:45 -!- btcdrak [uid165369@gateway/web/irccloud.com/x-rwddoxupfjmobmij] has joined #joinmarket 11:46 -!- btcdrak [uid165369@gateway/web/irccloud.com/x-rwddoxupfjmobmij] has quit [Client Quit] 11:46 -!- btcdrak [uid165369@gateway/web/irccloud.com/x-jjmdyfwwiuweceaw] has joined #joinmarket 12:00 -!- MaxSan [~one@46.166.165.225] has quit [Quit: Leaving.] 13:35 -!- MaxSan [~one@46.166.165.225] has joined #joinmarket 13:47 -!- stachrom [d4338865@gateway/web/freenode/ip.212.51.136.101] has joined #joinmarket 14:45 -!- stachrom [d4338865@gateway/web/freenode/ip.212.51.136.101] has quit [Quit: Page closed] 14:53 < belcher> so iv just read blockchaininterface.py carefully... looks like the importing a privkey feature only worked if you were using the BitcoinCoreInterface 14:54 < belcher> so if you imported keys into your wallet and sync'd with blockr.io or another way the coins wouldnt show up 15:06 -!- luke-jr [~luke-jr@unaffiliated/luke-jr] has quit [Remote host closed the connection] 15:12 -!- luke-jr [~luke-jr@unaffiliated/luke-jr] has joined #joinmarket 16:32 -!- MaxSan [~one@46.166.165.225] has quit [Ping timeout: 260 seconds] 16:34 -!- btcdrak [uid165369@gateway/web/irccloud.com/x-jjmdyfwwiuweceaw] has quit [Quit: Connection closed for inactivity] 16:37 -!- MaxSan [~one@46.166.165.225] has joined #joinmarket 17:10 < adlai> fun bug: commontest.make_wallets only populates a mixdepth with up to 20 utxos! coincidentally this is the value of addr_req_count. 17:10 < belcher> are you writing a test? 17:11 * adlai is writing tests for the automatic merge algo switchover 17:11 < adlai> ie https://github.com/JoinMarket-Org/joinmarket/pull/414 17:12 < adlai> i'm (100-epsilon)% sure that the code is correct, but the tests are still failing... and it seems now to be due to the make_wallets bug 17:12 < adlai> you can see in the failure ( https://travis-ci.org/JoinMarket-Org/joinmarket/builds/222653934#L1381 ) that the 2nd mixdepth only has 20 utxos, instead of 25 17:13 < adlai> and in the previous travis build you can see that i bumped it to 35 utxos and it still only gave 20 17:16 * adlai must admit that he's /still/ unable to run tests locally, and has to wait for travis to spin itself up each time >:( 17:17 < adlai> (running tests locally chokes on some issue with wallets) 17:18 < belcher> wow that must slow you down terribly 17:18 < belcher> any idea what the holdup is, i managed it after reading the wiki page 17:18 * adlai should probably throw out the current setup and start from scratch with the wiki at hand 17:19 < adlai> the holdup seems to be an issue with wallet files. saving them, or reading them, or... who knows. all the error messages mention files and occur in lines that have to do with wallet initialization. 17:20 * adlai would rather debug code tests than debug test tests >_< 17:26 < adlai> ok my suspicion is that this is due to the index getting reset at the end of each wallet initialization... before sync_wallet has ever been run! 17:26 < adlai> so we end up running sync_wallet on a wallet with an all-zero index 17:28 < adlai> ahahahahahaha 17:28 < adlai> wallet_synced is false because we haven't synced 17:28 < adlai> ... maybe. this is still guesswork. 17:29 * adlai wonders why wallet_synced belongs to blockchaininterface instead of... the wallet! 17:30 < belcher> im actually recoding slightly how it works 17:31 < belcher> currently working on trusted node interface, so moving some stuff around 17:31 < belcher> and it is actually in the wallet 17:31 < belcher> but dont let me stop you, do your fixes and we can easily merge the code together 17:31 < adlai> the cheapest hack would just be to lower the number of utxos for the merge algo switchover 17:31 < adlai> but this just punts the issue 17:32 * adlai has already lowered these values once... and would rather un-lower them back to the default before merging 18:03 * adlai can't figure out why the index is reset, in https://github.com/JoinMarket-Org/joinmarket/blob/master/test/commontest.py#L157-L158 18:04 < adlai> this line seems to have the same effect as wallets[i+start_index]['wallet'].index[j][0] = 0 19:01 -!- newn [adc74128@gateway/web/freenode/ip.173.199.65.40] has joined #joinmarket 19:03 < adlai> aha! https://github.com/JoinMarket-Org/joinmarket/blob/master/test/test_wallets.py#L209 <-- should call python2 19:03 < adlai> (at least, on my system it should...) 19:25 < adlai> hrm, even just running test_wallets.py still takes ~forever... ie, nearly as long as travis takes for the entire suite 19:26 < adlai> woohoo https://github.com/JoinMarket-Org/joinmarket/pull/414#issuecomment-294391910 19:50 -!- belcher [~user@unaffiliated/belcher] has quit [Ping timeout: 240 seconds] 20:09 -!- btcdrak [uid165369@gateway/web/irccloud.com/x-peqnnsmucjigodno] has joined #joinmarket 23:16 -!- belcher [~user@94.2.198.226] has joined #joinmarket 23:17 -!- belcher is now known as Guest80673