Return-Path: Received: from smtp4.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by lists.linuxfoundation.org (Postfix) with ESMTP id 169E6C0032 for ; Tue, 18 Jul 2023 20:19:04 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id D66A041764 for ; Tue, 18 Jul 2023 20:19:03 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org D66A041764 Authentication-Results: smtp4.osuosl.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20221208 header.b=N0TH+jYF X-Virus-Scanned: amavisd-new at osuosl.org X-Spam-Flag: NO X-Spam-Score: -2.098 X-Spam-Level: X-Spam-Status: No, score=-2.098 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Ztru8VdzLSGz for ; Tue, 18 Jul 2023 20:19:01 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org C462A4175E Received: from mail-io1-xd2a.google.com (mail-io1-xd2a.google.com [IPv6:2607:f8b0:4864:20::d2a]) by smtp4.osuosl.org (Postfix) with ESMTPS id C462A4175E for ; Tue, 18 Jul 2023 20:19:01 +0000 (UTC) Received: by mail-io1-xd2a.google.com with SMTP id ca18e2360f4ac-783698a37beso355893639f.0 for ; Tue, 18 Jul 2023 13:19:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1689711541; x=1692303541; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=Yx5ebx0OxN9CW/7KmYt7VHgLYRqEa/anb3PKtwwzats=; b=N0TH+jYFPz8h3SJkGHlfmYOebyEog7cNGVrNRsnjmiWYoSYDXXafH/ttXgxBHCKRi0 0yZM5uscMhjh3gznSBScJu9Fawcb0TTgutKWd5KtcLjLQzVIaL5XvGXJCDQojEZYQQJB kbcJTbZjssp7ngxq2XcFZtnxS2HcgEuAdOZCjXblj1DPggOADE1OlmURpobtcioCyZ3w njMPbfmztFkctXDp1TO7rhSiTheSNElRdFHYCAd4LBvO8J1ZhIjDaxcuPKEprzJFKkkR EsBFKFvDqKbevL59AyNYfToW1nQdAOPiMDEIbpEVuDcfkM5SD9my8btzo5hDsqSK+TNx egBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1689711541; x=1692303541; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=Yx5ebx0OxN9CW/7KmYt7VHgLYRqEa/anb3PKtwwzats=; b=eEXGYLTqWgVxPrsWX6Sh/B7QrxXapal3Q8cWKkSO+nvCYBBkrmNhQvk4kGZlccwJ2p MXdKG8CORh5x25GBkPkIkJ4RAJ04hwN+dnXEL5wuD6foWqQaIGCBQzzgCjFthdp4ASAu QEwg6z8a6JX7L10eWalWfsXtusdqjw5QEPoWsVaGzs25TV7QDDz3+Cl4GpRRHn5skATQ dGURKfndsECYnQmGynZOgDU7O9W2yuAcy6pyUy21pc09Al4Wk+DWlBqWb/KBM02BH5NL sn0fEw7zwh/3v8B+vSe31gNeBR2+pSEXEjRogSkSvDfKDhtA7ZKsgrqo2E2UZ1lWFJNS glcw== X-Gm-Message-State: ABy/qLZSgpXBVX2WSYcf57BxpwNfMA1y/vvIBzhrasKc5mUIIuBTEgUz YydJdn22H8TLgYPuc3A69iUSAVIMRayURBRngJJRBz7Ufrw= X-Google-Smtp-Source: APBJJlEdXO3PFf36DVlBaRVm64EfGjXv79iakCfpairfI83SVDfio0BwFRMCXAByrdB5SYlnPew5IT3LXE8LR4XqfBo= X-Received: by 2002:a05:6602:218a:b0:787:1557:3834 with SMTP id b10-20020a056602218a00b0078715573834mr4253660iob.20.1689711540422; Tue, 18 Jul 2023 13:19:00 -0700 (PDT) MIME-Version: 1.0 From: Antoine Riard Date: Tue, 18 Jul 2023 21:18:49 +0100 Message-ID: To: Bitcoin Protocol Discussion Content-Type: multipart/alternative; boundary="00000000000023ccbb0600c8a000" X-Mailman-Approved-At: Tue, 18 Jul 2023 21:40:23 +0000 Subject: [bitcoin-dev] On the experiment of the Bitcoin Contracting Primitives WG and marking this community process "up for grabs" X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Bitcoin Protocol Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jul 2023 20:19:04 -0000 --00000000000023ccbb0600c8a000 Content-Type: text/plain; charset="UTF-8" Hi list, Last year amid the failure of the CTV speedy trial activation and intense conversations about a rainbow of covenant proposals, I introduced the idea of a new community process to specify covenants [0]. This post is to resume the experiment so far and officially mark the process maintenance as "up for grabs", as I won't actively pursue it further (after wavering on such a decision a bit during May / June). Few of the goals announced at that time were to build a consistent framework to evaluate covenant proposals, see the common grounds between proposals if they could be composed or combined by their authors, open the consensus changes development process beyond the historical boundaries of Bitcoin Core and maintain high-quality technical archive as a consensus discussions have spawned half a decade from intellectual conception to activation in average (at least for segwit, schnorr, taproot). Such effort was a speak-by-the-act answer to the issues in consensus development changes pointed out by Jeremy Rubin in April of last year [1]: namely the lack of a "codified checklist" for consensus changes, that "consensus is memoryless" and "bitcoin core is not bitcoin" (independently of the technical concerns as I have as limited or non-adequate primitive for vaults / payment pools I expressed during the same time). Other complementary initiatives have been undertaken during the same period, AJ with the bitcoin-inquisition fork where the community of developers and contracting primitives of researchers on a consensus-enabled fork of core [2]. And Dave Harding with the careful archiving of all covenant proposals under the Optech umbrella [3]. About the Bitcoin Contracting Primitives WG, a Github repository was started and maintained to archive and document all the primitives (apo, tluv, ctv, the taproot annex, sighash_group, CSFS, cat, txhash, evict, check_output_covenant_verify, inherited ids, anyamount, singletons, op_vault) and the corresponding protocols (payment pools, vaults, drivechains, trust-minimized mining pools payouts). We had a total of 6 monthly meetings on the Libera chat #bitcoin-contracting-primitives-wg for a number of more than 20 individual attendees representing most of the parts of the community. I think (missing march logs). Numerous in-depth discussions did happen on the repository and on the channel on things like "merkelized all the things" or "payment pools for miners payoffs". As I've been busy on the Lightning-side and other Bitcoin projects, I've not run an online meeting since the month of April, while still having a bunch of fruitful technical discussions with folks involved in the effort at conferences and elsewhere. I launched the effort as an experiment with the soft commitment to dedicate 20% of my time on it, after few successful sessions I think such a process has an interest of its own, however it comes with direct competition of my time to work on Lightning robustness. Getting my hands dirty on low-level LDK development recently made me realize we still have years of titan work to get a secure and reliable Lightning Network. As such, between extended covenant capabilities for advanced contracts coming as a reality for Bitcoin _or_ LN working smoothly at scale with 50-100M UTXO-sharing users on it during the next 5-7 years cycle, I think the latter goal is more critical for Bitcoin existential survival, and where on a personal title I'll allocate the best of my time and energy (and somehow it match the "slow" technical activity on bitcoin-inquisition mostly done by Lightning hands). This is my personal conclusion only on the state of Bitcoin technological momentum, and this is quite tainted by my deep background in Lightning development. If you've been working on covenant changes proposals, please don't take it as a discouragement, I think Taproot (privacy-preserving script policies behind the taproot tree branches) and Schnorr (for native multi-sig) soft forks have shown how it can improve the building of self-custody solutions by one or two order of magnitude, and small incremental changes might be good enough to have a lower technical consensus bar. On my side, I'll pursue pure R&D works on CoinPool, notably coming with better solutions with the interactivity issue and mass-compression of withdrawal and design exotic advanced Bitcoin contracts based on the taproot annex, though more in a "l'art pour l'art" approach for the time being [4]. Additionally, I might start to submit an in-depth security review of consensus changes under pseudonyms, it has already been done in the past and somehow it's good practice in terms of "message neutrality" [5]. If folks wanna experiment in terms of payment pools deployment, Greg Maxwell's old joinpool can be used today (and somehow it's worthy of its own as a net advance for coinjoins). I'll honestly acknowledge towards the community, I might have overpromised with the kickstart of this new process aiming to move the frontlines in matters of Bitcoin consensus changes development process. On the other hand, I think enough sessions of the working group have been runned and enough marks of technical interests have been collected to demonstrate the minimal value of such a process, so I would estimate my open-source balance sheet towards the community to be in good standing ? (open-minded question). I don't think Bitcoin fundamentally lacks compelling technical proposals to advance the capabilities of Bitcoin Script today, nor the crowd of seasoned and smart protocol developers to evaluate mature proposals end-to-end and on multiple dimensions with a spirit of independence. Rather, I believe what Bitcoin is lacking is a small crowd of technical historians and archivist doing the work of assessing, collecting and preserving consensus changes proposals and QA devs to ensure any consensus change proposals has world-class battle-ground testing before to be considered for deployment, ideally with the best standards of Bitcoin decentralization and FOSS neutrality [6]. If you would like to pursue the maintenance and nurturing of the Bitcoin Contracting Primitives WG (or the bitcoin-inquisition fork or collaborate with Optech to organize industry-wise workshop on covenants at the image of what has been done in 2019 for Taproot), that you're willing to show proof-of-work and you estimate that operational ground, legal information or financial resources will anchor your individual work on the long-term, don't hesitate to reach out, I'll see what I can do with a disinterested mind [7]. With humility, Antoine [0] https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2022-July/020763.html [1] https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2022-April/020233.html [2] https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2022-September/020921.html [3] https://github.com/bitcoinops/bitcoinops.github.io/pull/806 [4] Version 0.2 of the CoinPool whitepaper addressing most of the remaining "Big Problems" is still pending on my visit to co-author Gleb Naumenko in Ukraine, which has been postponed few times in light of the conflict operational evolutions. [5] See https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2020-February/017614.html. For the philosophical reasons of doing so, I invite you to read Foucault's famous essay "Le philosophe masque". [6] Somehow I come to share Jeremy's thesis's "Product management is not "my Job" it's yours" in matters of consensus changes. I believe we might be past the technical complexity threshold where even simple consensus changes can be conducted from A to Z as a one man job or even by a group of 2/3 elite devs. [7] I've been reached out multiple times and consistently by R&D non-profits, plebs whales and VC firms who were interested to commit resources to advance softforks and covenants in the Bitcoin space, no doubt when you're reliable and with a track record, folks are ready to offer you opportunities to work full-time on consensus changes. --00000000000023ccbb0600c8a000 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi list,

