I agree with Matt. The less said about the "Aw shucks Jeremy didn't know that 
CTV didn't have community consensus at the time" [0] and "it was the lack of 
process that was the problem" the better. If people don't care about lack of 
community consensus there is no process in a permissionless, open source 
community that can stop them or direct them down a more patient, productive 
path (I tried). I think it is a shame because I think (maybe I'm wrong) at 
least in the technical community there is an understanding that long term 
Bitcoin is far from finished in exhausting its potential and we do need people 
who will work on changes that we'll need in the long term.

There are a few interesting things in here though. I'm not convinced by the 
name (bitcoin-inquisition, shedpaint, shedpaint, let's park that for the 
moment) but I do like the idea of signet having soft fork proposals enabled on 
it [1] whether that be CTV, APO etc and if that requires more of the signet 
code to be moved out of the Core repo so be it. I'm surprised more isn't being 
done on Liquid already with what possible future functionality is (and could 
be) enabled [2] there but maybe there is more happening than I'm aware of. 
Protocols or use cases built out and demonstrated on signet (and/or 
Liquid/sidechains) seem an obvious stepping stone to me for convincing the 
community that it is potentially worth taking the chain split risk for a 
particular upgrade. It is a long slog to get community consensus on an upgrade 
(Taproot certainly was a slog) but I think the vast majority of us think 
Taproot was worth that slog and Bitcoin would be poorer today without it.

The Great Consensus Cleanup is an interesting example in that I get Matt 
doesn't have time to champion it or focus on it with his LDK commitments but I 
have no idea where it would rank on his long term priority list if he wasn't 
working on LDK. Similarly I have no idea what people who understand this 
evolving system much better than I do are thinking with regards to say adding 
new opcodes, sighash flags versus say waiting on Simplicity and possibly adding 
new functionality within that potential upgrade. For people like me who are 
extremely unlikely to propose their own consensus change(s) getting some signal 
on what to spend time digging into would be useful rather than second guessing 
what people are thinking. There is a danger that you flirt with perceived 
public roadmaps when possible authority figures stick their necks out and 
effectively say "I'm not in charge but in an imaginary world where I was this 
is my current thinking of the ordering in which we could improve this system 
 long term. But this could change depending on x, y and z and possible upgrades 
are only ready when they're ready and they have community consensus." There is 
no way people don't play these exercises in their minds. I do, I just have very 
few answers :) I personally think APO is in prime position to improve Lightning 
channel state management with eltoo and if it enables some covenant schemes too 
that seems like an added bonus. On APO versus waiting for APO like 
functionality in Simplicity I have no idea. Work on APO/eltoo and Simplicity 
both seem to be progressing in parallel so the APO versus Simplicity discussion 
perhaps rests on whether people think certain covenants should only really be 
enabled once we have the security guarantees of Simplicity [3] (if at all).

