If the eventual outcome is that different implementations (that have material *transaction processing* userbases, and I’m not sure to what extent that’s true with Knots) ship different consensus rules, we should stop here and not activate Taproot. Seriously.
Bitcoin is a consensus system. The absolute worst outcome at all possible is to have it fall out of consensus. Matt > On Feb 18, 2021, at 08:11, Michael Folkson via bitcoin-dev > <bitcoin-dev@lists.linuxfoundation.org> wrote: > > > Right, that is one option. Personally I would prefer a Bitcoin Core release > sets LOT=false (based on what I have heard from Bitcoin Core contributors) > and a community effort releases a version with LOT=true. I don't think users > should be forced to choose something they may have no context on before they > are allowed to use Bitcoin Core. > > My current understanding is that roasbeef is planning to set LOT=false on > btcd (an alternative protocol implementation to Bitcoin Core) and Luke Dashjr > hasn't yet decided on Bitcoin Knots. > > > >> On Thu, Feb 18, 2021 at 11:52 AM ZmnSCPxj <zmnsc...@protonmail.com> wrote: >> Good morning all, >> >> > "An activation mechanism is a consensus change like any other change, can >> > be contentious like any other change, and we must resolve it like any >> > other change. Otherwise we risk arriving at the darkest timeline." >> > >> > Who's we here? >> > >> > Release both and let the network decide. >> >> A thing that could be done, without mandating either LOT=true or LOT=false, >> would be to have a release that requires a `taprootlot=1` or `taprootlot=0` >> and refuses to start if the parameter is not set. >> >> This assures everyone that neither choice is being forced on users, and >> instead what is being forced on users, is for users to make that choice >> themselves. >> >> Regards, >> ZmnSCPxj >> >> > >> > On Thu, Feb 18, 2021 at 3:08 AM Michael Folkson via bitcoin-dev >> > <bitcoin-dev@lists.linuxfoundation.org> wrote: >> > >> > > Thanks for your response Ariel. It would be useful if you responded to >> > > specific points I have made in the mailing list post or at least quote >> > > these ephemeral "people" you speak of. I don't know if you're responding >> > > to conversation on the IRC channel or on social media etc. >> > > >> > > > The argument comes from a naive assumption that users MUST upgrade to >> > > > the choice that is submitted into code. But in fact this isn't true >> > > > and some voices in this discussion need to be more humble about what >> > > > users must or must not run. >> > > >> > > I personally have never made this assumption. Of course users aren't >> > > forced to run any particular software version, quite the opposite. >> > > Defaults set in software versions matter though as many users won't >> > > change them. >> > > >> > > > Does no one realize that it is a very possible outcome that if >> > > > LOT=true is released there may be only a handful of people that begin >> > > > running it while everyone else delays their upgrade (with the very >> > > > good reason of not getting involved in politics) and a year later >> > > > those handful of people just become stuck at the moment of >> > > > MUST_SIGNAL, unable to mine new blocks? >> > > >> > > It is a possible outcome but the likely outcome is that miners activate >> > > Taproot before LOT is even relevant. I think it is prudent to prepare >> > > for the unlikely but possible outcome that miners fail to activate and >> > > hence have this discussion now rather than be unprepared for that >> > > eventuality. If LOT is set to false in a software release there is the >> > > possibility (T2 in >> > > https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2021-February/018380.html) >> > > of individuals or a proportion of the community changing LOT to true. >> > > In that sense setting LOT=false in a software release appears to be no >> > > more safe than LOT=true. >> > > >> > > > The result: a wasted year of waiting and a minority of people who >> > > > didn't want to be lenient with miners by default. >> > > >> > > There is the (unlikely but possible) possibility of a wasted year if LOT >> > > is set to false and miners fail to activate. I'm not convinced by this >> > > perception that LOT=true is antagonistic to miners. I actually think it >> > > offers them clarity on what will happen over a year time period and >> > > removes the need for coordinated or uncoordinated community UASF efforts >> > > on top of LOT=false. >> > > >> > > > An activation mechanism is a consensus change like any other change, >> > > > can be contentious like any other change, and we must resolve it like >> > > > any other change. Otherwise we risk arriving at the darkest timeline. >> > > >> > > I don't know what you are recommending here to avoid "this darkest >> > > timeline". Open discussions have occurred and are continuing and in my >> > > mailing list post that you responded to **I recommended we propose >> > > LOT=false be set in protocol implementations such as Bitcoin Core**. I >> > > do think this apocalyptic language isn't particularly helpful. In an >> > > open consensus system discussion is healthy, we should prepare for bad >> > > or worst case scenarios in advance and doing so is not antagonistic or >> > > destructive. Mining pools have pledged support for Taproot but we don't >> > > build secure systems based on pledges of support, we build them to >> > > minimize trust in any human actors. We can be grateful that people like >> > > Alejandro have worked hard on taprootactivation.com (and this effort has >> > > informed the discussion) without taking pledges of support as cast iron >> > > guarantees. >> > > >> > > TL;DR It sounds like you agree with my recommendation to set LOT=false >> > > in protocol implementations in my email :) >> > > >> > > On Thu, Feb 18, 2021 at 5:43 AM Ariel Lorenzo-Luaces >> > > <ariellua...@gmail.com> wrote: >> > > >> > > > Something what strikes me about the conversation is the emotion >> > > > surrounding the letters UASF. >> > > > It appears as if people discuss UASF as if it's a massive tidal wave >> > > > of support that is inevitable, like we saw during segwit activation. >> > > > But the actual definition is "any activation that is not a MASF". >> > > > A UASF can consist of a single node, ten nodes, a thousand, half of >> > > > all nodes, all business' nodes, or even all the non mining nodes. On >> > > > another dimension it can have zero mining support, 51% support, 49% >> > > > support, or any support right up against a miner activation threshold. >> > > > Hell a UASF doesn't even need code or even a single node running as >> > > > long as it exists as a possibility in people's minds. >> > > > The only thing a UASF doesn't have is miner support above an agreed >> > > > activation threshold (some number above %51). >> > > > I say this because it strikes me when people say that they are for >> > > > LOT=true with the logic that since a UASF is guaranteed to happen then >> > > > it's better to just make it default from the beginning. Words like >> > > > coordination and safety are sometimes sprinkled into the argument. >> > > > The argument comes from a naive assumption that users MUST upgrade to >> > > > the choice that is submitted into code. But in fact this isn't true >> > > > and some voices in this discussion need to be more humble about what >> > > > users must or must not run. >> > > > Does no one realize that it is a very possible outcome that if >> > > > LOT=true is released there may be only a handful of people that begin >> > > > running it while everyone else delays their upgrade (with the very >> > > > good reason of not getting involved in politics) and a year later >> > > > those handful of people just become stuck at the moment of >> > > > MUST_SIGNAL, unable to mine new blocks? Or attracting a minority of >> > > > miners, activating, and forking off into a minority fork. Then a >> > > > lot=false could be started that ends up activating the feature now >> > > > that the stubborn option has ran its course. >> > > > The result: a wasted year of waiting and a minority of people who >> > > > didn't want to be lenient with miners by default. The chains could be >> > > > called BitcoinLenient and BitcoinStubborn. >> > > > How is that strictly safer or more coordinated? >> > > > I may be in the minority, or maybe a silent majority, or maybe a >> > > > majority that just hasn't considered this as a choice but honestly if >> > > > there is contention about whether we're going to be stubborn or >> > > > lenient with miners for Taproot and in the future then I prefer to >> > > > just not activate anything at all. I'm fine for calling bitcoin >> > > > ossified, accepting that segwit is Bitcoin's last network upgrade. >> > > > Taproot is amazing but no new feature is worth a network split down >> > > > the middle. >> > > > Maybe in 10 or 20 years, when other blockchains implement features >> > > > like Taproot and many more, we will become envious enough to put aside >> > > > our differences on how to behave towards miners and finally activate >> > > > Taproot. >> > > > An activation mechanism is a consensus change like any other change, >> > > > can be contentious like any other change, and we must resolve it like >> > > > any other change. Otherwise we risk arriving at the darkest timeline. >> > > > Cheers >> > > > Ariel Lorenzo-Luaces >> > > > On Feb 17, 2021, at 7:05 AM, Michael Folkson via bitcoin-dev >> > > > <bitcoin-dev@lists.linuxfoundation.org> wrote: >> > > > >> > > > > Yesterday (February 16th) we held a second meeting on Taproot >> > > > > activation on IRC which again was open to all. Despite what appeared >> > > > > to be majority support for LOT=false over LOT=true in the first >> > > > > meeting I (and others) thought the arguments had not been explored in >> > > > > depth and that we should have a follow up meeting almost entirely >> > > > > focused on whether LOT (lockinontimeout) should be set to true or >> > > > > false. >> > > > > >> > > > > The meeting was announced here: >> > > > > https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2021-February/018380.html >> > > > > >> > > > > In that mailing list post I outlined the arguments for LOT=true (T1 >> > > > > to >> > > > > T6) and arguments for LOT=false (F1 to F6) in their strongest form I >> > > > > could. David Harding responded with an additional argument for >> > > > > LOT=false (F7) here: >> > > > > https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2021-February/018415.html >> > > > > >> > > > > These meetings are very challenging given they are open to all, you >> > > > > don’t know who will attend and you don’t know most people’s views in >> > > > > advance. I tried to give time for both the LOT=true arguments and the >> > > > > LOT=false arguments to be discussed as I knew there was support for >> > > > > both. We only tried evaluating which had more support and which had >> > > > > more strong opposition towards the end of the meeting. >> > > > > >> > > > > The conversation log is here: >> > > > > http://gnusha.org/taproot-activation/2021-02-16.log >> > > > > >> > > > > (If you are so inclined you can watch a video of the meeting here. >> > > > > Thanks to the YouTube account “Bitcoin” for setting up the >> > > > > livestream: >> > > > > https://www.youtube.com/watch?v=vpl5q1ovMLM) >> > > > > >> > > > > A summary of the meeting was provided by Luke Dashjr on Mastodon >> > > > > here: >> > > > > https://bitcoinhackers.org/@lukedashjr/105742918779234566 >> > > > > >> > > > > Today's #Bitcoin #Taproot meeting was IMO largely unproductive, but >> > > > > we >> > > > > did manage to come to consensus on everything but LockinOnTimeout. >> > > > > >> > > > > Activation height range: 693504-745920 >> > > > > >> > > > > MASF threshold: 1815/2016 blocks (90%) >> > > > > >> > > > > Keep in mind only ~100 people showed for the meetings, hardly >> > > > > representative of the entire community. >> > > > > >> > > > > So, these details remain JUST a proposal for now. >> > > > > >> > > > > It seems inevitable that there won't be consensus on LOT. >> > > > > >> > > > > Everyone will have to choose for himself. :/ >> > > > > >> > > > > Personally I agree with most of this. I agree that there wasn’t >> > > > > overwhelming consensus for either LOT=true or LOT=false. However, >> > > > > from >> > > > > my perspective there was clearly more strong opposition (what would >> > > > > usually be deemed a NACK in Bitcoin Core review terminology) from >> > > > > Bitcoin Core contributors, Lightning developers and other community >> > > > > members against LOT=true than there was for LOT=false. Andrew Chow >> > > > > tried to summarize views from the meeting in this analysis: >> > > > > https://gist.github.com/achow101/3e179501290abb7049de198d46894c7c >> > > > > >> > > > > I am also aware of other current and previous Bitcoin Core >> > > > > contributors and Lightning developers who didn’t attend the meeting >> > > > > in >> > > > > person who are opposed to LOT=true. I don’t want to put them in the >> > > > > spotlight for no reason but if you go through the conversation logs >> > > > > of >> > > > > not only the meeting but the weeks of discussion prior to this >> > > > > meeting >> > > > > you will see their views evaluated on the ##taproot-activation >> > > > > channel. In addition, on taprootactivation.com some mining pools >> > > > > expressed a preference for lot=false though I don’t know how strong >> > > > > that preference was. >> > > > > >> > > > > I am only one voice but it is my current assessment that if we are to >> > > > > attempt to finalize Taproot activation parameters and propose them to >> > > > > the community at this time our only option is to propose LOT=false. >> > > > > Any further delay appears to me counterproductive in our collective >> > > > > aim to get the Taproot soft fork activated as early as possible. >> > > > > >> > > > > Obviously others are free to disagree with that assessment and >> > > > > continue discussions but personally I will be attempting to avoid >> > > > > those discussions unless prominent new information comes to light or >> > > > > various specific individuals change their minds. >> > > > > >> > > > > Next week we are planning a code review of the Bitcoin Core PR #19573 >> > > > > which was initially delayed because of this LOT discussion. As I’ve >> > > > > said previously that will be loosely following the format of the >> > > > > Bitcoin Core PR review club and will be lower level and more >> > > > > technical. That is planned for Tuesday February 23rd at 19:00 UTC on >> > > > > the IRC channel ##taproot-activation. >> > > > > >> > > > > Thanks to the meeting participants (and those who joined the >> > > > > discussion on the channel prior and post the meeting) for engaging >> > > > > productively and in good faith. >> > > >> > > -- >> > > Michael Folkson >> > > Email: michaelfolk...@gmail.com >> > > Keybase: michaelfolkson >> > > PGP: 43ED C999 9F85 1D40 EAF4 9835 92D6 0159 214C FEE3 >> > > _______________________________________________ >> > > bitcoin-dev mailing list >> > > bitcoin-dev@lists.linuxfoundation.org >> > > https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev >> >> > > > -- > Michael Folkson > Email: michaelfolk...@gmail.com > Keybase: michaelfolkson > PGP: 43ED C999 9F85 1D40 EAF4 9835 92D6 0159 214C FEE3 > _______________________________________________ > bitcoin-dev mailing list > bitcoin-dev@lists.linuxfoundation.org > https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
_______________________________________________ bitcoin-dev mailing list bitcoin-dev@lists.linuxfoundation.org https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev