Matt Corallo [ARCHIVE] on Nostr: 📅 Original date posted:2021-04-07 📝 Original message:On 4/7/21 01:01, Rusty ...
📅 Original date posted:2021-04-07
📝 Original message:On 4/7/21 01:01, Rusty Russell via bitcoin-dev wrote:
> Ryan Grant <bitcoin-dev at rgrant.org> writes:
>> On Tue, Apr 6, 2021 at 11:58 PM Rusty Russell via bitcoin-dev
>> What ST is saying is that a strategy of avoiding unnecessary risk is
>> stronger than a strategy of brinkmanship when brinkmanship wasn't
>> our only option. Having deescalation in the strategy toolkit makes
>> Bitcoin stronger.
>
> I don't believe that having a plan is brinkmanship or an escalation.
I strongly disagree with this characterization of ST, primarily because there just isn't the kind of agreement you seem
to be assuming. ST isn't a "lets not decide because we don't want to formulate a specific grand plan" its more of a
"lets not decide, because there are very strong, and very divergent viewpoints on what a specific grand plan can or
should look like, and something most people are ok with is better than nothing at all". Ultimately, there are a number
of possible directions a grand plan could go, and there appear to be at least several prominent (and likely many
non-prominent) individuals who would strongly disagree with any such plan, you and I likely among them :).
>>
>> LOT=true does face the awkward question, but there are downsides:
>>
>> - in the requirement to drop blocks from apathetic miners (although
>> as Luke-Jr pointed out in a previous reply on this list they have
>> no contract under which to raise a complaint); and
>
> Surely, yes. If the users of bitcoin decide blocks are invalid, they're
> invalid. With a year's warning, and developer and user consensus
> against them, I think we've reached the limits of acceptable miner
> apathy.
You say "developer and user consensus against them" here, but then go on to argue that its perfectly acceptable for only
a small subset of users to be required to do something below.
>> - in the risk of a chain split, should gauging economic majority
>> support - which there is zero intrinsic tooling for - go poorly.
>
> Agreed that we should definitely do better here: in practice people
> would rely on third party explorers for information on the other side of
> the split. Tracking the cumulative work on invalid chains would be a
> good idea for bitcoind in general (AJ suggested this, IIRC).
We already have a really, really great precedent for tracking economic majority, I'd argue we have great tooling here!
During Segwit2x, we had multiple futures and chain-split-tokens available, including the BitMex futures with billions of
dollars in daily volume! For the BCH split, ViaBTC issued similar chain split tokens.
At the end of the day, economic value is going to determine the amount of hashrate on any chain, and there is a very,
very strong incentive (trading fees!) for an exchange to list...more stuff, chainsplit tokens included.
Why do we need to build in really janky ways to measure economic majority when there's already a great one that
experience has shown us will prop up and provide reasonable signal, given any material demand.
>>> Personally, I think the compromise position is using LOT=false and
>>> having those such as Luke and myself continue working on a LOT=true
>>> branch for future consideration. It's less than optimal, but I
>>> appreciate that people want Taproot activated more than they want
>>> the groundwork future upgrades.
>>
>> Another way of viewing the current situation is that should
>> brinkmanship be necessary, then better tooling to resolve a situation
>> that requires brinkmanship will be invaluable. But:
>>
>> - we do not need to normalize brinkmanship;
>>
>> - designing brinkmanship tooling well before the next crisis does
>> not require selecting conveniently completed host features to
>> strap the tooling onto for testing; and
>
> Again, openly creating a contingency plan is not brinkmanship, it's
> normal. I know that considering these scenarios is uncomfortable; I
> avoid conflict myself! But I feel obliged to face this as a real
> possibility.
>
> I think we should be normalizing the understanding that bitcoin users
> are the ultimate decider. By offering *all* of them the tools to do so
> we show this isn't lip-service, but something that businesses and
> everyone else in the ecosystem should consider.
While I strongly agree with your principle, I strongly disagree with the practice of how you propose going about it.
Ultimately, no matter what we decide here, elsewhere, or what the process for consensus changes is, the decider will be
economic activity and users voting with their Bitcoin. We should start by acknowledging that, and acknowledging that the
markets will (and have!) let us know what they think when there is any kind of material disagreement.
Then, we should optimize for ensuring that the market never needs to "correct the situation", because if we end up there
(or in any of these kinds of scenarios), we've basically screwed the pooch. Sure, some 10% minority group (and usually
less as time goes on) forking themselves off has turned out to basically be irrelevant, but if we end up with multiple
active chains as a normal course of business (which I'd strongly argue we'd be optimizing for with some kind of UASF/LOT
option design out the gate), all we do is encourage strife, at the cost of users who just want to use a robust and
reliable Bitcoin.
>> - it's already the case that a UASF branch can be prepared along
>> with ST (ie. without requiring LOT=false), although the code is a
>> bit more complex and the appropriate stopheight a few blocks later.
>
> I don't believe this is true, unless you UASF before ST expires? ST is
> explicitly designed *not* to give time to conclude that miners are
> stalling (unless something has changed from the initial 3 month
> proposal?).
ST is not intended to be an end-all, be-all of the taproot activation story. I don't think anyone who is pushing for it
thinks that ST is the only option if miners are not able to upgrade before its signaling window expires. Just because it
isn't designed to ensure we can play brinksman ship fork games with a UASF doesn't mean there isn't a followup that
could include such a thing.
Matt
Published at
2023-06-07 22:51:26Event JSON
{
"id": "ff8a0e07052121ef50788a2a86d63deb35ce59feb199f08c35ba842e986f7f4d",
"pubkey": "cd753aa8fbc112e14ffe9fe09d3630f0eff76ca68e376e004b8e77b687adddba",
"created_at": 1686178286,
"kind": 1,
"tags": [
[
"e",
"d523491946f0d211fd123a1f1b64561c6201851a92f7f901d22926762a444f04",
"",
"root"
],
[
"e",
"c5e441d6d86fe9da23f5c5418540b40031c55d497768e76d8b863154d9da83d3",
"",
"reply"
],
[
"p",
"1c6b6b98622ba25104591136013eadc67e5a75a9327400cb9f2b9ac5027462c3"
]
],
"content": "📅 Original date posted:2021-04-07\n📝 Original message:On 4/7/21 01:01, Rusty Russell via bitcoin-dev wrote:\n\u003e Ryan Grant \u003cbitcoin-dev at rgrant.org\u003e writes:\n\u003e\u003e On Tue, Apr 6, 2021 at 11:58 PM Rusty Russell via bitcoin-dev\n\u003e\u003e What ST is saying is that a strategy of avoiding unnecessary risk is\n\u003e\u003e stronger than a strategy of brinkmanship when brinkmanship wasn't\n\u003e\u003e our only option. Having deescalation in the strategy toolkit makes\n\u003e\u003e Bitcoin stronger.\n\u003e \n\u003e I don't believe that having a plan is brinkmanship or an escalation.\n\nI strongly disagree with this characterization of ST, primarily because there just isn't the kind of agreement you seem \nto be assuming. ST isn't a \"lets not decide because we don't want to formulate a specific grand plan\" its more of a \n\"lets not decide, because there are very strong, and very divergent viewpoints on what a specific grand plan can or \nshould look like, and something most people are ok with is better than nothing at all\". Ultimately, there are a number \nof possible directions a grand plan could go, and there appear to be at least several prominent (and likely many \nnon-prominent) individuals who would strongly disagree with any such plan, you and I likely among them :).\n\u003e\u003e\n\u003e\u003e LOT=true does face the awkward question, but there are downsides:\n\u003e\u003e\n\u003e\u003e - in the requirement to drop blocks from apathetic miners (although\n\u003e\u003e as Luke-Jr pointed out in a previous reply on this list they have\n\u003e\u003e no contract under which to raise a complaint); and\n\u003e \n\u003e Surely, yes. If the users of bitcoin decide blocks are invalid, they're\n\u003e invalid. With a year's warning, and developer and user consensus\n\u003e against them, I think we've reached the limits of acceptable miner\n\u003e apathy.\n\nYou say \"developer and user consensus against them\" here, but then go on to argue that its perfectly acceptable for only \na small subset of users to be required to do something below.\n\n\u003e\u003e - in the risk of a chain split, should gauging economic majority\n\u003e\u003e support - which there is zero intrinsic tooling for - go poorly.\n\u003e \n\u003e Agreed that we should definitely do better here: in practice people\n\u003e would rely on third party explorers for information on the other side of\n\u003e the split. Tracking the cumulative work on invalid chains would be a\n\u003e good idea for bitcoind in general (AJ suggested this, IIRC).\n\nWe already have a really, really great precedent for tracking economic majority, I'd argue we have great tooling here! \nDuring Segwit2x, we had multiple futures and chain-split-tokens available, including the BitMex futures with billions of \ndollars in daily volume! For the BCH split, ViaBTC issued similar chain split tokens.\n\nAt the end of the day, economic value is going to determine the amount of hashrate on any chain, and there is a very, \nvery strong incentive (trading fees!) for an exchange to list...more stuff, chainsplit tokens included.\n\nWhy do we need to build in really janky ways to measure economic majority when there's already a great one that \nexperience has shown us will prop up and provide reasonable signal, given any material demand.\n\n\u003e\u003e\u003e Personally, I think the compromise position is using LOT=false and\n\u003e\u003e\u003e having those such as Luke and myself continue working on a LOT=true\n\u003e\u003e\u003e branch for future consideration. It's less than optimal, but I\n\u003e\u003e\u003e appreciate that people want Taproot activated more than they want\n\u003e\u003e\u003e the groundwork future upgrades.\n\u003e\u003e\n\u003e\u003e Another way of viewing the current situation is that should\n\u003e\u003e brinkmanship be necessary, then better tooling to resolve a situation\n\u003e\u003e that requires brinkmanship will be invaluable. But:\n\u003e\u003e\n\u003e\u003e - we do not need to normalize brinkmanship;\n\u003e\u003e\n\u003e\u003e - designing brinkmanship tooling well before the next crisis does\n\u003e\u003e not require selecting conveniently completed host features to\n\u003e\u003e strap the tooling onto for testing; and\n\u003e \n\u003e Again, openly creating a contingency plan is not brinkmanship, it's\n\u003e normal. I know that considering these scenarios is uncomfortable; I\n\u003e avoid conflict myself! But I feel obliged to face this as a real\n\u003e possibility.\n\u003e \n\u003e I think we should be normalizing the understanding that bitcoin users\n\u003e are the ultimate decider. By offering *all* of them the tools to do so\n\u003e we show this isn't lip-service, but something that businesses and\n\u003e everyone else in the ecosystem should consider.\n\nWhile I strongly agree with your principle, I strongly disagree with the practice of how you propose going about it. \nUltimately, no matter what we decide here, elsewhere, or what the process for consensus changes is, the decider will be \neconomic activity and users voting with their Bitcoin. We should start by acknowledging that, and acknowledging that the \nmarkets will (and have!) let us know what they think when there is any kind of material disagreement.\n\nThen, we should optimize for ensuring that the market never needs to \"correct the situation\", because if we end up there \n(or in any of these kinds of scenarios), we've basically screwed the pooch. Sure, some 10% minority group (and usually \nless as time goes on) forking themselves off has turned out to basically be irrelevant, but if we end up with multiple \nactive chains as a normal course of business (which I'd strongly argue we'd be optimizing for with some kind of UASF/LOT \noption design out the gate), all we do is encourage strife, at the cost of users who just want to use a robust and \nreliable Bitcoin.\n\n\u003e\u003e - it's already the case that a UASF branch can be prepared along\n\u003e\u003e with ST (ie. without requiring LOT=false), although the code is a\n\u003e\u003e bit more complex and the appropriate stopheight a few blocks later.\n\u003e \n\u003e I don't believe this is true, unless you UASF before ST expires? ST is\n\u003e explicitly designed *not* to give time to conclude that miners are\n\u003e stalling (unless something has changed from the initial 3 month\n\u003e proposal?).\n\nST is not intended to be an end-all, be-all of the taproot activation story. I don't think anyone who is pushing for it \nthinks that ST is the only option if miners are not able to upgrade before its signaling window expires. Just because it \nisn't designed to ensure we can play brinksman ship fork games with a UASF doesn't mean there isn't a followup that \ncould include such a thing.\n\nMatt",
"sig": "94392e1ab3c185437effecc5d0ed39fedbf51a13ac504e0b226d487c8fc1b8004e3d8f2ca790d904cb66c164b4920d91a86e10d65d8dce8836848a543511f817"
}