summaryrefslogtreecommitdiff
path: root/7a/8ce1d56b29df4e7fbe3df3460edb28954530c9
blob: e92c703a580ba9c046e46618808556e24730ce29 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
Return-Path: <michaelfolkson@protonmail.com>
Received: from smtp4.osuosl.org (smtp4.osuosl.org [IPv6:2605:bc80:3010::137])
 by lists.linuxfoundation.org (Postfix) with ESMTP id 3EAFBC002A
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Wed, 19 Apr 2023 13:33:47 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by smtp4.osuosl.org (Postfix) with ESMTP id 184F841853
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Wed, 19 Apr 2023 13:33:47 +0000 (UTC)
DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org 184F841853
Authentication-Results: smtp4.osuosl.org;
 dkim=pass (2048-bit key) header.d=protonmail.com header.i=@protonmail.com
 header.a=rsa-sha256 header.s=protonmail3 header.b=B+dtk3ja
X-Virus-Scanned: amavisd-new at osuosl.org
X-Spam-Flag: NO
X-Spam-Score: -2.102
X-Spam-Level: 
X-Spam-Status: No, score=-2.102 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,
 RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-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 GTqq3wJU-UNs
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Wed, 19 Apr 2023 13:33:45 +0000 (UTC)
X-Greylist: domain auto-whitelisted by SQLgrey-1.8.0
DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org BA121417D5
Received: from mail-4316.protonmail.ch (mail-4316.protonmail.ch [185.70.43.16])
 by smtp4.osuosl.org (Postfix) with ESMTPS id BA121417D5
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Wed, 19 Apr 2023 13:33:44 +0000 (UTC)
Date: Wed, 19 Apr 2023 13:33:35 +0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;
 s=protonmail3; t=1681911222; x=1682170422;
 bh=bdq/oIHH9EvcxA8lRf/PRc9OGsD86X0yuVkD6LhQlQM=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector;
 b=B+dtk3jaXXc2UD7WpRbBdD6aEk5+sqanIamqDkbITH8rJNnTNxfnusbqbR0KKHoQ0
 0aXGFGdhBP3A4YHdjjKf1s5IWN8IPkJPyxpYKkJDRI2pj+TYNKg+M58ICBPWee3OZF
 7rsM6yBI5ohW0enFOU3J4evAllYbkNM1T2f85b/L6Fa+K2Gxh1zkLwUjz1hpOy2Im5
 uhLn2Bav/rzk0rX1+8giviKwBjjah2gffZi/X9TIJRHfxdO7AMiBWVhJO5voY7o5jI
 +eC8pcfO0ZSyntfzTVSS2Ab5zYCGxYLMr2NDpo0Iytirr5prbyUZGEXSfxZ4iKmM8p
 fVLu9/2SdYi0g==
To: alicexbt <alicexbt@protonmail.com>
From: Michael Folkson <michaelfolkson@protonmail.com>
Message-ID: <nA4t0JwOs8yCz3Io6CHunt4VEVKRcmjhYz8Lt-v0O0upC0NT4G7VGN6OcdJfp4pw2eqZEmipXxhLLgJ5PUqbF9k_r41MTtdc9OCZF6YdgRQ=@protonmail.com>
In-Reply-To: <BAQJaPAUBbUwqKc5cf1jnO5LYij-gRKMrWHtc_wog7QUUrjxPwzXnIoegql7xsPhpUJXpRdBMwxdmlBt75k8aRT1NJVGLuhH7ZwpWmW8PU8=@protonmail.com>
References: <uuq_VbxJp50_-m4ufKpEhJOknhZ0pvK8ioDabCkxtDjBYauO3gLKrj2O2tjS6YIFOnJLyaZg6-LENzom1DyQQ3TyMLIIaGz5IRrzrKB8gRs=@protonmail.com>
 <BAQJaPAUBbUwqKc5cf1jnO5LYij-gRKMrWHtc_wog7QUUrjxPwzXnIoegql7xsPhpUJXpRdBMwxdmlBt75k8aRT1NJVGLuhH7ZwpWmW8PU8=@protonmail.com>