Last year amid the failure of = the CTV speedy trial activation and intense conversations about a rainbow o= f covenant proposals, I introduced the idea of a new community process to s= pecify covenants [0]. This post is to resume the experiment so far and offi= cially mark the process maintenance as "up for grabs", as I won&#= 39;t actively pursue it further (after wavering=C2=A0on such a decision a b= it during May / June).

Few of the goals announced = at that time were to build a consistent framework to evaluate covenant prop= osals, see the common grounds between proposals if they could be composed o= r combined=C2=A0by their authors, open the consensus=C2=A0 changes developm= ent process beyond the historical boundaries of Bitcoin Core and maintain= =C2=A0high-quality technical archive as a consensus discussions have spawne= d half a decade from intellectual conception to activation in average (at l= east for segwit, schnorr, taproot).

Such effort wa= s a speak-by-the-act answer to the issues in consensus=C2=A0development cha= nges pointed out by Jeremy Rubin in April of last year [1]: namely the lack= of a "codified checklist" for consensus changes, that "cons= ensus is memoryless" and "bitcoin core is not bitcoin" (inde= pendently of the technical concerns as I have as limited or non-adequate pr= imitive for vaults / payment pools I expressed during the same time). Other= complementary initiatives have been undertaken during the same period, AJ = with the bitcoin-inquisition fork where the community of developers and con= tracting primitives of researchers on a consensus-enabled fork of core [2].= And Dave Harding with the careful archiving of all covenant proposals unde= r the Optech umbrella [3].