Antoine's covenant R&D effort [4] seems really promising and I hope the 
shenanigans from earlier in the year don't put people off from engaging with 
that. Hopefully we can see more exploration, development and research in 
covenants (e.g. this excellent research paper "Bitcoin Covenants: Three Ways to 
Control the Future" [5]) and we can foster a community which has very high 
standards, is open to new ideas and new research but can avoid these months 
long resisting chain split fights. I think the discussion would be much more 
interesting and much more productive if people didn't have to think "If I 
express a view now it will be used to attack me personally later" or worse "If 
I express a view now it will be used to justify an upcoming chain split". 

[0]: https://gist.github.com/michaelfolkson/352a503f4f9fc5de89af528d86a1b718
[1]: 
https://bitcoin.stackexchange.com/questions/98642/can-we-experiment-on-signet-with-multiple-proposed-soft-forks-whilst-maintaining
[2]: 
https://bitcoin.stackexchange.com/questions/109764/what-opcodes-are-supported-on-liquid-but-not-yet-on-bitcoin
[3]: https://bitcoinops.org/en/topics/simplicity/
[4]: 
https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2022-September/020912.html
[5]: https://arxiv.org/pdf/2006.16714.pdf

--
Michael Folkson
Email: michaelfolkson at protonmail.com
Keybase: michaelfolkson
PGP: 43ED C999 9F85 1D40 EAF4 9835 92D6 0159 214C FEE3


------- Original Message -------
On Saturday, September 17th, 2022 at 09:39, Matt Corallo via bitcoin-dev 
<bitcoin-dev@lists.linuxfoundation.org> wrote:


> 
> On 9/17/22 2:14 AM, Anthony Towns wrote:
> 
> > On Fri, Sep 16, 2022 at 12:46:53PM -0400, Matt Corallo via bitcoin-dev 
> > wrote:
> > 
> > > On 9/16/22 3:15 AM, Anthony Towns via bitcoin-dev wrote:
> > > 
> > > > As we've seen from the attempt at a CHECKTEMPLATEVERIFY activation 
> > > > earlier
> > > > in the year [0], the question of "how to successfully get soft fork
> > > > ideas from concept to deployment" doesn't really have a good answer 
> > > > today.
> > > > I strongly disagree with this.
> > 
> > Okay? "X is good" is obviously just a statement of opinion, so if you
> > want to disagree, that's obviously allowed.
> > 
> > I also kind of feel like that's the least interesting paragraph in the
> > entire email to talk further about; if you think the current answer's
> > already good, then the rest of the mail's just about (hopefully) making
> > it better, which would be worthwhile anyway?
> 
> 
> No, I think its at least a good chunk of the "statement of problem". Yes, 
> more testing is good, and
> this project is a way to get that. Cool. But implying that lack of test 
> frameworks is in any
> material way part of the lack of movement on forks in Bitcoin I think is very 
> wrong, so its worth
> pointing out, whether the particular project is useful or not is separate.
> 
> > > Going back many, many years we've had many
> > > discussions about fork process, and the parts people (historically) agreed
> > > with tend to be:
> > > (1) come up with an idea
> > > (2) socialize the idea in the technical community, see if anyone comes up
> > > with any major issues or can suggest better ideas which solve the same
> > > use-cases in cleaner ways
> > > (3) propose the concrete idea with a more well-defined strawman, socialize
> > > that, get some kind of rough consensus in the loosely-defined, subjective,
> > > "technical community" (ie just ask people and adapt to feedback until you
> > > have found some kind of average of the opinions of people you, the
> > > fork-champion, think are reasonably well-informed!).
> > > (4) okay, admittedly beyond this is a bit less defined, but we can deal 
> > > with it when we get there.
> > > Turns out, the issue today is a lack of champions following steps 1-3, we
> > > can debate what the correct answer is to step (4) once we actually have
> > > people who want to be champions who are willing to (humbly) push an idea
> > > forward towards rough agreement of the world of technical bitcoiners
> > > (without which I highly doubt you'd ever see broader-community consensus).
> > 
> > Personally, I think this is easily refuted by contradiction.
> > 
> > 1) If we did have a good answer for how to progress a soft-fork, then
> > the great consensus cleanup [0] would have made more progress over the
> > past 3.5 years
> 
> 
> No? Who is the champion for it? I haven't been. No one else is obliged to 
> take up the reins and run
> with it, that's not how open-source works. And no one has emerged who has 
> strong interest in doing
> so, and that's totally fine. It means it hasn't made any progress, but that's 
> an indication that no
> one feels strongly enough about it that its risen to the top of their 
> personal priority list so
> clearly doesn't need to make progress.
> 
> > Maybe not all of the ideas in it were unambiguously good
> > [1], but personally, I'm convinced at least some of them are, and I
> > don't think I'm alone in thinking that. Even if the excuse is that its
> > original champion wasn't humble enough, there's something wrong with
> > the process if there doesn't exist some other potential champion with
> > the right balance of humility, confidence, interest and time who could
> > have taken it over in that timeframe.
> 
> 
> No? Its not up to the community to find a champion for someone who wants a 
> fork to happen. Either
> someone thinks its a good enough idea that they step up, or no one does. If 
> no one does, then so be
> it. If the original proper (me, in this case) thought it was that important 
> then its their
> responsibility to be the champion, no one else's.
> 
> > 2) Many will argue that CTV has already done steps (1) through (3) above:
> > certainly there's been an idea, it's been socialised through giving talks,
> > having discussion forums, having research workshops [2], documenting use
> > cases use cases; there's been a concrete implementation for years now,
> > with a test network that supports the proposed feature, and new tools
> > that demonstrate some of the proposed use cases, and while alternative
> > approaches have been suggested [3], none of them have even really made
> > it to step (2), let alone step (3).
> 
> 
> I don't really see how you can make this argument seriously. Honestly, if a 
> soft-fork BIP only has
> one author on the list, then I'm not sure one can argue that step (3) has 
> really been completed, and
> maybe not even step (2).
> 
> > So that leaves a few possibilities
> > to my mind:
> 
> > * CTV should be in step (4), and its lack of definition is a problem,
> > and trying the "deal with it when we get there" approach is precisely
> > what didn't work back in April.
> > 
> > * The evaluation process is too inconclusive: it should either be
> > saying "CTV is not good enough, fix these problems", or "CTV hasn't
> > sufficiently demonstrated its value/cost, work on X next", but it
> > isn't.
> > 
> > * Parts (2) to (3) are too hard, and that's preventing alternatives
> > from making progress, which in turn is preventing people from
> > being able to decide whether CTV is the superior approach, or some
> > alternative is.
> 
> 
> I think this is most of it, but its not that they're too hard, its that 
> people are too busy. There
> seemed to be more positive feedback, for example, to Rusty's proposal, but 
> being the champion for a
> soft-fork is a full-time job for months on end, and last I checked Rusty has 
> a lightning
> implementation to maintain, which tends to be a more-than-full-time job 
> already.
> 
> To my knowledge, no one but Jeremy has made any serious attempt at being the 
> champion for a
> soft-fork since Taproot, and before that Segwit (if someone reading this who 
> contributes to Core
> already wants to, and isn't sure how to, there's lots of people who would 
> happily mentor you! I'm
> sure you can figure out who to reach out to!).
> 
> Matt
> _______________________________________________
> 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

Reply via email to