Feedback-ID: 27732268:user:proton
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Mailman-Approved-At: Wed, 19 Apr 2023 13:48:43 +0000
Cc: Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org>
Subject: Re: [bitcoin-dev] Bitcoin Core maintainers and communication on
	merge decisions
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org>
List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>, 
 <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe>
List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/>
List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org>
List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help>
List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>, 
 <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe>
X-List-Received-Date: Wed, 19 Apr 2023 13:33:47 -0000

Hi alicexbt

> I don't think commentary is required for each pull request that gets merg=
ed with enough reviews, ACKs and no controversy.

The problem is defining what is "enough". "Enough" is determined by the qua=
lity of the review, the expertise of the reviewer(s), the complexity of the=
 pull request and most importantly what risks a merge of the pull request p=
oses. When there is zero communication on merge decisions (both merging and=
 not merging over a long period of time) it creates frustration and worse v=
acuums and soft fork activation chaos. It is a complete black box. The vast=
 majority of merge decisions are uncontroversial but it would still be nice=
 to have a comment saying something like:

"This pull request only has 2 ACKs but it is low risk, relatively simple an=
d is unlikely to be reviewed by anybody else in the near term"

"This pull request is a consensus change, extremely high risk and is unlike=
ly to be merged in the near term"

On the rare occasions when merge decisions are controversial communication =
becomes a lot more important. If some maintainers aren't responsive on IRC =
and refuse to discuss merge decisions what can we expect in future? We wake=
 up one day, a contentious consensus change has been merged with little rev=
iew in advance of a release window and the maintainer won't discuss why the=
y have merged it. This isn't a toy anymore, it is supporting hundreds of bi=
llions of dollars of value and could end up supporting a lot more. It is su=
rely completely unreasonable to let maintainers merge or not merge whatever=
 they like with no explanation and no willingness to discuss their merge de=
cisions.

> So I'll add that if you wish to have more decentralization in Bitcoin Cor=
e funding, you can start by creating a nonprofit, gathering donations, and =
funding somebody who works on Bitcoin Core."=20

As I responded on the pull request if any long term contributor from this a=
lternative nonprofit is blocked from being a maintainer and current maintai=
ners refuse to discuss merge decisions it is irrelevant. To contribute you =
need a maintainer to merge your pull request(s) and to spend your review ti=
me wisely you need to know what pull request(s) could viably be merged by a=
 maintainer. Otherwise you're just wasting your time. We not only have opac=
ity on merge decisions for normal pull requests (e.g. code) we also now hav=
e opacity on decisions for the addition of new maintainers. I was always un=
der the impression that any long term contributor who demonstrated over tim=
e that they were sufficiently competent, qualified and able to contribute b=
oth through opening pull requests and reviewing other people's pull request=
s could become a maintainer. To me and many others (until it was blocked by=
 two maintainers for 5 months) Vasil met this criteria. This not only impac=
ts Vasil's and others' commitment to the project but it impacts what pull r=
equests are ultimately reviewed and merged. What is the point of spending t=
ime opening or reviewing a pull request if the current maintainers won't lo=
ok at it or are unqualified to review it and hence won't merge it?

Gloria's advice effectively boils down to spend months setting up a non-pro=
fit, spend years becoming a long term contributor to the project and then y=
ou can have the honor of being blocked from becoming a maintainer and have =
your contributions stunted by the current maintainers with no recourse or a=
bility to discuss their merge decisions. So yeah thanks for repeating that =
advice but I'm sure most would rather pass and do something else.

Thanks
Michael

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


------- Original Message -------
On Wednesday, April 19th, 2023 at 13:24, alicexbt <alicexbt@protonmail.com>=
 wrote:


> Hi Michael,
>=20
> I was initially sad about the politics in Vasil's pull request, written a=
bout it and also tried to document the process. Still think he deserves to =
be a maintainer. Although I have some counter arguments:
>=20
> > Maintainers merge a pull request and provide no commentary on why they=
=E2=80=99ve merged it.
>=20
>=20
> I don't think commentary is required for each pull request that gets merg=
ed with enough reviews, ACKs and no controversy.
>=20
> > Maintainers leave a pull request with many ACKs and few (if any) NACKs =
for months and provide no commentary on why they haven't merged it
>=20
>=20
> This could be considered normal in pull requests that involve code change=
s.
>=20
> > The difference between say previous maintainers like Wladimir and some =
of the current maintainers is that previous maintainers were extremely resp=
onsive on IRC.
>=20
>=20
> Unfair to expect every human to behave the same or work similarly. Someti=
mes the unresponsiveness could be to avoid controversies and heated debates=
 that go off-topic.
