-
Notifications
You must be signed in to change notification settings - Fork 11
Add an official Governance structure #31
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's good that we have a starting point now. But this is missing a discussion about how decisions (technical and otherwise) are ultimately made. BDFL or majority vote or consensus? May need to discuss in a call.
Consensus discussion on Github or a monthly developer calls. But we nominate you as BDFL with sole veto power? Agree probably needs to be discussed on call. |
(Not yet commenting on the BDFL nomination.) Another important issue is allocation of commit bits and having a clear pathway for community members to become either part of the core team or an effective owner of a JuMP-dev repository (e.g., wrappers). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would suggest a bit of a restructuring to clarify the roles of the core developers and steering council. Right now, core developers are a level 3 heading under "commit rights" while the steering council is a level 2 heading, which doesn't seem right. The distinction between what's a technical decision that falls to core developers and what's "other" that falls to the steering council is also ambiguous.
In my view, the steering council should be secondary to the core developers. In terms of decision making, the core developers have ultimate authority on the direction of the project (nothing can really happen without their agreement). The steering council is there to support the core developers, e.g., by handling finances and representing JuMP with NumFOCUS. The steering council can gain additional decision-making power if the core developers decide to delegate, e.g., choosing a chair for the JuMP-dev workshop.
What do you think?
Agree. How's this now? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have more comments on the text, but first a larger refactoring suggestion. The decision-making process discussion is smeared across different sections, e.g., "Core contributors are the ultimate authority on the direction of the JuMP project." in the definition of core contributors.
What about:
- Basic definition of the various entities, i.e., core contributors, emeritus core contributors, repository maintainers, steering council (interface with NumFOCUS), BDFL, and how membership in each group is determined.
- The decision-making process
- GitHub permissions for each group (if applicable). The GitHub permissions are there to enable people to carry out the decision-making process, so they're secondary in that respect.
- Channels of community involvement
pages/governance.md
Outdated
|
||
Community members may be maintainers of multiple repositories at the same time. | ||
|
||
Each repository should list the current maintainers in their corresponding |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This might create an artificial barrier. Some people might be good repository maintainers but not want to have their name on the README, which potentially invites attention and demands from users. We could use a separate and less user-facing page to list repository maintainers.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fair point. I've removed for now. We can revisit if/how to give maintainers recognition in future. Are you thinking a MAINTAINERS.md
in each repo? Or a page on jump.dev
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was thinking a page on jump.dev.
a345fa1
to
cdf32db
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work!
Left some comments.
the [NumFOCUS Code of Conduct](https://numfocus.org/code-of-conduct) and the | ||
[Julia Community Standards](https://julialang.org/community/standards/), which | ||
reflect the values of our community. Both these links have information on how to | ||
confidentially report a violation. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should we link this:
https://github.com/jump-dev/JuMP.jl/blob/master/CODE_OF_CONDUCT.md
or maybe simplify it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Once this governance document is finalized, I propose we replace the CODE_OF_CONDUCT.md
with a link here instead.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
LGTM |
LGTM |
I'll leave this open for the weekend if anyone has additional comments, particularly the new wording of the mission. If there are no issues raised, I will merge Sunday evening US Eastern time. |
One minor, non-blocking, comment. In https://sciml.ai/governance/ it is close to the end... Not suggesting it should be hidden, but I would move it to the end. |
This PR adds a formal governance structure for the JuMP project.
A related document is the SciML governance page: https://sciml.ai/governance/
Before merging, this PR requires approval from: