--- Log opened Thu Jun 29 00:00:45 2023 01:13 < darosior> `0` is considered sane in the Bitcoin Core implementation.. https://github.com/bitcoin/bitcoin/pull/22838#issuecomment-1612604508 01:16 < darosior> I don't think it's the only one, we don't check in IsSane() whether there exists any satisfaction at all. 02:46 -!- stickies-v [sid544753@id-544753.uxbridge.irccloud.com] has quit [Server closed connection] 02:46 -!- stickies-v [sid544753@id-544753.uxbridge.irccloud.com] has joined ##miniscript 03:37 < darosior> Fix is up: https://github.com/bitcoin/bitcoin/pull/27997 04:04 -!- meshcollider [meshcollid@jujube.rpblc.net] has quit [Ping timeout: 264 seconds] 04:06 -!- meshcollider [meshcollid@meshcollider.jujube.rpblc.net] has joined ##miniscript 08:29 -!- salvatoshi [~salvatosh@genymobile-2-6-86.fib.nerim.net] has quit [Ping timeout: 252 seconds] 08:39 -!- ghost43 [~ghost43@gateway/tor-sasl/ghost43] has quit [Remote host closed the connection] 08:39 -!- ghost43 [~ghost43@gateway/tor-sasl/ghost43] has joined ##miniscript 11:32 < andytoshi> what does sane mean? why are we still using that term :/ 11:33 < andytoshi> ah right, we defined it in ExtParams::insane() in rust-miniscript 11:34 < andytoshi> it's things that may have (a) no signature requirement; (b) may violate resource limitations, (c) may violate timelocks, (d) may be malleable, (e() may have repeated public keys 11:34 < andytoshi> afaict 0 does not satisfy any of those 11:41 <@sipa> I believe that the point of sanity is defining a subset of miniscripts for which the apparent policy (naive conversion of miniscript nodes to policy) matches the actual policy of the script. 11:41 <@sipa> And indeed, that is the case for 0. 11:42 <@sipa> But that doesn't mean it's a useful or desirable thing that you'd necessarily want to support. 13:18 -!- salvatoshi [~salvatosh@lfbn-idf3-1-1331-187.w92-170.abo.wanadoo.fr] has joined ##miniscript 13:19 -!- fjahr [sid374480@id-374480.uxbridge.irccloud.com] has quit [Server closed connection] 13:19 -!- fjahr [sid374480@id-374480.uxbridge.irccloud.com] has joined ##miniscript 13:20 -!- salvatoshi [~salvatosh@lfbn-idf3-1-1331-187.w92-170.abo.wanadoo.fr] has quit [Client Quit] 13:43 < andytoshi> i tend to agree with sipa 13:43 < andytoshi> though i'm missing a bit of context 13:44 < andytoshi> darosior: what were you testing that this caused a problem? 13:44 <@sipa> If you look at the PR, and click through, it appears to have been discovered in a test that assumes keyless scripts are unsane. 13:44 < andytoshi> i think, 0 may be "special cased" as the only fragment without public keys that is marked "safe". so i suppose we could change that and still have a principled definition of "safe" 13:45 < andytoshi> but i like the definition of "can't be spent without keys" 13:45 < andytoshi> vs "has no keys" 13:45 < andytoshi> oh, cute, it looks like core actually has an assertion (at least in a fuzztest) that we're using the "has no keys" definition 13:46 < andytoshi> so....one argument in favor of "has no keys" is that it's super easy to measure 13:46 < andytoshi> in fuzztests such as this 13:46 < andytoshi> which maybe has some value, that you can't trick the wallet into thinking that a keyless miniscript actually does have keys 19:58 -!- FelixWeis_ [sid154231@id-154231.hampstead.irccloud.com] has quit [Server closed connection] 19:58 -!- FelixWeis_ [sid154231@id-154231.hampstead.irccloud.com] has joined ##miniscript 21:08 -!- Netsplit *.net <-> *.split quits: ghost43 --- Log closed Fri Jun 30 00:00:46 2023