Skip to content

Commit 31756e6

Browse files
authored
Add Beta features governance policy (krkn-chaos#1185)
Introduce documentation defining Beta feature expectations, lifecycle, user guidance, and promotion criteria to GA. This helps users understand that Beta features are experimental and intended for early feedback. Signed-off-by: Naga Ravi Chaitanya Elluri <nelluri@redhat.com>
1 parent 8c9bce6 commit 31756e6

File tree

1 file changed

+141
-0
lines changed

1 file changed

+141
-0
lines changed

BETA_FEATURE_POLICY.md

Lines changed: 141 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
1+
# Beta Features Policy
2+
3+
## Overview
4+
5+
Beta features provide users early access to new capabilities before they reach full stability and general availability (GA). These features allow maintainers to gather feedback, validate usability, and improve functionality based on real-world usage.
6+
7+
Beta features are intended for experimentation and evaluation. While they are functional, they may not yet meet the stability, performance, or backward compatibility guarantees expected from generally available features.
8+
9+
---
10+
11+
## What is a Beta Feature
12+
13+
A **Beta feature** is a feature that is released for user evaluation but is still under active development and refinement.
14+
15+
Beta features may have the following characteristics:
16+
17+
- Functionally usable but still evolving
18+
- APIs or behavior may change between releases
19+
- Performance optimizations may still be in progress
20+
- Documentation may be limited or evolving
21+
- Edge cases may not be fully validated
22+
23+
Beta features should be considered **experimental and optional**.
24+
25+
---
26+
27+
## User Expectations
28+
29+
Users trying Beta features should understand the following:
30+
31+
- Stability is not guaranteed
32+
- APIs and functionality may change without notice
33+
- Backward compatibility is not guaranteed
34+
- The feature may evolve significantly before GA
35+
- Production use should be evaluated carefully
36+
37+
We strongly encourage users to provide feedback to help improve the feature before it becomes generally available.
38+
39+
---
40+
41+
## Beta Feature Identification
42+
43+
All Beta features are clearly identified to ensure transparency.
44+
45+
### In Release Notes
46+
47+
Beta features will be marked with a **[BETA]** tag.
48+
49+
Example: [BETA] Krkn Resilience Score
50+
51+
52+
### In Documentation
53+
54+
Beta features will include a notice similar to:
55+
56+
> **Beta Feature**
57+
> This feature is currently in Beta and is intended for early user feedback. Behavior, APIs, and stability may change in future releases.
58+
59+
---
60+
61+
## Feature Lifecycle
62+
63+
Features typically progress through the following lifecycle stages.
64+
65+
### 1. Development
66+
The feature is under active development and may not yet be visible to users.
67+
68+
### 2. Beta
69+
The feature is released for early adoption and feedback.
70+
71+
Characteristics:
72+
73+
- Feature is usable
74+
- Feedback is encouraged
75+
- Stability improvements are ongoing
76+
77+
### 3. Stabilization
78+
Based on user feedback and testing, the feature is improved to meet stability and usability expectations.
79+
80+
### 4. General Availability (GA)
81+
82+
The feature is considered stable and production-ready.
83+
84+
GA features provide:
85+
86+
- Stable APIs
87+
- Backward compatibility guarantees
88+
- Complete documentation
89+
- Full CI test coverage
90+
91+
---
92+
93+
## Promotion to General Availability
94+
95+
A Beta feature may be promoted to GA once the following criteria are met:
96+
97+
- Critical bugs are resolved
98+
- Feature stability has improved through testing
99+
- APIs and behavior are stable
100+
- Documentation is complete
101+
- Community feedback has been incorporated
102+
103+
The promotion will be announced in the release notes.
104+
105+
Example: Feature promoted from Beta to GA
106+
107+
108+
---
109+
110+
## Deprecation of Beta Features
111+
112+
In some cases, a Beta feature may be redesigned or discontinued.
113+
114+
If this happens:
115+
116+
- The feature will be marked as **Deprecated**
117+
- A removal timeline will be provided
118+
- Alternative approaches will be documented when possible
119+
120+
Example: [DEPRECATED] This feature will be removed in a future release.
121+
122+
---
123+
124+
## Contributing Feedback
125+
User feedback plays a critical role in improving Beta features.
126+
127+
Users are encouraged to report:
128+
129+
- Bugs
130+
- Usability issues
131+
- Performance concerns
132+
- Feature suggestions
133+
134+
Feedback can be submitted through:
135+
136+
- Krkn GitHub Issues
137+
- Krkn GitHub Discussions
138+
- Krkn Community channels
139+
140+
Please include **Beta feature context** when reporting issues.
141+
Your feedback helps guide the roadmap and ensures features are production-ready before GA.

0 commit comments

Comments
 (0)