>=20
> > One farcical recent example 0 was the pull request to add Vasil Dimov a=
s a maintainer where despite many ACKs from other maintainers and other lon=
g term contributors two maintainers (fanquake and Gloria) refused to discus=
s it on the pull request or on IRC. It took almost 5 months for Gloria to c=
omment on the pull request despite many requests from me on the PR and on I=
RC. I even requested that they attend the weekly Core Dev IRC meeting to di=
scuss it which they didn=E2=80=99t attend.
>=20
>=20
> - Maintainers should be free to avoid involvement in a pull request. As l=
ong as a subset of maintainers have an opinion on the pull request, things =
should be fine.
> - I agree with Gloria's comment: "I had not NACKed this either because my=
 opinion could change over time, NACKs are sometimes needlessly interpreted=
 as personal attacks, and Brink has been antagonized on Twitter each time m=
ultiple grantees have similar opinions about this. So I'll add that if you =
wish to have more decentralization in Bitcoin Core funding, you can start b=
y creating a nonprofit, gathering donations, and funding somebody who works=
 on Bitcoin Core." Last part of this comment also solves the problem shared=
 in other thread related to new bitcoin implementation. Brink needs some co=
mpetition and bitcoin core needs more reviewers.
> - I also agree with Andrew's comment: "frankly, I think opinions aren't b=
eing shared because of potential backlash from aggressive users such as you=
rself and bytes1440000"
>=20
> > Maintainers and long term contributors (if they commented at all) were =
gently enthusiastic (Concept ACKing etc) without ACKing that it was ready t=
o merge. A long term observer of the Core repo would have known that it was=
n=E2=80=99t ready to merge or ready to attempt to activate (especially give=
n it was a consensus change) but a casual observer would have only seen Con=
cept ACKs and ACKs with 3 stray NACKs. Many of these casual observers infla=
ted the numbers on the utxos.org site 4 signalling support for a soft fork =
activation attempt.
>=20
>=20
> - I don't see anything wrong with sharing honest opinion if someone agree=
s with the concept. It does not make a pull request ready to get merged.
> - utxos.org is an external site maintained by Jeremy with opinions on BIP=
 119. Everyone is free to maintain such lists and I think you had also crea=
ted one as GitHub gist.
>=20
> > I will probably write about bitcoin-inquisition/default signet in a fut=
ure email as I do think the perception that it is =E2=80=9Cthe one and only=
=E2=80=9D staging ground for consensus changes is dangerous 6 if the mainta=
iner(s) on that project have the same inclinations as a subset of the Core =
maintainers.
>=20
>=20
> This perception (if exists) can be killed by creating a custom signet, ma=
intaining it differently, get more reviews, testing and share details with =
community regularly.
>=20
> /dev/fd0
> floppy disk guy
>=20
> 0: https://github.com/bitcoin/bitcoin/pull/25871#issuecomment-1381654564
> 1: https://bitcoin-irc.chaincode.com/bitcoin-core-dev/2023-01-12#883748
>=20
>=20
> Sent with Proton Mail secure email.
>=20
> ------- Original Message -------
> On Tuesday, April 18th, 2023 at 6:10 PM, Michael Folkson via bitcoin-dev =
bitcoin-dev@lists.linuxfoundation.org wrote:
>=20
>=20
>=20
> > Communication has been a challenge on Bitcoin Core for what I can tell =
the entire history of the project. Maintainers merge a pull request and pro=
vide no commentary on why they=E2=80=99ve merged it. Maintainers leave a pu=
ll request with many ACKs and few (if any) NACKs for months and provide no =
commentary on why they haven't merged it. I can only speculate on why and i=
t probably depends on the individual maintainer. Sometimes it will be poor =
communication skills, sometimes it will be a desire to avoid accountability=
, sometimes it will be fear of unreasonable and spiteful legal action if th=
ey mistakenly merge a pull request that ends up containing a bug. But searc=
h through the pull requests on Bitcoin Core and you will rarely see a ratio=
nale for a merge decision. The difference between say previous maintainers =
like Wladimir and some of the current maintainers is that previous maintain=
ers were extremely responsive on IRC. If you disagreed with a merge decisio=
n or thought it had been merged prematurely they would be happy to discuss =
it on IRC. In present times at least a subset of the current maintainers ar=
e not responsive on IRC and will refuse to discuss a merge decision. One fa=
rcical recent example 0 was the pull request to add Vasil Dimov as a mainta=
iner where despite many ACKs from other maintainers and other long term con=
tributors two maintainers (fanquake and Gloria) refused to discuss it on th=
e pull request or on IRC. It took almost 5 months for Gloria to comment on =
the pull request despite many requests from me on the PR and on IRC. I even=
 requested that they attend the weekly Core Dev IRC meeting to discuss it w=
