https://rust-lang.github.io/rfcs/3392-leadership-council/initial-work-of-the-council.html
- Checking for priority items that other teams need *urgent* help from the Council.
- Checking in with the moderation team, to ensure they have sufficient support and resources to ensure growth and sustainability. Collaborating with the moderation team as they develop and codify their policies and procedures to better handle a broader range of situations across the Project.
- Helping to develop plans to support understaffed or otherwise unsustainable teams.
- Work with the infra team to develop a transition plan for privileges traditionally maintained by core (such as root privileges / logged-use break-glass credentials). Coordinate appropriate policies with infra.
- Working with the Launching Pad team to help transition teams out of it into appropriate places in the organization.
- Ensuring that top-level teams have well-documented purviews, starting to identify gaps between those purviews, and working with teams to determine when those gaps should fall to specific existing teams or become the purview of new teams.
- Transitioning any teams or working groups that would be better served outside of the project to formally leave the project.
- Establish what the boundaries of "project membership" are (i.e., finally answer the question of "who is in the Rust Project?").
- Establishing policies to enable delegation of communication/PR tasks that have traditionally fallen to top-level leadership, and then making appropriate delegations of such work, potentially including the creation of teams.
- Working with teams to establish coordination channels for team roadmaps, and developing processes to support cohesion across those roadmaps.
- Making concrete plans to improve Rust Project diversity, including working with individual teams on how to better support diversity initiatives, as well as addressing gaps for which no individual team currently has responsibility.
- Working with teams on processes for receiving feedback from subteams, particularly on proposed Council representatives. Particular attention should be paid to:
- Ensure feedback is processed early, often, fairly, and consistently such that subteam members feel heard and Council members are given opportunity to address feedback and improve.
- Help detect and address bias in Council representative selection, including status-quo bias towards existing Rust leaders or people similar to them.
- Documenting and improving processes for interaction with the Rust Foundation, and considering organizational improvements to provide further ongoing support for those interactions (such as how and where Project directors fit into the organizational structure and how they interface with the Council regularly).
- In particular, establishing the purview of the Project directors along with policies and procedures for ensuring proper representation of Project interests on the Foundation board.
- Establishing proper procedures, and potentially teams, for handling issues which may have legal implications on the Project or Project participants.
- Ensuring that people and teams within the Rust Project have access to appropriate training and resources for the positions they find themselves in, beyond the skills required for their direct purview. Foster a culture of team membership that values such skills and help teams find resources or training to bolster such skills. Such skills and training include, among many others:
- General leadership and coordination skills, within a team and across a community
- Transparent and legible reasoning skills, recognizing and documenting underlying values, crux-finding, and collaborative disagreement
- Conflict resolution and de-escalation
- Project management and planning
- Communications between individuals, teams, and projects
- Public communications
- Help teams evaluate and consider replicating useful aspects of the Council's structure and processes within other teams across the Project (particularly top-level teams), such as:
- Appropriate structures to help subteams collaborate and coordinate amongst themselves and with top-level teams
- Structures for decision-making, including policies allowing for some types of decisions to be made more quickly, where appropriate
- Transparency, privacy, and documentation of decisions
- Policies for handling conflicts of interest among team members
- Policies on the number of team members sharing a common affiliation
- Ensure Project and Project member health by understanding and working against common work patterns where select "heroes" assume an outsized and unreasonable share of the maintenance burden by:
- taking on large amounts of essential work that they do not really *want* to do because no one else volunteers
- taking on so much work (either voluntarily or out of seeming necessity) that they are prone to burnout
- taking on work no one else has the ability to do and for which the member's absence would lead to potential crises in the Project
- Evaluating improvements to the RFC decision process, such as tracking and supporting multiple potential outcomes and changes in people's preferences without restarting decisions, and providing lighter-weight mechanisms for reversible decisions.
- Bootstrapping the new "Launching Pad" team and ensuring it has enough structure to operate.
- Organizing teams within Rust, and ensuring all teams and other governance structures are "attached" to appropriate places in the structure. (This includes working with teams to find appropriate homes, and ensuring such changes are ultimately reflected in the team metadata repository.)
- Establish a trademark working group for working with the Foundation staff and legal council on a trademark policy.
___
- Everything at https://hackmd.io/ARL5KGrNRVKXlKG9sbIyrA
(Not sure why these two documents are separate.)
___
- ehuss: Establish and document the internal processes of the Council:
- How decisions are made (sync, async, consensus model, expectations, templates, tooling, etc.). https://hackmd.io/@ryanlevick/rkXYhyJdn https://rust-lang.zulipchat.com/#narrow/stream/392734-council/topic/Decision.20making.20discussion
- How urgent issues are handled.
- Sync meetings:
- When, how often, where the Council meets. https://github.com/rust-lang/leadership-council/pull/2
- How items get added and prioritized on the agenda
- Minutes procedure
- Observing https://rust-lang.zulipchat.com/#narrow/stream/392734-council/topic/Observing.20meetings.3F
- Issue and request procedure and tracking: https://github.com/rust-lang/leadership-council/issues/10#issuecomment-1622489609
- Figure out how to track and handle private issues and matters.
- Figure out who will rotate their term (should know 6 months before it ends).
- Recording Council membership affiliation, term tracking, etc.: https://github.com/rust-lang/leadership-council/issues/9
- ehuss: Project director selection: https://github.com/rust-lang/leadership-council/pull/11
- ehuss: Process for regular review of policy decisions.
- ehuss: Establish a means to publish and track project policies.
- ehuss: Onboarding materials for new Council members.
- Have a clearer process for temporarily handing off to alternates.
- ehuss: Fix outdated information on the website and forge pages.
- ehuss: Retiring all T-core and leadership chat things (team database, etc.).
- ehuss: Establish and document exactly how rust-lang team membership is managed (rust-lang/team database, etc.).
- Privacy: https://github.com/rust-lang/core-team/issues/25
- ehuss: Establish and document rust-lang GitHub access (and other granted rights).
- ehuss: Close or take ownership of T-core RFCs https://github.com/rust-lang/rfcs/pulls?q=is%3Aopen+is%3Apr+label%3AT-core
- ehuss: Document and provide guidance on the consensus-based decision making process (and investigate ways to improve that process).
- ehuss: Find people interested in starting a working group for Rust licensing (https://github.com/rust-lang/core-team/issues/8).
---
- eholk: Work with the whole Rust project to define our cultural values, then work to actively model and cultivate those values
- I see this as somewhat related to the Mod team, since it's about cultivating the style of Rust participation and contribution we'd like.
- It's also related to roadmap coordination because we should try to cultivate a culture that advances the project's mission.
- eholk: Establish a "Broader Community" Team
- This is a pretty speculative idea, so I'm not completely sold on it. But, lots of people contribute to the project or are otherwise interested in its success (for example, they are Rust users), but they don't have formal membership in any of the teams. With the current leadership structure, they don't really have a formal voice in the project. My idea here would be to create a team that has minimal membership requirements (roughly, sign up for a mailing list, but probably requiring an explicit renewal once a year or so) and has minimal authority (they don't own any decisions), but they'd still get Council representation, either directly or as a subteam of some other team, and thus we have a lower bar for making sure someone has a voice in the project.
- I see this as a potential solution to part of the challenge of defining Rust project membership. A lot of the "Rust project" in my mind is just "people who show up," but they often don't have team membership.