Skip to content

Commit 2b12d33

Browse files
authored
Update alpha-beta approval requirements (#14201)
1 parent 1ca1008 commit 2b12d33

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

GOVERNANCE.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -84,9 +84,9 @@ This table gives a high-level overview of the stages, but please see the individ
8484
| Stage | Name | Entrance Criteria | Purpose |
8585
| ----- | ------------- | -------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
8686
| 0 | Proposal | Proposal discussion opened on GitHub | We start with a GitHub Proposal to provide the lowest barrier to RFC submission. Anyone can submit an RFC and community members can review, comment, up-vote without any initial involvement of the SC. |
87-
| 1 | Consideration | Proposal acceptance from 2 or more SC members | The consideration phase is the first "funnel" for incoming RFCs where the SC can officially express interest in the more popular RFCs. We only require 2 SC members to express interest to move an RFC into the **Consideration** phase to allow for low-friction experimentation of features in the **Alpha** stage. |
87+
| 1 | Consideration | Proposal acceptance from 2 SC members | The consideration phase is the first "funnel" for incoming RFCs where the SC can officially express interest in the more popular RFCs. We only require 2 SC members to express interest to move an RFC into the **Consideration** phase to allow for low-friction experimentation of features in the **Alpha** stage. |
8888
| 2 | Alpha | Pull request (PR) opened to implement the feature in an "unstable" state | The **Alpha** stage is the next funnel for RFCs. Once interest has been expressed by the SC in the **Consideration** phase we open the RFC up for a sample PR implementation and a mechanism for community members to alpha test the feature without requiring that anything be shipped in a React Router SemVer release. This stage allows evaluation of the RFC in running applications and consideration of what a practical implementation of the RFC looks like in the code. |
89-
| 3 | Beta | PR approval from at least 50% of the SC members indicating their acceptance of the PR for an unstable API | A RFC enters the **Beta** stage once enough members of the SC feel comfortable not only with the code for the beta feature, but have also seen positive feedback from alpha testers that the feature is working as expected. Once an **Alpha** stage PR has enough SC approvals, it will be merged and be included in the next React Router release. |
89+
| 3 | Beta | PR approval from 2 SC members indicating their acceptance of the PR for an unstable API | A RFC enters the **Beta** stage once enough members of the SC feel comfortable not only with the code for the beta feature, but have also seen positive feedback from alpha testers that the feature is working as expected. Once an **Alpha** stage PR has enough SC approvals, it will be merged and be included in the next React Router release. |
9090
| 4 | Stabilization | At least 1 month in the Beta stage and PR opened to stabilize the APIs. This PR should also include documentation for the new feature. | The **Stabilization** phase exists to ensure that unstable features are available for enough time for applications to update their React Router version and opt-into beta testing. We don't want to rush features through beta testing so that we have maximal feedback prior to stabilizing a feature. |
9191
| 5 | Stable | PR approval from at least 50% of the SC members indicating their acceptance of the PR for a stable API | A RFC is completed and enters the **Stable** stage once enough members of the SC feel comfortable not only with the code for the stable feature, but have also seen positive feedback from beta testers that the feature is working as expected. Once an **Beta** stage PR has enough SC approvals and has spent the required amount of time in the **Beta** stage, it can be merged and included in the next React Router release. |
9292

@@ -103,7 +103,7 @@ This table gives a high-level overview of the stages, but please see the individ
103103

104104
### Stage 1 — Consideration
105105

106-
- A proposal enters **Stage 1 — Consideration** when two or more SC members indicate interest/support for the idea as a valuable addition to React Router
106+
- A proposal enters **Stage 1 — Consideration** when 2 SC members indicate interest/support for the idea as a valuable addition to React Router
107107
- Upon entering this stage, a GitHub Issue will be created for the feature and added to the roadmap
108108
- These initial supporting SC members will be the champions for the feature and will be loosely responsible for shepherding the feature through the stages of the RFC process
109109
- At this stage, the proposal is eligible for a sample PR implementation from a core team or community member
@@ -129,7 +129,8 @@ This table gives a high-level overview of the stages, but please see the individ
129129

130130
### Stage 3 — Beta
131131

132-
- A proposal enters **Stage 3 — Beta** once it receives **Stage 2 — Alpha** PR approvals from at least 50% of the SC members and is merged to `dev`
132+
- A proposal enters **Stage 3 — Beta** once it receives **Stage 2 — Alpha** PR approvals from 2 SC members and is merged to `dev`
133+
- An SC member authoring the PR counts an an implicit approval, so in those cases explicit approval is required from 1 additional SC member
133134
- This will include the feature in `nightly` releases and the next normal SemVer release for broader beta testing under the `unstable_` flag
134135

135136
### Stage 4 — Stabilization

0 commit comments

Comments
 (0)