From b0525aafdf81a62258c00c33e15c86222ea87a77 Mon Sep 17 00:00:00 2001 From: Nikolay Petrov Date: Wed, 25 Sep 2024 15:44:54 -0700 Subject: [PATCH 1/3] Introducing oneDAL roles --- .github/CODEOWNERS | 7 +++ MAINTAINERS.md | 146 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 153 insertions(+) create mode 100644 MAINTAINERS.md diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 789ff63d6e2..f7b133d5085 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -26,3 +26,10 @@ cpp/ @Alexsandruss @samir-nasibli @Alexandr-Solovev # Tree based methods dtrees @razdoburdin @ahuber21 @avolkov-intel @icfaust + +# Governance and process +/.github/CODEOWNERS @oneapi-src/owner-onedal +/SECURITY.md @oneapi-src/owner-onedal +/MAINTAINERS.md @oneapi-src/owner-onedal +/CONTRIBUTING.md @oneapi-src/owner-onedal +/CODE_OF_CONDUCT.md @oneapi-src/owner-onedal diff --git a/MAINTAINERS.md b/MAINTAINERS.md new file mode 100644 index 00000000000..20df34ed673 --- /dev/null +++ b/MAINTAINERS.md @@ -0,0 +1,146 @@ +# Introduction + +This document defines roles in oneDAL project. + +# Roles and responsibilities + +oneDAL project defines three main roles: + * [Contributor](#contributor) + * [Code Owner](#code-Owner) + * [Maintainer](#maintainer) + +These roles are merit based. Refer to the corresponding section for specific +requirements and the nomination process. + +## Contributor + +A Contributor invests time and resources to improve oneDAL project. +Anyone can become a Contributor by bringing value in one of the following ways: + * Answer questions from community members. + * Submit feedback to design proposals. + * Review and/or test pull requests. + * Test releases and report bugs. + * Contribute code, including bug fixes, features implementations, +and performance optimizations. + * Contribute design proposals. + +Responsibilities: + * Follow the [Code of Conduct](CODE_OF_CONDUCT.md). + * Follow the project [contributing guidelines](CONTRIBUTING.md). + +Privileges: + * Eligible to become Code owner/maintainer. + +## Code Owner + +A Code Owner has responsibility for a specific project component or a functional +area. Code Owners are collectively responsible, with other Code Owners, +for developing and maintaining their component or functional areas, including +reviewing all changes to their their areas of responsibility and indicating +whether those changes are ready to merge. They have a track record of +contribution and review in the project. + +Responsibilities: + * Follow the [Code of Conduct](CODE_OF_CONDUCT.md). + * Follow and enforce the project [contributing guidelines](CONTRIBUTING.md). + * Co-own with other code owners a specific component or aspect of the library, + including contributing bug fixes, implementing features, and performance + optimizations. + * Review pull requests in their specific areas of responsibility. + * Monitor testing results and flag issues in their specific areas of + responsibility. + * Support and guide Contributors. + +Requirements: + * Experience as Contributor for at least 6 months. + * Commit at least 25% of working time to the project. + * Track record of accepted code contributions to a specific project component. + * Track record of contributions to the code review process. + * Demonstrated in-depth knowledge of the architecture of a specific project + component. + * Commits to being responsible for that specific area. + +Privileges: + * PR approval counts towards approval requirements for a specific component. + * Can promote fully approved Pull Requests to the `main` branch. + * Can recommend Contributors to become Code Owners. + * Eligible to become a Maintainer. + +The process of becoming a Code Owner is: +1. A Contributor is nominated by opening a PR modifying the MAINTAINERS.md file +including name, Github username, and affiliation. +2. At least two specific component Maintainers approve the PR. + + +## Maintainer +Maintainers are the most established contributors who are responsible for the +project technical direction and participate in making decisions about the +strategy and priorities of the project. + +Responsibilities: + * Follow the [Code of Conduct](CODE_OF_CONDUCT.md). + * Follow and enforce the project [contributing guidelines](CONTRIBUTING.md) + * Co-own with other component Maintainers on the technical direction of a specific component. + * Co-own with other Maintainers on the project as a whole, including determining strategy and policy for the project. + * Suppport and guide Contributors and Code Owners. + +Requirements: + * Experience as a Code Owner for at least 12 months. + * Commit at least 25% of working time to the project. + * Track record of major project contributions to a specific project component. + * Demonstrated deep knowledge of a specific project component. + * Demonstrated broad knowledge of the project across multiple areas. + * Commits to using priviledges responsibly for the good of the project. + * Is able to exercise judgment for the good of the project, independent of + their employer, friends, or team. + +Privileges: + * Can represent the project in public as a Maintainer. + * Can promote Pull Requests to release branches and override mandatory + checks when necessary. + * Can recommend Code Owners to become Maintainers. + +Process of becoming a maintainer: +1. A Maintainer may nominate a current code owner to become a new Maintainer by +opening a PR against MAINTAINERS.md file. +2. A majority of the current Maintainers must then approve the PR. + +# Code Owners and Maintainers List + +## oneDAL core + +Team: @oneapi-src/onedal-write + +Currently entire Intel oneDAL team serves at contributor level and have corresponding rights +with additional separation of roles coming with repository migration to UXL + + +### oneDAL Architecture +| Name | Github ID | Affiliation | Role | +| ------------------ | --------------------- | ----------------- | ---------- | +| Victoriya Fedotova | @Vika-F | Intel Corporation | Maintainer | +| Aleksandr Solovev | @Alexandr-Solovev | Intel Corporation | Maintainer | +| Alexander Andreev | @Alexsandruss | Intel Corporation | Maintainer | + +### AArch64 + +| Name | Github ID | Affiliation | Role | +| ------------------ | --------------------- | ----------------- | ---------- | +| Rakshith G B | @rakshithgb-fujitsu | FUjitsu | Code Owner | + +### RISC-V + +| Name | Github ID | Affiliation | Role | +| ------------------ | --------------------- | ----------------- | ---------- | +| Keeran Rothenfusser| @keeranroth | Rivosinc | Code Owner | + + +### Release management + +| Name | Github ID | Affiliation | Role | +| ------------------ | --------------------- | ----------------- | ---------- | +| Nikolay Petrov | @napetrov | Intel Corporation | Maintainer | +| Sergey Yakovlev | @syakov-intel | Intel Corporation | Maintainer | +| Maria Petrova | @maria-Petrova | Intel Corporation | Maintainer | + + From 22645a38aecb36add12ba8a1420f68f8180fe176 Mon Sep 17 00:00:00 2001 From: Nikolay Petrov Date: Thu, 26 Sep 2024 09:53:19 -0700 Subject: [PATCH 2/3] Removing time commitments --- MAINTAINERS.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/MAINTAINERS.md b/MAINTAINERS.md index 20df34ed673..0f925d7702a 100644 --- a/MAINTAINERS.md +++ b/MAINTAINERS.md @@ -53,7 +53,6 @@ Responsibilities: Requirements: * Experience as Contributor for at least 6 months. - * Commit at least 25% of working time to the project. * Track record of accepted code contributions to a specific project component. * Track record of contributions to the code review process. * Demonstrated in-depth knowledge of the architecture of a specific project @@ -86,7 +85,6 @@ Responsibilities: Requirements: * Experience as a Code Owner for at least 12 months. - * Commit at least 25% of working time to the project. * Track record of major project contributions to a specific project component. * Demonstrated deep knowledge of a specific project component. * Demonstrated broad knowledge of the project across multiple areas. From 8e22e67b84f5401e2c3579e4d42a9b2fb04494db Mon Sep 17 00:00:00 2001 From: Nikolay Petrov Date: Mon, 30 Sep 2024 09:50:38 -0700 Subject: [PATCH 3/3] Update .github/CODEOWNERS --- .github/CODEOWNERS | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index f7b133d5085..2c10c1302f4 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -28,8 +28,8 @@ cpp/ @Alexsandruss @samir-nasibli @Alexandr-Solovev dtrees @razdoburdin @ahuber21 @avolkov-intel @icfaust # Governance and process -/.github/CODEOWNERS @oneapi-src/owner-onedal -/SECURITY.md @oneapi-src/owner-onedal -/MAINTAINERS.md @oneapi-src/owner-onedal -/CONTRIBUTING.md @oneapi-src/owner-onedal -/CODE_OF_CONDUCT.md @oneapi-src/owner-onedal +/.github/CODEOWNERS @oneapi-src/oneDAL-maintainer +/SECURITY.md @oneapi-src/oneDAL-maintainer +/MAINTAINERS.md @oneapi-src/oneDAL-maintainer +/CONTRIBUTING.md @oneapi-src/oneDAL-maintainer +/CODE_OF_CONDUCT.md @oneapi-src/oneDAL-maintainer