[Pulp-dev] PUP Process: "obvious consensus"

Daniel Alley dalley at redhat.com
Thu Aug 10 19:58:59 UTC 2017


+1

On Thu, Aug 10, 2017 at 3:04 PM, Dennis Kliban <dkliban at redhat.com> wrote:

> +1
>
> On Thu, Aug 10, 2017 at 9:21 AM, David Davis <daviddavis at redhat.com>
> wrote:
>
>> +1. I think this is worth trying out.
>>
>>
>> David
>>
>> On Thu, Aug 10, 2017 at 8:54 AM, Austin Macdonald <amacdona at redhat.com>
>> wrote:
>>
>>> +1
>>>
>>> Thank you Brian!
>>>
>>> On Thu, Aug 10, 2017 at 5:33 AM, Brian Bouterse <bbouters at redhat.com>
>>> wrote:
>>>
>>>> A small language clarification was pushed based on feedback via
>>>> comment:  https://github.com/bmbouter/pups/commit/f5b7282b2d2e369b90f1
>>>> 49e4cc25226bb093171b
>>>>
>>>> Voting is open for the PUP1 revisions. Normally the voting window is
>>>> longer, but this topic has been discussed for a long time. The core team
>>>> earlier this week decided a shorter voting window was appropriate in this
>>>> case. Voting will close at midnight UTC on Friday Aug 11th. Please raise
>>>> any concerns around this process. Otherwise, please send in votes via this
>>>> thread. I'll cast mine now.
>>>>
>>>> +1 to passing the pup1 revisions.
>>>>
>>>> Thanks to everyone who has contributed comments and energy into this
>>>> topic.
>>>>
>>>> -Brian
>>>>
>>>>
>>>> On Mon, Aug 7, 2017 at 10:15 AM, Brian Bouterse <bbouters at redhat.com>
>>>> wrote:
>>>>
>>>>> After some in-person convo, the core team wants to open PUP1 revision
>>>>> voting on Wednesday and close it at midnight UTC on Friday Aug 11th. We
>>>>> will pass/not-pass according this the voting outlined in PUP1 itself (a
>>>>> variation on self-hosting [0]). We also want to ask that any comments on
>>>>> the PUP1 revisions by posted before midnight UTC tomorrow Aug 8th.
>>>>>
>>>>> [0]: https://en.wikipedia.org/wiki/Self-hosting
>>>>>
>>>>> -Brian
>>>>>
>>>>>
>>>>>
>>>>> On Mon, Jul 31, 2017 at 9:24 AM, Brian Bouterse <bbouters at redhat.com>
>>>>> wrote:
>>>>>
>>>>>> I've pushed a new commit [3] to the PR. It includes the following
>>>>>> changes. Please review and comment. If there are any major/blocking
>>>>>> concerns about adopting this please raise them. Once the PUP1 revisions are
>>>>>> resolved, PUP2 can also be accepted based on the votes it had previously.
>>>>>>
>>>>>> * Adjusts the +1 approvals to come from anywhere, not just core devs
>>>>>> * Explicitly allows for votes to be recast
>>>>>> * Explains two examples where votes are recast. One is based on many
>>>>>> other -1 votes being cast. The other is when concerns are addressed and a
>>>>>> -1 vote is recast.
>>>>>>
>>>>>> [3]: https://github.com/pulp/pups/pull/5/commits/959c67f5a4d16a26
>>>>>> e1d97ea6fe4aa570066db768
>>>>>>
>>>>>> -Brian
>>>>>>
>>>>>>
>>>>>> On Tue, Jun 27, 2017 at 3:33 PM, Brian Bouterse <bbouters at redhat.com>
>>>>>> wrote:
>>>>>>
>>>>>>> From the discussion on the call last week, I've made some revisions
>>>>>>> [2] to explore the idea of having a lazy consensus model. Comments, ideas,
>>>>>>> concerns are welcome either on the PR or via this thread.
>>>>>>>
>>>>>>> As @mhrivnak pointed out, the adoption of a lazy consensus model is
>>>>>>> meaningfully different than the language we have in pup1 today which uses
>>>>>>> "obvious consensus". I want to be up front about that change [2]. If anyone
>>>>>>> significantly disagrees with this direction, or has concerns, please raise
>>>>>>> them.
>>>>>>>
>>>>>>> [2]: https://github.com/pulp/pups/pull/5/
>>>>>>>
>>>>>>> -Brian
>>>>>>>
>>>>>>> On Mon, Jun 19, 2017 at 1:48 PM, Brian Bouterse <bbouters at redhat.com
>>>>>>> > wrote:
>>>>>>>
>>>>>>>> After some in-person discussion, we will have a call to discuss
>>>>>>>> ideas and options regarding the pup1 process. We will use this etherpad [0]
>>>>>>>> for notes, and we will recap the information to the list also. In
>>>>>>>> preparation, please continue to share ideas, perspectives and concerns via
>>>>>>>> this list.
>>>>>>>>
>>>>>>>> When: June 22nd, 1pm UTC. See this in your local timezone here [1].
>>>>>>>> The call will last no longer than 1 hour.
>>>>>>>>
>>>>>>>> How to connect:
>>>>>>>> video chat:    https://bluejeans.com/697488960
>>>>>>>> phone only: + 800 451 8679   Enter Meeting ID: 697488960
>>>>>>>>
>>>>>>>> [0]: http://pad-katello.rhcloud.com/p/Pulp_PUP_Process_Revisited
>>>>>>>> [1]: http://bit.ly/2rJqegX
>>>>>>>>
>>>>>>>> -Brian
>>>>>>>>
>>>>>>>>
>>>>>>>> On Mon, Jun 19, 2017 at 9:23 AM, Michael Hrivnak <
>>>>>>>> mhrivnak at redhat.com> wrote:
>>>>>>>>
>>>>>>>>> Back to where we started, having digested the discussion here and
>>>>>>>>> references cited, it seems clear that we have a system based on consensus,
>>>>>>>>> and that there is strong desire for decisions about process to continue
>>>>>>>>> being made with consensus. In terms of "obvious consensus", I'll propose
>>>>>>>>> that if any core member thinks it has not been reached, it has (perhaps by
>>>>>>>>> definition) not been reached.
>>>>>>>>>
>>>>>>>>> PUP0001 simply states in that case, "If obvious consensus is not
>>>>>>>>> reached, then the core devs decide." We don't need to over-complicate this.
>>>>>>>>> We've had reasonable success for many years at making process changes and
>>>>>>>>> agreeing on them. The PUP system should be a tool that helps us define a
>>>>>>>>> proposal as best we can, while providing a focal point for discussion. It
>>>>>>>>> should not unduly impede our ability to make decisions.
>>>>>>>>>
>>>>>>>>> So in a case where consensus is not obvious, can we talk it out
>>>>>>>>> among the core devs, particularly those with reservations, and make it our
>>>>>>>>> collective responsibility to find a path forward? Do we need to define it
>>>>>>>>> in more detail than that?
>>>>>>>>>
>>>>>>>>> On Fri, Jun 16, 2017 at 9:22 AM, David Davis <
>>>>>>>>> daviddavis at redhat.com> wrote:
>>>>>>>>>
>>>>>>>>>> I like centos model but personally I’m not a fan of the lazy
>>>>>>>>>> consensus option (X=0). Instead, I like the idea of having X be greater
>>>>>>>>>> than 1 (preferably 2). I feel like if there’s at least two people driving a
>>>>>>>>>> change (i.e. X=2) then if one person leaves the project, we’ll still have
>>>>>>>>>> someone who is able and motivated to take on the maintenance and evolution
>>>>>>>>>> of the change. That said, I am happy to test out the model where X=0.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> David
>>>>>>>>>>
>>>>>>>>>> On Thu, Jun 15, 2017 at 3:20 PM, Brian Bouterse <
>>>>>>>>>> bbouters at redhat.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> I asked about some of these governance questions to a group of
>>>>>>>>>>> community managers from several open source projects that I meet with
>>>>>>>>>>> weekly. They said that if you don't have a BDFL (Pulp does not) the other
>>>>>>>>>>> very popular model is the lazy consensus model. I think lazy consensus is
>>>>>>>>>>> the spirit of pup1. I asked for some examples and they pointed me at the
>>>>>>>>>>> CentOS governance model [0][1].
>>>>>>>>>>>
>>>>>>>>>>> Also @daviddavis and I were talking and codifying the problem as
>>>>>>>>>>> what value should X be if X are the number of +1s required to pass a
>>>>>>>>>>> decision with zero -1 votes (vetos)? The CentOS governance model sets X = 0
>>>>>>>>>>> by stating "There is no minimum +1 vote requirement". I'm also advocating
>>>>>>>>>>> for X=0 for the reasons I wrote in my earlier email. Practically speaking,
>>>>>>>>>>> I don't think an X=1, or X=2 will prevent many proposals that would have
>>>>>>>>>>> also passed with X=0.
>>>>>>>>>>>
>>>>>>>>>>> Regardless of the X value, we should continue the discussion so
>>>>>>>>>>> we can arrive at a decision on both pup1 and pup3. Thanks for continuing
>>>>>>>>>>> the convo.
>>>>>>>>>>>
>>>>>>>>>>> [0]: https://www.centos.org/about/g
>>>>>>>>>>> overnance/appendix-glossary/#consensus-decision-making
>>>>>>>>>>> [1]: https://www.centos.org/about/governance/voting/
>>>>>>>>>>>
>>>>>>>>>>> -Brian
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Tue, Jun 13, 2017 at 11:46 AM, Ina Panova <ipanova at redhat.com
>>>>>>>>>>> > wrote:
>>>>>>>>>>>
>>>>>>>>>>>> And if we would remove all 'shades of grey' and go back just to
>>>>>>>>>>>> +1 and -1 where people would need to make their mind up *clearly* which
>>>>>>>>>>>> would lead stronger arguments of doing or not doing this.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --------
>>>>>>>>>>>> Regards,
>>>>>>>>>>>>
>>>>>>>>>>>> Ina Panova
>>>>>>>>>>>> Software Engineer| Pulp| Red Hat Inc.
>>>>>>>>>>>>
>>>>>>>>>>>> "Do not go where the path may lead,
>>>>>>>>>>>>  go instead where there is no path and leave a trail."
>>>>>>>>>>>>
>>>>>>>>>>>> On Tue, Jun 13, 2017 at 5:30 PM, David Davis <
>>>>>>>>>>>> daviddavis at redhat.com> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> In this model of where only -1 votes stop the PUP from
>>>>>>>>>>>>> passing, wouldn’t it mean that there needn't be any consensus at all? In
>>>>>>>>>>>>> other words we could effectively strike the language about consensus from
>>>>>>>>>>>>> PUP-1. This model makes me worried that people other than those casting -1
>>>>>>>>>>>>> won’t bother to vote or participate since only -1 votes matter.
>>>>>>>>>>>>>
>>>>>>>>>>>>> I personally like the idea of having at least 30% that are +1
>>>>>>>>>>>>> or +0. This means that enough -0 votes can still block the vote, and also
>>>>>>>>>>>>> +0 votes goes towards helping the PUP pass. Thus +0 and -0 would both
>>>>>>>>>>>>> matter. I think this is a good compromise between the extremes of "broad
>>>>>>>>>>>>> buy-in" and "default to change."
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> David
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Tue, Jun 13, 2017 at 10:36 AM, Brian Bouterse <
>>>>>>>>>>>>> bbouters at redhat.com> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> We should (I thought we did) adopt a process that favors
>>>>>>>>>>>>>> change and does not have a "broad buy-in requirement". Any change that
>>>>>>>>>>>>>> doesn't harm the project should be allowed without broad buy-in. This
>>>>>>>>>>>>>> empowers even a single individual to enact change. This makes Pulp better
>>>>>>>>>>>>>> because:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> * Everyone is empowered. A single individual can have a
>>>>>>>>>>>>>> meaningful impact.
>>>>>>>>>>>>>> * Anyone can stop an idea that will negatively affect the
>>>>>>>>>>>>>> project or community via veto.
>>>>>>>>>>>>>> * We avoid the tyranny of the majority [0] or supermajority.
>>>>>>>>>>>>>> * It avoids politics. If we start averaging, or counting
>>>>>>>>>>>>>> votes for/against in an offsetting way, there will be politics. Counting
>>>>>>>>>>>>>> votes for/against will create inequality because influential project
>>>>>>>>>>>>>> members will likely see their ideas adopted but others won't. Having a
>>>>>>>>>>>>>> "default to change and any core dev can veto" approach creates equality.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Regarding how "obvious consensus" works with the
>>>>>>>>>>>>>> "veto-or-it-passes" model, if there are zero -1 votes cast, that means no
>>>>>>>>>>>>>> one wanted to stop the process. If no wants to stop it, and at least one is
>>>>>>>>>>>>>> for it, then the most sensible thing to do is to pass it. Since someone
>>>>>>>>>>>>>> took time to write the PUP there is obviously someone giving it a +1. If
>>>>>>>>>>>>>> one person really wants to go to place X for dinner (aka a +1), and there
>>>>>>>>>>>>>> are no counterproposals (aka a -1 with a suggestion) or strong preferences
>>>>>>>>>>>>>> against (aka -0 or +0) then the group will probably go to place X for
>>>>>>>>>>>>>> dinner by way of "obvious consensus".
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> In summary, adopting a "default to accept or reject with even
>>>>>>>>>>>>>> a single veto" system creates an equal system. A system where, a single
>>>>>>>>>>>>>> individual can make a difference, and anyone can stop a bad idea from
>>>>>>>>>>>>>> occurring. To @mhrivnak's point about a change not meeting a broad range of
>>>>>>>>>>>>>> needs, I expect -1's to be cast in those cases, so this system is still
>>>>>>>>>>>>>> very safe in terms of protecting the projects needs and interests.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> [0]: https://en.wikipedia.org/wiki/Tyranny_of_the_majority
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> -Brian
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Mon, Jun 12, 2017 at 7:53 PM, David Davis <
>>>>>>>>>>>>>> daviddavis at redhat.com> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Not sure this is true. I actually abstained from voting on
>>>>>>>>>>>>>>> PUP-3 because I was somewhere between a +0 and a -0.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> David
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Mon, Jun 12, 2017 at 11:43 AM, Ina Panova <
>>>>>>>>>>>>>>> ipanova at redhat.com> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Having at least one  +1 is not impartial approach just
>>>>>>>>>>>>>>>> because the developer who , as you said, found the time for the research
>>>>>>>>>>>>>>>> and writing down the proposal obviously will vote as +1 :)
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> --------
>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Ina Panova
>>>>>>>>>>>>>>>> Software Engineer| Pulp| Red Hat Inc.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> "Do not go where the path may lead,
>>>>>>>>>>>>>>>>  go instead where there is no path and leave a trail."
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On Mon, Jun 12, 2017 at 5:35 PM, Austin Macdonald <
>>>>>>>>>>>>>>>> amacdona at redhat.com> wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> This reminds me of the concept of a "Do-ocracy".
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> If developers take the time to research and write up a
>>>>>>>>>>>>>>>>> proposal, they have "done". It seems completely reasonable to default to
>>>>>>>>>>>>>>>>> the opinion of the people that cared enough to do the work. If it isn't the
>>>>>>>>>>>>>>>>> right decision, then someone must actively block it, simple as that.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> I think the rule should be "PUP passes if we have at least
>>>>>>>>>>>>>>>>> one +1 and no -1s".
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>>>>> Pulp-dev mailing list
>>>>>>>>>>>>>>>>> Pulp-dev at redhat.com
>>>>>>>>>>>>>>>>> https://www.redhat.com/mailman/listinfo/pulp-dev
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>>>> Pulp-dev mailing list
>>>>>>>>>>>>>>>> Pulp-dev at redhat.com
>>>>>>>>>>>>>>>> https://www.redhat.com/mailman/listinfo/pulp-dev
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>>> Pulp-dev mailing list
>>>>>>>>>>>>>>> Pulp-dev at redhat.com
>>>>>>>>>>>>>>> https://www.redhat.com/mailman/listinfo/pulp-dev
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>> Pulp-dev mailing list
>>>>>>>>>> Pulp-dev at redhat.com
>>>>>>>>>> https://www.redhat.com/mailman/listinfo/pulp-dev
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>>
>>>>>>>>> Michael Hrivnak
>>>>>>>>>
>>>>>>>>> Principal Software Engineer, RHCE
>>>>>>>>>
>>>>>>>>> Red Hat
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> Pulp-dev mailing list
>>>> Pulp-dev at redhat.com
>>>> https://www.redhat.com/mailman/listinfo/pulp-dev
>>>>
>>>>
>>>
>>> _______________________________________________
>>> Pulp-dev mailing list
>>> Pulp-dev at redhat.com
>>> https://www.redhat.com/mailman/listinfo/pulp-dev
>>>
>>>
>>
>> _______________________________________________
>> Pulp-dev mailing list
>> Pulp-dev at redhat.com
>> https://www.redhat.com/mailman/listinfo/pulp-dev
>>
>>
>
> _______________________________________________
> Pulp-dev mailing list
> Pulp-dev at redhat.com
> https://www.redhat.com/mailman/listinfo/pulp-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/pulp-dev/attachments/20170810/4734de52/attachment.htm>


More information about the Pulp-dev mailing list