hich they didn=E2=80=99t attend.
> >=20
> > A pull request to add a maintainer isn=E2=80=99t a normal pull request.=
 Generally pull requests contain a lot more lines of code than a single lin=
e adding a trusted key. Not merging a pull request for a long period of tim=
e can be extremely frustrating for a pull request author especially when ma=
intainers and long term contributors don=E2=80=99t comment on the pull requ=
est and the pull request is stuck in =E2=80=9Crebase hell=E2=80=9D. Clearly=
 it is the lesser evil when compared to merging a harmful or bug ridden pul=
l request but poor non-existent communication is not the only way to preven=
t this. Indeed it creates as many problems as it solves.
> >=20
> > Another farcical recent(ish) example was the CTV pull request 1 that ul=
timately led to a contentious soft fork activation attempt that was called =
off at the last minute. If you look at the comments on the pull request the=
re were 3 individuals (including myself) who NACKed the pull request and I =
think it is fair to say that none of us would be considered long term contr=
ibutors to Bitcoin Core. I have criticised Jeremy Rubin multiple times for =
continuing to pursue a soft fork activation attempt when it was clear it wa=
s contentious 3 but if you look at the pull request comments it certainly i=
sn=E2=80=99t clear it was. Maintainers and long term contributors (if they =
commented at all) were gently enthusiastic (Concept ACKing etc) without ACK=
ing that it was ready to merge. A long term observer of the Core repo would=
 have known that it wasn=E2=80=99t ready to merge or ready to attempt to ac=
tivate (especially given it was a consensus change) but a casual observer w=
ould have only seen Concept ACKs and ACKs with 3 stray NACKs. Many of these=
 casual observers inflated the numbers on the utxos.org site 4 signalling s=
upport for a soft fork activation attempt.
> >=20
> > I set out originally to write about the controls and processes around m=
erges on the default signet (bitcoin-inquisition 5) but it quickly became o=
bvious to me that if communication around Core merges/non-merges is this we=
ak you can hardly expect it to be any better on bitcoin-inquisition/default=
 signet where there is no real monetary value at stake. I will probably wri=
te about bitcoin-inquisition/default signet in a future email as I do think=
 the perception that it is =E2=80=9Cthe one and only=E2=80=9D staging groun=
d for consensus changes is dangerous 6 if the maintainer(s) on that project=
 have the same inclinations as a subset of the Core maintainers.
> >=20
> > As I stated at the beginning there is an element to this which is not i=
ndividual(s) specific and an adverse reaction to outright malicious actors =
external to any of these projects. I do not think any of the current mainta=
iners on Core or bitcoin-inquisition are outright malicious even if a subse=
t of them consistently frustrate me with their lack of transparency and acc=
ountability. But this issue isn't going away and I'm sure we'll hear more o=
n this from others in the coming months. To me it is a straight choice of t=
aking transparency and accountability much more seriously or failing that i=
nvesting more heavily (time and resources) in consensus compatible forks of=
 Core and treating Core like it is a proprietary "open source" project wher=
e merge decisions are not explained or justified in the open.
> >=20
> > --
> > Michael Folkson
> > Email: michaelfolkson at protonmail.com
> > Keybase: michaelfolkson
> > PGP: 43ED C999 9F85 1D40 EAF4 9835 92D6 0159 214C FEE3