Skip to content

Latest commit

 

History

History
99 lines (74 loc) · 4.08 KB

GOVERNANCE.md

File metadata and controls

99 lines (74 loc) · 4.08 KB

Governance

Welcome to the Pippin Framework Governance Document! This document outlines how decisions are made and the roles within the project. Our governance model emphasizes community participation, ensuring that contributors have a significant role in shaping the project's future. The project owner serves as a mediator for major changes or conflicts to maintain the project's integrity and vision.

🚀 Governance Structure

Community Contributors

  • Role:
    • Individuals who actively contribute to the project through code, documentation, designs, or other resources.
  • Responsibilities:
    • Submit pull requests with improvements or fixes.
    • Participate in discussions to enhance the project.
    • Follow the project's coding and documentation standards.
    • Collaborate with other contributors to achieve project goals.

Project Owner

  • Role:
    • The primary maintainer and overseer of the project.
  • Responsibilities:
    • Mediate in cases of disagreement or when significant changes are proposed.
    • Ensure that the project's vision and objectives are upheld.
    • Facilitate community discussions and decision-making processes.
    • Manage repository settings and access permissions.

🗳️ Decision-Making Process

Standard Changes

For routine updates and standard changes (e.g., minor feature additions, bug fixes):

  1. Proposal:
    • Contributors propose changes by opening issues or submitting pull requests.
  2. Discussion:
    • The community discusses the proposal, providing feedback and suggestions.
  3. Consensus:
    • If the community reaches a consensus, the change is implemented.
  4. Mediation (if needed):
    • If disagreements arise, the project owner steps in to mediate and guide the discussion towards a resolution.

Significant Changes

For major changes that could impact the project's direction, architecture, or core functionalities:

  1. Proposal:
    • A detailed proposal is submitted outlining the change's rationale, benefits, and potential impacts.
  2. Community Review:
    • The community reviews and discusses the proposal, providing input and raising concerns if any.
  3. Project Owner Mediation:
    • The project owner facilitates the discussion to ensure all viewpoints are considered and to help reach a consensus.
  4. Decision:
    • Based on the discussion and mediation, the project owner or the community decides whether to proceed with the change.

👥 Roles and Responsibilities

Community Contributors

  • Active Participation:
    • Engage in project discussions, issue reporting, and pull request reviews.
  • Code and Documentation:
    • Maintain and improve the codebase and project documentation.
  • Quality Assurance:
    • Ensure that contributions meet the project's standards and guidelines.

Project Owner

  • Vision and Direction:
    • Define and uphold the project's vision and long-term goals.
  • Mediation:
    • Resolve conflicts and guide the community in decision-making processes.
  • Maintenance:
    • Oversee repository management, including merging pull requests and managing access controls.

🔄 Conflict Resolution

In the event of disagreements or conflicts:

  1. Open Discussion:
    • Initiate a discussion in the relevant issue or pull request to address concerns.
  2. Mediation by Project Owner:
    • The project owner facilitates the conversation, ensuring that all perspectives are heard.
  3. Resolution:
    • Through guided discussion, a consensus is reached. If consensus cannot be achieved, the project owner makes the final decision to maintain project integrity.

🔗 Tagging and Involving the Project Owner

  • When to Tag:

    • Contributors should tag the project owner when:
      • A significant change is proposed.
      • A conflict arises that cannot be resolved within the community.
      • Guidance is needed on complex issues or decisions.
  • How to Tag:

    • Use @yoheinakajima in comments or discussions to notify the project owner.

    Example:

    @yoheinakajima Could you please review this significant change proposal?