Component Maturity Model
Use this model to decide when an ElectriPy component is ready for broader reuse.
Levels
L0 - Experimental
- API can change without notice.
- No stability guarantees.
- Basic tests may be incomplete.
L1 - Beta
- Public API is typed and documented.
- Unit tests cover happy paths and key failures.
- No known correctness blockers for local usage.
L2 - Production-Ready
- Deterministic behavior is verified by tests.
- Error taxonomy is explicit and documented.
- Telemetry and safe logging posture are in place.
- Migration notes exist for breaking changes.
L3 - Hardened
- Proven in multiple real workflows.
- Performance and failure mode budgets defined.
- Backward-compatibility policy actively enforced.
Promotion Checklist
A component must satisfy all of the following before promotion:
- Typed public API with
__all__exports. - Tests for core logic, edge cases, and error paths.
- Documentation with basic and advanced usage.
- Safe-by-default handling for sensitive AI inputs/outputs.
- Deterministic outputs for the same inputs/config.
- Changelog entry and upgrade guidance when relevant.
Suggested Evidence Artifacts
- Test report and coverage summary.
- Example recipe demonstrating end-to-end workflow.
- API diff for the release.
- Short architecture note (ports/adapters/services).