--- Day changed Fri Jul 10 2020 00:07 -!- dr-orlovsky [~dr-orlovs@xdsl-188-154-184-23.adslplus.ch] has joined ##miniscript 00:27 -!- dr-orlovsky [~dr-orlovs@xdsl-188-154-184-23.adslplus.ch] has quit [Quit: My MacBook has gone to sleep. ZZZzzz…] 00:40 -!- dr-orlovsky [~dr-orlovs@xdsl-188-154-184-23.adslplus.ch] has joined ##miniscript 00:40 -!- dr-orlovsky [~dr-orlovs@xdsl-188-154-184-23.adslplus.ch] has quit [Client Quit] 00:50 -!- jonatack [~jon@2a01:e0a:53c:a200:bb54:3be5:c3d0:9ce5] has quit [Quit: jonatack] 01:59 -!- jonatack [~jon@192.113.14.109.rev.sfr.net] has joined ##miniscript 02:03 -!- jonatack [~jon@192.113.14.109.rev.sfr.net] has quit [Ping timeout: 272 seconds] 02:06 -!- jonatack [~jon@213.152.162.84] has joined ##miniscript 02:11 -!- jonatack [~jon@213.152.162.84] has quit [Ping timeout: 258 seconds] 02:12 -!- jonatack [~jon@192.113.14.109.rev.sfr.net] has joined ##miniscript 03:19 -!- jonatack [~jon@192.113.14.109.rev.sfr.net] has quit [Ping timeout: 272 seconds] 03:20 -!- jonatack [~jon@134.19.179.187] has joined ##miniscript 03:31 -!- harrigan [~harrigan@ptr-93-89-242-235.ip.airwire.ie] has quit [Ping timeout: 265 seconds] 04:03 -!- shesek [~shesek@5.22.128.126] has quit [Ping timeout: 272 seconds] 04:23 -!- Netsplit *.net <-> *.split quits: meshcollider 04:27 -!- Netsplit over, joins: meshcollider 04:54 -!- jonatack [~jon@134.19.179.187] has quit [Ping timeout: 256 seconds] 04:55 -!- jonatack [~jon@213.152.162.149] has joined ##miniscript 04:57 -!- jonatack [~jon@213.152.162.149] has quit [Read error: Connection reset by peer] 05:03 -!- jonatack [~jon@37.171.81.123] has joined ##miniscript 05:39 -!- jonatack [~jon@37.171.81.123] has quit [Read error: Connection reset by peer] 05:46 -!- jonatack [~jon@192.113.14.109.rev.sfr.net] has joined ##miniscript 05:54 -!- jonatack [~jon@192.113.14.109.rev.sfr.net] has quit [Ping timeout: 256 seconds] 06:25 -!- harrigan [~harrigan@ptr-93-89-242-235.ip.airwire.ie] has joined ##miniscript 09:07 -!- jonatack [~jon@2a01:e0a:53c:a200:bb54:3be5:c3d0:9ce5] has joined ##miniscript 09:30 -!- jonatack [~jon@2a01:e0a:53c:a200:bb54:3be5:c3d0:9ce5] has quit [Quit: jonatack] 09:36 -!- jonatack [~jon@2a01:e0a:53c:a200:bb54:3be5:c3d0:9ce5] has joined ##miniscript 13:56 -!- justinmoon [~quassel@157.245.122.126] has joined ##miniscript 14:52 < justinmoon> How should "sortedmulti" work with rust-miniscript? Seems like we'd need extended descriptor support and another `Terminal` variant to accomplish this? 15:05 < sanket1729> Can you elaborate? What is sortedmulti? 15:13 < sanket1729> I see, it is a descriptor like multi, but with pubkeys sorted 15:23 < andytoshi> is this part of core? i've never heard of it 15:23 < andytoshi> why would this be a distinct descriptor? 15:24 < sanket1729> Looks like it is present in core 15:24 < sanket1729> https://github.com/bitcoin/bitcoin/blob/master/doc/descriptors.md 15:25 < sanket1729> https://github.com/bitcoin/bitcoin/pull/17056 15:25 < andytoshi> ok i see 15:25 < andytoshi> yeah this is cool, we should support it 15:26 < sanket1729> When decoding/parsing how do we decide which node to use? 15:27 < sanket1729> sorry which descriptor, multi or sortedmulti? 15:27 < andytoshi> well, when decoding a script, we get a miniscript rather than a descriptor 15:27 < andytoshi> if you mean like, in the function where we take a whole tx and then infer the descriptor 15:28 < andytoshi> we shuold just use multi all the time 15:28 < andytoshi> that function has somewhat limited usefulness i think .. it will be even less useful post-taproot 15:28 < andytoshi> so we should just make a choice for it 15:29 < andytoshi> the intended use is for like, block explorers i guess 15:29 < andytoshi> and for the satisfiedconstraints iterator 15:30 < andytoshi> and neither of those really care about the distinction between multi and sortedmulti i think 15:32 < sanket1729> I guess one of ours goals should be parse and understand all descriptors? So, we should have this for sure. 15:32 < sanket1729> all descriptors from core 15:44 < andytoshi> Yeah, that's definitely a goal 16:10 < sanket1729> justinmoon: I don't think we should alter the `Terminal` object. As andytoshi mentioned, this is related to descriptor and should only affect the descriptor logic 16:10 < justinmoon> sanket1729: That makes sense. The "policy" is basically the same, just produces different addresses/scripts basically ... 16:14 < sanket1729> One way to do is to have separate descriptors for wshSorted and shSorted? where enforces the sorting rules. andytoshi, do you have any other ideas or opinions? 16:16 < sanket1729> I think we can have this without xpubs too. Basically, we only need Ord which MiniscriptKey trait already implements. After we have xpubs, those should automatically work too. 16:17 < sanket1729> I am also thinking out loud. Maybe this does need to go into Miniscript and Terminal. 16:18 < sanket1729> Because if somebody gives you a descriptor wsh(or_i(multi(..),sortedmulti(..))) 16:26 < sanket1729> I think I got confused between Terminals and descriptors. I think we should not allow sorted_multi as a fragment in miniscript and support descriptor of the style wsh(sortedmulti) and sh(sortedmulti) 16:27 < sanket1729> It depends on whether we want to allow miniscript like wsh(or(multi(..), sortedmulti(..))) 16:30 < sanket1729> My personal opinion is to have two more descriptors enum `ShMultiSorted` `WshMultiSorted` 16:35 < justinmoon> If you did want to add it in miniscript, you could add a bool field to `Multi(usize, Vec)` 23:22 -!- jeremyrubin [~jr@2601:645:c200:f539:21b6:bf4:fe1d:6ab9] has quit [Quit: Konversation terminated!]