From: "David A. Harding" <dave@dtrt.org>
To: Matt Corallo <lf-lists@mattcorallo.com>
Cc: Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org>
Subject: Re: [bitcoin-dev] Automatically reverting ("transitory") soft forks, e.g. for CTV
Date: Thu, 21 Apr 2022 15:20:14 -1000 [thread overview]
Message-ID: <f98a9724da2916e6687771ad1a2b555b@dtrt.org> (raw)
In-Reply-To: <01d4a034-eb80-a598-1858-6b0ed8295a13@mattcorallo.com>
[Rearranging Matt's text in my reply so my nitpicks come last.]
On 21.04.2022 13:02, Matt Corallo wrote:
> I agree, there is no universal best, probably. But is there a concrete
> listing of a number of use-cases and the different weights of things,
> plus flexibility especially around forward-looking designs?
I'm sure we could make a nice list of covenant usecases, but I don't
know how we would assign reasonable objective weights to the different
things purely through group foresight. I know I'm skeptical about
congestion control and enthusiastic about joinpools---but I've talked to
developers I respect who've had the opposite opinions from me about
those things. The best way I know of to reconcile our differing
opinions is to see what real Bitcoin users actually pay for. But to do
that, I think they must have a way to use covenants in something like
the production environment.
> You're also writing off [...] a community of
> independent contributors who care about Bitcoin working together to
> make decisions on what is or isn't the "right way to go" [...]. Why are
> you
> suggesting its something that you "don't know how to do"?
You said we should use the best design. I said the different designs
optimize for different things, so it's unlikely that there's an
objective best. That implies to me that we either need to choose a
winner (yuck) or we need to implement more than one of the designs. In
either of those cases, choosing what to implement would benefit from
data about how much the thing will be used and how much users will pay
for it in fees.
> Again, my point *is not* "will people use CTV", I think they will. I
> think they would also use TLUV if that were activated for the exact
> same use-cases. I think they would also use CAT+CSFS if that were what
> was activated, again for the exact same use-cases. Given that, I'm not
> sure how your proposal teaches us anything at all, aside from "yes,
> there was demand for *some* kind of covenant".
I'm sorry if my OP was ambiguous about this, but my goal there was to
describe a general framework for activating temporary consensus changes
for the purpose of demonstrating demand for proposed features. I gave
CTV as an example for how the framework could be used, but we could use
the same framework to activate APO and TLUV (or IIDs and EVICT)---and
then we would see which of them people actually used. If there was
significant ongoing use of all three after 5 years, great! We keep them
all. If some of them went largely unused, we let the extra validation
rules expire and move on.
Alternatively, if we only enabled one covenant design (e.g. CTV), we
would still gain data about how it was used and we could see if some of
the alternative designs would've been more optimal for those
demonstrated uses.
My goal here is obtaining data from which we can make informed
decisions. A transitory soft fork is an extreme way to acquire that
data and I fully acknowledge it has several significant problems
(including those I listed in my OP). I'm hoping, though, that it's a
better solution than another activation battle, prolonged yelling on
this mailing list and elsewhere, or everyone just giving up and letting
Bitcoin ossify prematurely. Alternatively, I'm hoping one of the many
people on this list who is smarter than I am will think of another way
to obtain decisive data with less fuss.
> Again, you're writing off the real and nontrivial risk of doing a fork
> to begin with.
I agree this risk exists and it isn't my intention to write it off---my
OP did say "we [must be] absolutely convinced CTV will have no negative
effects on the holders or receivers of non-CTV coins." I haven't been
focusing on this in my replies because I think the other issues we've
been discussing are more significant. If we were to get everyone to
agree to do a transitory soft fork, I think the safety concerns related
to a CTV soft fork could be mitigated the same way we've mitigated them
for previous soft forks: heaps of code review/testing and making sure a
large part of the active community supports the change.
> You don't
> mention the lack of recursion in CTV vs CAT+CSFS
I mentioned recursion, or the lack thereof, in various proposals like
five times in this thread. :-)
Thanks again for your replies,
-Dave
next prev parent reply other threads:[~2022-04-22 1:20 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-21 1:04 [bitcoin-dev] Automatically reverting ("transitory") soft forks, e.g. for CTV David A. Harding
2022-04-21 2:05 ` Luke Dashjr
2022-04-21 3:10 ` alicexbt
2022-04-21 5:56 ` Luke Dashjr
2022-04-21 6:20 ` Jeremy Rubin
2022-04-21 6:37 ` Luke Dashjr
2022-04-21 13:10 ` Jeremy Rubin
2022-04-24 15:22 ` Peter Todd
2022-04-21 14:58 ` Matt Corallo
2022-04-21 18:06 ` David A. Harding
2022-04-21 18:39 ` Matt Corallo
2022-04-21 22:28 ` David A. Harding
2022-04-21 23:02 ` Matt Corallo
2022-04-22 1:20 ` David A. Harding [this message]
2022-04-22 18:40 ` Matt Corallo
2022-04-22 18:49 ` Corey Haddad
2022-04-22 16:48 ` James O'Beirne
2022-04-22 17:06 ` James O'Beirne
2022-04-22 16:28 ` James O'Beirne
2022-04-22 17:25 ` [bitcoin-dev] Vaulting (Was: Automatically reverting ("transitory") soft forks) Russell O'Connor
2022-04-23 4:56 ` Billy Tetrud
2022-04-23 14:02 ` Russell O'Connor
2022-04-23 18:24 ` Matt Corallo
2022-04-23 19:30 ` Russell O'Connor
2022-04-24 23:03 ` Billy Tetrud
2022-04-25 17:27 ` Nadav Ivgi
2022-04-25 22:27 ` Russell O'Connor
2022-04-27 1:52 ` Billy Tetrud
2022-04-28 23:14 ` Nadav Ivgi
2022-04-28 23:51 ` Billy Tetrud
2022-04-22 18:35 ` [bitcoin-dev] Automatically reverting ("transitory") soft forks, e.g. for CTV Matt Corallo
2022-04-21 19:08 ` Jeremy Rubin
2022-04-22 0:28 ` Anthony Towns
2022-04-22 1:44 ` David A. Harding
2022-04-22 19:57 ` Antoine Riard
2022-04-25 5:12 ` ZmnSCPxj
2022-04-22 19:05 alicexbt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=f98a9724da2916e6687771ad1a2b555b@dtrt.org \
--to=dave@dtrt.org \
--cc=bitcoin-dev@lists.linuxfoundation.org \
--cc=lf-lists@mattcorallo.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox