Subject: Re: [bitcoin-dev] On a new community process to specify covenants

From: Antoine Riard <[email-masked]>
Date: Fri, 16 Sep 2022 14:59:50 -0400

Hi Buck,

> First just wanted to thank you for taking the initiative to
> put this together. I think that as the community and
> ecosystem continue to grow, it's going to be an important
> part of the process to have groups like this develop. Hopefully
> they allow us to resist the "Tyranny of Structurelessness" without
> resorting to formalized governance processes and systems.

Thanks for the words. Effectively, organic WGs are likely good avenues for
the ecosystem to make steady and substantial progress during the coming
future. If there is any structure in the development of Bitcoin it's the
rich network of open, neutral and decentralized communication networks and
spaces that has been nurtured through the past decade and I hope that's a
tradition we'll keep maintaining.

> Defining a communication channel is still an open question: IRC, Slack,
Discord, Discourse, ...

I would vote against Slack. IRC is probably the best but maybe too high a
barrier to entry? Publishing logs at least would counter concerns of it
being exclusive. Maybe discord as an alternative.

I would say I really like IRC too. The strong text-based format, the lack
of avatar emoji, the low-bar to participate pseudonymously, the leveling
field for non-native speakers contrary to audio and the easiness to grab
the mics, all features valuable for such a process I think.

If IRC is still considered a technical high-bar for a standard
communication organ by many community stakeholders, discord is an
alternative.

> I understand the reason for this but I do have some concerns that
> it's not as off-topic as most of us would like. It shouldn't
> be a priority but how any of these primitives end up getting activated
> is part of the proposal itself in my opinion.
>
> I think it also became clear in some of the discussions over the past
> ~year that maybe there were more concerns than people realized about
> even the taproot activation process, whether the method used or if it
> was done too quickly. An example of where there might be
> some intersection with the WG as proposed is the question of how much
> research, security audits, etc. are "enough" before it should be
> considered for activation?

>From my understanding, how any of these primitives end up getting activated
is more a deployment methodology concern. What is more interesting is why
any of those primitives would be valuable as a Bitcoin upgrade. Beyond
proposing and refining primitives design and associated use-cases, there is
significant work to collect feedback on many dimensions and set of
criterias that matters to community stakeholders to achieve a consistent
and sound "why".

Where I believe there is an interaction between the "why" and "how" is that
during activation discussion some participant might bring new information
about shortcomings of a proposal, and as such if it's estimated relevant
could induce a step back to the "R&D" whiteboard phase, in a circular
feedback loop fashion. As those steps back are not free in terms of
community engineering resources, especially if deployment code starts to be
already disseminated across the ecosystem, I hope in the future we'll leave
reasonable time (in function of the complexity of the proposal) between
upgrade phases for grounded objections to raise.

>From my memory, about the taproot activation process it's correct that a
lot of people had discussions about producing more proof-of-work, e.g back
in 2019, LN devs were excited to PoC PTLC in the context of the structured
taproot review.
It didn't happen because it would have implied good refactoring works in
all implementations for that to happen and coordination with cryptographic
libraries dependencies.

In fact, it's likely the difficulty target for consensus upgrades to be
dynamic with the complexity of the ecosystem and stakes at risk increasing
modulo the amount of Bitcoin engineering resources dedicated.

> Maybe as a way to keep these topics separate, it would make sense
> for activation to have its own WG. As norms develop around this one,
> they could inform creating a separate space focused on forwarding
> research and discussion around how to introduce upgrades to bitcoin.

I think it could be interesting for activation to have its own WG. I
wouldn't call myself super knowledgeable in upgrades activation. I believe
it could be worthy for such WG to do the archival work of documentation and
referencing well all
the previous upgrades discussions, the set of signals and data points that
has been deemed as valuable by the community, etc.