About the Bitcoin Contr= acting Primitives WG, a Github repository was started and maintained to arc= hive and document all the primitives (apo, tluv, ctv, the taproot annex, si= ghash_group, CSFS, cat, txhash, evict, check_output_covenant_verify, inheri= ted ids, anyamount, singletons, op_vault) and the corresponding protocols (= payment pools, vaults, drivechains, trust-minimized mining pools payouts). = We had a total of 6 monthly meetings on the Libera chat #bitcoin-contractin= g-primitives-wg for a number of more than 20 individual attendees represent= ing most of the parts of the community. I think (missing march logs). Numer= ous in-depth discussions did happen on the repository and on the channel on= things like "merkelized all the things" or "payment pools f= or miners payoffs".

As I've been busy on = the Lightning-side and other Bitcoin projects, I've not run an online m= eeting since the month of April, while still having a bunch of fruitful tec= hnical discussions with folks involved in the effort at conferences and els= ewhere. I launched the effort as an experiment with the soft commitment to = dedicate 20% of my time on it, after few successful sessions I think such a= process has an interest of its own, however it comes with direct competiti= on of my time to work on Lightning robustness. Getting my hands dirty on lo= w-level LDK development recently made me realize we still have years of tit= an work to get a secure and reliable Lightning Network.

As such, between extended covenant capabilities for advanced contract= s coming as a reality for Bitcoin _or_ LN working smoothly at scale with 50= -100M UTXO-sharing users on it during the next 5-7 years cycle, I think the= latter goal is more critical for Bitcoin existential survival, and where o= n a personal title I'll allocate the best of my time and energy (and so= mehow it match the "slow" technical activity on bitcoin-inquisiti= on mostly done by Lightning hands).

