RFC Process
Major changes to FlameIQ require a formal RFC (Request for Comments) before implementation begins.
When is an RFC required?
An RFC is required for:
Any change to
flameiq/schema/v1/(schema is immutable; v2 needs RFC)New statistical algorithms or changes to existing ones
New baseline strategies
Changes to CLI exit codes
Changes to the threshold evaluation logic
New top-level CLI commands
Breaking changes to the public Python API
An RFC is not required for:
Bug fixes
Documentation improvements
New providers (use a PR with the provider checklist)
Dependency updates
Performance improvements that do not change observable behaviour
RFC lifecycle
Stage |
Description |
|---|---|
Draft |
Author opens a GitHub Discussion with |
Discussion |
Community feedback, 7-day minimum comment period |
Revised |
Author incorporates feedback and marks as ready for vote |
Vote |
Maintainers vote. Requires two-thirds majority to pass. |
Accepted |
RFC merged to |
Rejected |
RFC closed with rationale documented. |
Final |
Implementation complete and shipped. |
RFC template
RFC-NNNN: <Title>
==================
:Author: <name>
:Status: Draft
:Created: YYYY-MM-DD
Motivation
----------
Why is this change needed? What problem does it solve?
Proposed Change
---------------
Precise description of what will change.
Mathematical Specification
---------------------------
(Required for algorithm changes.) Full formal specification.
Backward Compatibility
-----------------------
What breaks? What migration is required?
Alternatives Considered
-----------------------
What other approaches were evaluated and why were they rejected?
Test Plan
---------
How will the change be verified?