{"type":"rich","version":"1.0","author_name":"npub1e46n428mcyfwznl7nlsf6d3s7rhlwm9x3cmkuqzt3emmdpadmkaqqjxmcu","author_url":"https://nostr.ae/npub1e46n428mcyfwznl7nlsf6d3s7rhlwm9x3cmkuqzt3emmdpadmkaqqjxmcu","provider_name":"njump","provider_url":"https://nostr.ae","html":"📅 Original date posted:2021-02-21\n📝 Original message:I don’t think “some vocal users are going to threaten to fork themselves off” is good justification for technical decisions. It’s important to communicate and for everyone to agree/understand that a failed BIP 8/9 activation, in the scenario people are worried about, is not the end of the story for Taproot activation. If it is clear that Taproot has broad consensus but some miners failed to upgrade in time (as it presumably would be), a flag day activation seems merited and I’m not sure anyone has argued against this. That said, forced-signaling via a UASF/BIP8(true)-style fork carries material additional risk that a classic flag-day activation does not, so let’s not optimize for something like that.\n\nMatt\n\n\u003e On Feb 21, 2021, at 08:26, Ariel Lorenzo-Luaces via bitcoin-dev \u003cbitcoin-dev at lists.linuxfoundation.org\u003e wrote:\n\u003e \n\u003e ﻿\n\u003e What would be the tradeoffs of a BIP8(false, ∞) option? That would remove some of the concerns of having to coordinate a UASF with an approaching deadline.\n\u003e \n\u003e Cheers\n\u003e Ariel Lorenzo-Luaces\n\u003e\u003e On Feb 19, 2021, at 6:55 PM, ZmnSCPxj via bitcoin-dev \u003cbitcoin-dev at lists.linuxfoundation.org\u003e wrote:\n\u003e\u003e Good morning list,\n\u003e\u003e \n\u003e\u003e\u003e  It was pointed out to me that this discussion is largely moot as the software complexity for Bitcoin Core to ship an\n\u003e\u003e\u003e  option like this is likely not practical/what people would wish to see.\n\u003e\u003e\u003e \n\u003e\u003e\u003e  Bitcoin Core does not have infrastructure to handle switching consensus rules with the same datadir - after running with\n\u003e\u003e\u003e  uasf=true for some time, valid blocks will be marked as invalid, and additional development would need to occur to\n\u003e\u003e\u003e  enable switching back to uasf=false. This is complex, critical code to get right, and the review and testing cycles\n\u003e\u003e\u003e  needed seem to be not worth it.\n\u003e\u003e \n\u003e\u003e Without implying anything else, this can be worked around by a user maintaining two `datadir`s and running two clients.\n\u003e\u003e This would have an \"external\" client running an LOT=X (where X is whatever the user prefers) and an \"internal\" client that is at most 0.21.0, which will not impose any LOT rules.\n\u003e\u003e The internal client then uses `connect=` directive to connect locally to the external client and connects only to that client, using it as a firewall.\n\u003e\u003e The external client can be run pruned in order to reduce diskspace resource usage (the internal client can remain unpruned if that is needed by the user, e.g. for LN implementation sthat need to look up arbitrary short-channel-ids).\n\u003e\u003e Bandwidth usage should be same since the internal client only connects to the external client and the OS should optimize that case.\n\u003e\u003e CPU usage is doubled, though.\n\u003e\u003e \n\u003e\u003e (the general idea came from gmax, just to be clear, though the below use is from me)\n\u003e\u003e \n\u003e\u003e Then the user can select LOT=C or LOT=!C (where C is whatever Bitcoin Core ultimately ships with) on the external client based on the user preferences.\n\u003e\u003e \n\u003e\u003e If Taproot is not MASF-activated and LOT=!U is what dominates later (where U is whatever the user decided on), the user can decide to just destroy the external node and connect the internal node directly to the network (optionally upgrading the internal node to LOT=!U) as a way to \"change their mind in view of the economy\".\n\u003e\u003e The internal node will then follow the dominant chain.\n\u003e\u003e \n\u003e\u003e \n\u003e\u003e Regards,\n\u003e\u003e ZmnSCPxj\n\u003e\u003e \n\u003e\u003e\u003e \n\u003e\u003e\u003e  Instead, the only practical way to ship such an option would be to treat it as a separate chain (the same way regtest,\n\u003e\u003e\u003e  testnet, and signet are treated), including its own separate datadir and the like.\n\u003e\u003e\u003e \n\u003e\u003e\u003e  Matt\n\u003e\u003e\u003e \n\u003e\u003e\u003e\u003e  On 2/19/21 09:13, Matt Corallo via bitcoin-dev wrote:\n\u003e\u003e\u003e\u003e \n\u003e\u003e\u003e\u003e  (Also in response to ZMN...)\n\u003e\u003e\u003e\u003e  Bitcoin Core has a long-standing policy of not shipping options which shoot yourself in the foot. I’d be very disappointed if that changed now. People are of course more than welcome to run such software themselves, but I anticipate the loud minority on Twitter and here aren’t processing enough transactions or throwing enough financial weight behind their decision for them to do anything but just switch back if they find themselves on a chain with no blocks.\n\u003e\u003e\u003e\u003e  There’s nothing we can (or should) do to prevent people from threatening to (and possibly) forking themselves off of bitcoin, but that doesn’t mean we should encourage it either. The work Bitcoin Core maintainers and developers do is to recommend courses of action which they believe have reasonable levels of consensus and are technically sound. Luckily, there’s strong historical precedent for people deciding to run other software around forks, so misinterpretation is not very common (just like there’s strong historical precedent for miners not unilaterally deciding forks in the case of Segwit).\n\u003e\u003e\u003e\u003e  Matt\n\u003e\u003e\u003e\u003e \n\u003e\u003e\u003e\u003e\u003e\u003e  On Feb 19, 2021, at 07:08, Adam Back adam at cypherspace.org wrote:\n\u003e\u003e\u003e\u003e\u003e\u003e \n\u003e\u003e\u003e\u003e\u003e\u003e  would dev consensus around releasing LOT=false be considered as \"developers forcing their views on users\"?\n\u003e\u003e\u003e\u003e\u003e \n\u003e\u003e\u003e\u003e\u003e  given there are clearly people of both views, or for now don't care\n\u003e\u003e\u003e\u003e\u003e  but might later, it would minimally be friendly and useful if\n\u003e\u003e\u003e\u003e\u003e  bitcoin-core has a LOT=true option - and that IMO goes some way to\n\u003e\u003e\u003e\u003e\u003e  avoid the assumptive control via defaults.\n\u003e\u003e\u003e\u003e \n\u003e\u003e\u003e\u003e\u003e  Otherwise it could be read as saying \"developers on average\n\u003e\u003e\u003e\u003e\u003e  disapprove, but if you, the market disagree, go figure it out for\n\u003e\u003e\u003e\u003e\u003e  yourself\" which is not a good message for being defensive and avoiding\n\u003e\u003e\u003e\u003e\u003e  mis-interpretation of code repositories or shipped defaults as\n\u003e\u003e\u003e\u003e\u003e  \"control\".\n\u003e\u003e\u003e\u003e \n\u003e\u003e\u003e\u003e  bitcoin-dev mailing list\n\u003e\u003e\u003e\u003e  bitcoin-dev at lists.linuxfoundation.org\n\u003e\u003e\u003e\u003e  https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev\n\u003e\u003e \n\u003e\u003e \n\u003e\u003e \n\u003e\u003e bitcoin-dev mailing list\n\u003e\u003e bitcoin-dev at lists.linuxfoundation.org\n\u003e\u003e https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev\n\u003e _______________________________________________\n\u003e bitcoin-dev mailing list\n\u003e bitcoin-dev at lists.linuxfoundation.org\n\u003e https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev\n-------------- next part --------------\nAn HTML attachment was scrubbed...\nURL: \u003chttp://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20210221/fb583f75/attachment.html\u003e"}