This is my per= sonal conclusion only on the state of Bitcoin technological momentum, and t= his is quite tainted by my deep background in Lightning development. If you= 've been working on covenant changes proposals, please don't take i= t as a discouragement, I think Taproot (privacy-preserving script policies = behind the taproot tree branches) and Schnorr (for native multi-sig) soft f= orks have shown how it can improve the building of self-custody solutions b= y one or two order of magnitude, and small incremental changes might be goo= d enough to have a lower technical consensus bar.

= On my side, I'll pursue pure R&D works on CoinPool, notably coming = with better solutions with the interactivity issue and mass-compression of = withdrawal and design exotic advanced Bitcoin contracts based on the taproo= t annex, though more in a "l'art pour l'art" approach for= the time being [4]. Additionally, I might start to submit an in-depth secu= rity review of consensus changes under pseudonyms, it has already been done= in the past and somehow it's good practice in terms of "message n= eutrality" [5]. If folks wanna experiment in terms of payment pools de= ployment, Greg Maxwell's old joinpool can be used today (and somehow it= 's worthy of its own as a net advance for coinjoins).

I'll honestly acknowledge towards the community, I might have o= verpromised with the kickstart of this new process aiming to move the front= lines in matters of Bitcoin consensus changes development process. On the o= ther hand, I think enough sessions of the working group have been runned an= d enough marks of technical interests have been collected to demonstrate th= e minimal value of such a process, so I would estimate my open-source balan= ce sheet towards the community to be in good standing ? (open-minded questi= on).

I don't think Bitcoin fundamentally lacks= compelling technical proposals to advance the capabilities of Bitcoin Scri= pt today, nor the crowd of seasoned and smart protocol developers to evalua= te mature proposals end-to-end and on multiple dimensions with a spirit of = independence. Rather, I believe what Bitcoin is lacking is a small crowd of= technical historians and archivist doing the work of assessing, collecting= and preserving consensus changes proposals and QA devs to ensure any conse= nsus change proposals has world-class battle-ground testing before to be co= nsidered for deployment, ideally with the best standards of Bitcoin decentr= alization and FOSS neutrality [6].

If you would li= ke to pursue the maintenance and nurturing of the Bitcoin Contracting Primi= tives WG (or the bitcoin-inquisition fork or collaborate with Optech to org= anize industry-wise workshop on covenants at the image of what has been don= e in 2019 for Taproot), that you're willing to show proof-of-work and y= ou estimate that operational ground, legal information or financial resourc= es will anchor your individual work on the long-term, don't hesitate to= reach out, I'll see what I can do with a disinterested mind [7].
=

With humility,
Antoine

[0]=C2=A0https://lists.linuxfoundation.org/pipermail/bitc= oin-dev/2022-July/020763.html
[4] Ver= sion 0.2 of the CoinPool whitepaper addressing most of the remaining "= Big Problems" is still pending on my visit to co-author Gleb Naumenko = in Ukraine, which has been postponed few times in light of the conflict ope= rational evolutions.
[5] See=C2=A0https://list= s.linuxfoundation.org/pipermail/bitcoin-dev/2020-February/017614.html. = For the philosophical reasons of doing so, I invite you to read Foucault= 9;s famous essay "Le philosophe masque".
[6] Somehow I = come to share Jeremy's thesis's "Product management is not &qu= ot;my Job" it's yours" in matters of consensus changes. I bel= ieve we might be past the technical complexity threshold where even simple = consensus changes can be conducted from A to Z as a one man job or even by = a group of 2/3 elite devs.
[7] I've been reached out multiple= times and consistently by R&D non-profits, plebs whales and VC firms w= ho were interested to commit resources=C2=A0to advance softforks and covena= nts in the Bitcoin space, no doubt when you're reliable and with a trac= k record, folks are ready to offer you opportunities to work full-time on c= onsensus changes.
--00000000000023ccbb0600c8a000--