> In general it would be nice to have multiple of these groups
> happening at once, and finding a way that they can operate separate
> from centralized companies. To my mind, there's no good reason why
> a supposedly decentralized protocol should have to be focusing on only
> one set of protocol advancements at a time. The linear way that
> discussions post-Taproot activation took shape ("What do you think the
> next bitcoin softfork should be?") is a sign of weakness in my opinion.
> Definitely a big red flag that we should be concerned with.

I agree with the sentiment, that it would be worthy to have multiple groups
happening at once, in a asynchronous and decentralized fashion, neutral
from centralized companies or cultural mobs. However, on the linearity of
the discussions post-Taproot, from my perspective the reason doesn't have
to be found in any community stakeholder bottlenecking or whatever but
rather in the limited subset of experienced Bitcoin protocol engineers we
have across the ecosystem. From quick mental maths, the number of active
folks with more than 4/5 years of experience and decent practical knowledge
of the critical Bitcoin subsystems to be able to work on consensus upgrades
is likely to be evaluated to two dozens. No more. And they're already the
most busy of the ecosystem: maintaining the critical pieces of code,
catching the bugs during reviews, doing active security research, caring
about the Q&A & release process, sharing back the knowledge towards new
devs...

Of course, everyone of them as the choice to prioritize consensus upgrades
over other tasks, but in the long-term it's likely at the detriment of
outcome valued by the community as a whole (e.g hardening the base-layer
P2P stack against high grade attacks, solving Lightning numerous liquidity
issues, etc).

Real weakness is the fact that as a community we're bleeding too much
seasoned protocol engineers for XYZ reasons.

> * it seems like there might be some opportunities to work with
> bipbounty.org which grew out of the organic bounty donations that
> were made towards finding CTV vulnerabilities. For example,
> if the group develops specific, achievable research goals (building
> out use cases, researching vulnerabilities or limitations, etc.),
> bipbounty.org could help support these efforts in a more decentralized
> way by diversifying funding.

First and foremost, thanks to everyone dedicating resources (engineering,
financial, operational, legal, ...) towards making Bitcoin stronger. About
bipbounty.org, I would like to observe the neutrality of the
decision-making process in the fund allocation could be better, especially
in terms of high-impact and sensitive subjects like consensus upgrades. It
sounds like the unique team member is also the technical author of the only
bounty displayed so far... Academics, law and medecine have centuries-long
traditions of board or peer-to-peer decision-making structure to allocate
scientific and engineering ressources with minimal guarantees of neutrality.

I think it would be valuable for this effort to structure for the
long-term, it would be great to have more community people dedicating their
own personal time on doing the hard operational and legal work to make
things sustainable. I would say there is definitively a need for more
Bitcoin researchers working on multiple-years scale "moonshots" projects.

> * Any thoughts on starting to commit to an in-person meetup to happen
> ~6 months - 1 year after the start of the regular online meetings?
> That should be plenty of time for people to plan and formalize
> a location and it seems like other IRL dev meetups have been
> very productive in terms of knowledge sharing and setting priorities.
> An in-person meetup would give a nice goal to work towards and a way
> to measure progress.

Yeah, I think in-person meetups would be very valuable and personally I've
always appreciated the knowledge sharing, priorities setting and
productivity boost of all the Bitcoin engineering meetings I've had the
opportunity to attend. 6 months - 1 year after the start of the regular
online meetings sounds like a good timeline, there is a preliminary step of
folks flooding and exchanging on their expectations, taking the process
habits and doing seminal work.

Best,
Antoine

Le dim. 11 sept. 2022 à 22:47, Buck O Perley via bitcoin-dev <
[email-masked]> a écrit :

> Hi Antoine,
>
> First just wanted to thank you for taking the initiative to
> put this together. I think that as the community and
> ecosystem continue to grow, it's going to be an important
> part of the process to have groups like this develop. Hopefully
> they allow us to resist the "Tyranny of Structurelessness" without
> resorting to formalized governance processes and systems.
>
> > Defining a communication channel is still an open question: IRC, Slack,
> Discord, Discourse, ...
>
> I would vote against Slack. IRC is probably the best but maybe too
> high a barrier to entry? Publishing logs at least would counter
> concerns of it being exclusive. Maybe discord as an alternative.
>
> > About the starting point for regular meetings, I think the good timing is
> somewhere in November, after the upcoming cycle of Bitcoin conferences,
>
> +1
>
> > softfork activation discussions will be considered as
> off-topic and discouraged. This is first and foremost a long-term R&D
> effort.
>
> I understand the reason for this but I do have some concerns that
> it's not as off-topic as most of us would like. It shouldn't
> be a priority but how any of these primitives end up getting activated
> is part of the proposal itself in my opinion.
>
> I think it also became clear in some of the discussions over the past
> ~year that maybe there were more concerns than people realized about
> even the taproot activation process, whether the method used or if it
> was done too quickly. An example of where there might be
> some intersection with the WG as proposed is the question of how much
> research, security audits, etc. are "enough" before it should be
> considered for activation?
>
> Maybe as a way to keep these topics separate, it would make sense
> for activation to have its own WG. As norms develop around this one,
> they could inform creating a separate space focused on forwarding
> research and discussion around how to introduce upgrades to bitcoin.
>
> In general it would be nice to have multiple of these groups
> happening at once, and finding a way that they can operate separate
> from centralized companies. To my mind, there's no good reason why
> a supposedly decentralized protocol should have to be focusing on only
> one set of protocol advancements at a time. The linear way that
> discussions post-Taproot activation took shape ("What do you think the
> next bitcoin softfork should be?") is a sign of weakness in my opinion.
> Definitely a big red flag that we should be concerned with.
>
> Couple other comments from the proposal/repo:
>
> * it seems like there might be some opportunities to work with
> bipbounty.org which grew out of the organic bounty donations that
> were made towards finding CTV vulnerabilities. For example,
> if the group develops specific, achievable research goals (building
> out use cases, researching vulnerabilities or limitations, etc.),
> bipbounty.org could help support these efforts in a more decentralized
> way by diversifying funding.
>
> * Any thoughts on starting to commit to an in-person meetup to happen
> ~6 months - 1 year after the start of the regular online meetings?
> That should be plenty of time for people to plan and formalize
> a location and it seems like other IRL dev meetups have been
> very productive in terms of knowledge sharing and setting priorities.
> An in-person meetup would give a nice goal to work towards and a way
> to measure progress.
> _______________________________________________
> bitcoin-dev mailing list
> [email-masked]
> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
>