<oembed><type>rich</type><version>1.0</version><author_name>npub1q86n5vtxkwerzwfqza3hwls8pl8764244464talfqy2vpj0qaz6q38qwta</author_name><author_url>https://nostr.ae/npub1q86n5vtxkwerzwfqza3hwls8pl8764244464talfqy2vpj0qaz6q38qwta</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2021-02-23&#xA;📝 Original message:Not responding to anyone in particular, but it strikes me that one can&#xA;think about the case where a small minority (let&#39;s say H = 20%?) of nodes&#xA;select the opposite of what Core releases (LOT=false, LOT=true). I&#39;m&#xA;ignoring the case where a critical bug is discovered in Taproot for reasons&#xA;I could expand on if anyone is interested (I don&#39;t think LOT=true/false has&#xA;much of a diff in that regard).&#xA;&#xA;You&#39;ll note an asymmetry with LOT=true / false analysis. LOT=true nodes are&#xA;clearly updated (or lying), LOT=false nodes may be un-upgraded (or however&#xA;you want to interpret it).&#xA;&#xA;&#xA;*# 80% on LOT=false, 20% LOT=True*&#xA;&#xA;- Case 1: Activates ahead of time anyways&#xA;&#xA;No issues.&#xA;&#xA;- Case 2: Fails to Activate before timeout...&#xA;&#xA;20% *may* fork off with LOT=true. Bitcoin hashrate reduced, chance of multi&#xA;block reorgs at time of fork relatively high, especially if network does&#xA;not partition.&#xA;&#xA;Implication is that activation % being 90%, then X% fewer than 70% of&#xA;miners are signaling for Taproot at this time.  If X% is small the&#xA;increased orphan rate caused by the LOT=true miners will cause it to&#xA;activate anyways. If X% is larger, then there will be a consensus split.&#xA;&#xA;&#xA;&#xA;*# 80% on LOT=true, 20% LOT=False*&#xA;- Case 1: Activates ahead of time Anyways&#xA;&#xA;No issues.&#xA;&#xA;- Case 2: Fails to Activate before timeout...&#xA;&#xA;A% + B% + C% = 20%&#xA;&#xA;A% (upgraded, signal activate) remain on majority chain with LOT=false,&#xA;blocks mined universally valid.&#xA;&#xA;B% (upgraded, not signaling) succeeds in activating and maintaining&#xA;consensus, blocks are temporarily lost during the final period, but&#xA;consensus re-emerges.&#xA;&#xA;C% (not upgraded/not signalling) both fail to activate (not upgraded) and&#xA;blocks are rejected (not signaling) during mandatory signalling.&#xA;Essentially becomes an SPV miner, should still not select transactions&#xA;improperly given mempool policy, but may mine a bad tip.&#xA;&#xA;(I argue that group B is irrational entirely, as in this case the majority&#xA;has upgraded, inevitably winning, and is orphaning their blocks so B should&#xA;effectively be 0% or can be combined with group C as being somehow not&#xA;upgraded if they are unable to switch once it becomes clear after say the&#xA;first 100 blocks in the period that LOT &gt; 50%. The only difference in&#xA;lumping B with C is that group C SPV mines after the fork and B should, in&#xA;theory, have full validation.).&#xA;&#xA;&#xA;&#xA;Apologies if my base analysis is off -- happy to take corrections.&#xA;&#xA;&#xA;My overall summary is thus:&#xA;&#xA;1) People care what Core releases because we assume the majority will&#xA;likely run it. If core were a minority project, we wouldn&#39;t really care&#xA;what core released.&#xA;2) People are upset with LOT=true being suggested as release parameters&#xA;because of the *narrative* that it puts devs in control.&#xA;3) LOT=true having a sizeable minority running it presents major issues to&#xA;majority LOT=false in terms of lost blocks during the final period and in&#xA;terms of a longer term fork.&#xA;4) Majority LOT=true has no long term instability on consensus (majority&#xA;LOT=true means the final period always activates, any instability is short&#xA;lived + irrational).&#xA;5) On the balance, the safer parameter to release *seems* to be LOT=true.&#xA;But because devs are sensitive to control narrative, LOT=false is preferred&#xA;by devs.&#xA;6) Almost paradoxically, choosing a *less safe* option for a narrative&#xA;reason is more of a show of dev control than choosing a more safe option&#xA;despite appearances.&#xA;7) This all comes down to if we think that a reasonable number of important&#xA;nodes will run LOT=true.&#xA;8) This all doesn&#39;t matter *that much* because taproot will have many&#xA;opportunities to activate before the brinksmanship period.&#xA;&#xA;As a plan of action, I think that means that either:&#xA;&#xA;A) Core should release LOT=true, as a less disruptive option given stated&#xA;community intentions to do LOT=true&#xA;B) Core  community should vehemently anti-advocate running LOT=true to&#xA;ensure the % is as small as possible&#xA;C) Do nothing&#xA;D) Core community should release LOT=false and vehemently advocate manually&#xA;changing to LOT=true to ensure the % is supermajority, but leaving it as a&#xA;user choice.&#xA;&#xA;&#xA;Overall, I worry that plan B has a mild Streissand effect and would result&#xA;in boosting LOT=true (which could be OK, so long as LOT=true +&#xA;LOT=false+signal yes becomes the large majority, but would be not fun for&#xA;anyone if LOT=true + LOT=false+signal yes are a small majority). Plan C&#xA;most likely ends up with some % doing LOT=true anyways. D feels a little&#xA;silly, but maybe a good tradeoff.&#xA;&#xA;If I had to summarize the emotional dynamic among developers around&#xA;LOT=true, I think devs wish it didn&#39;t exist because it is clear LOT=true&#xA;*creates* the issues here. LOT=false would be fine if the LOT=true strategy&#xA;didn&#39;t exist at all. But unfortunately the cat is out of the bag and cannot&#xA;be put back in. To validate the emotions, I think it is fine to be angry&#xA;about LOT=true and not like it, but we should either accept that it is most&#xA;likely to create consensus OR we should find a new game theoretic&#xA;activation strategy with better pro-social equilibriums.&#xA;&#xA;Personally, I think with either plan the ultimate risk of forking is low&#xA;given probability to activate before timeout, so we should just pick&#xA;something and move on, accepting that we aren&#39;t setting a precedent by&#xA;which all future forks should abide. Given my understanding of the&#xA;tradeoffs, I believe that the safest choice is LOT=true, but I wouldn&#39;t&#xA;move to hold back a plan of LOT=false (but would probably take mitigative&#xA;steps on community advocacy if it looks like there is non majority but non&#xA;negligible LOT=true uptake).&#xA;&#xA;Cheers,&#xA;&#xA;Jeremy&#xA;-------------- next part --------------&#xA;An HTML attachment was scrubbed...&#xA;URL: &lt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20210222/019548d1/attachment-0001.html&gt;</html></oembed>