Add RFC template
This commit is contained in:
parent
070bdf6f39
commit
1aa8f3a656
87
.github/ISSUE_TEMPLATE/RFC_report.md
vendored
Normal file
87
.github/ISSUE_TEMPLATE/RFC_report.md
vendored
Normal file
@ -0,0 +1,87 @@
|
||||
---
|
||||
name: RFC template
|
||||
about: request for comments
|
||||
title: "[RFC]"
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!--- Provide a general summary of the RFC in the Title above -->
|
||||
- Feature Name: (fill me in with a unique ident, `my_awesome_feature`)
|
||||
- Start Date: (fill me in with today's date, YYYY-MM-DD)
|
||||
|
||||
# Summary
|
||||
[summary]: #summary
|
||||
|
||||
One paragraph explanation of the feature.
|
||||
|
||||
# Motivation
|
||||
[motivation]: #motivation
|
||||
|
||||
Why are we doing this? What use cases does it support? What is the expected outcome?
|
||||
|
||||
# Guide-level explanation
|
||||
[guide-level-explanation]: #guide-level-explanation
|
||||
|
||||
Explain the proposal as if it was already included in the Occlum and you were teaching it to another Occlum user. That generally means:
|
||||
|
||||
- Introducing new named concepts.
|
||||
- Explaining the feature largely in terms of examples.
|
||||
- If applicable, provide sample error messages, deprecation warnings, or migration guidance.
|
||||
- If applicable, describe the differences between teaching this to existing Occlum users and new Occlum users.
|
||||
|
||||
# Reference-level explanation
|
||||
[reference-level-explanation]: #reference-level-explanation
|
||||
|
||||
This is the technical portion of the RFC. Explain the design in sufficient detail that:
|
||||
|
||||
- Its interaction with other features is clear.
|
||||
- It is reasonably clear how the feature would be implemented.
|
||||
- Corner cases are dissected by example.
|
||||
|
||||
The section should return to the examples given in the previous section, and explain more fully how the detailed proposal makes those examples work.
|
||||
|
||||
# Drawbacks
|
||||
[drawbacks]: #drawbacks
|
||||
|
||||
Why should we *not* do this?
|
||||
|
||||
# Rationale and alternatives
|
||||
[rationale-and-alternatives]: #rationale-and-alternatives
|
||||
|
||||
- Why is this design the best in the space of possible designs?
|
||||
- What other designs have been considered and what is the rationale for not choosing them?
|
||||
- What is the impact of not doing this?
|
||||
|
||||
# Prior art
|
||||
[prior-art]: #prior-art
|
||||
|
||||
Discuss prior art, both the good and the bad, in relation to this proposal.
|
||||
|
||||
# Unresolved questions
|
||||
[unresolved-questions]: #unresolved-questions
|
||||
|
||||
- What parts of the design do you expect to resolve through the RFC process before this gets merged?
|
||||
- What parts of the design do you expect to resolve through the implementation of this feature before stabilization?
|
||||
- What related issues do you consider out of scope for this RFC that could be addressed in the future independently of the solution that comes out of this RFC?
|
||||
|
||||
# Future possibilities
|
||||
[future-possibilities]: #future-possibilities
|
||||
|
||||
Think about what the natural extension and evolution of your proposal would
|
||||
be and how it would affect the Occlum as a whole in a holistic way. Try to
|
||||
use this section as a tool to more fully consider all possible interactions
|
||||
with the project in your proposal. Also consider how this all fits into the
|
||||
roadmap for the project and of the relevant sub-team.
|
||||
|
||||
This is also a good place to "dump ideas", if they are out of scope for the
|
||||
RFC you are writing but otherwise related.
|
||||
|
||||
If you have tried and cannot think of any future possibilities,
|
||||
you may simply state that you cannot think of anything.
|
||||
|
||||
Note that having something written down in the future-possibilities section
|
||||
is not a reason to accept the current or a future RFC; such notes should be
|
||||
in the section on motivation or rationale in this or subsequent RFCs.
|
||||
The section merely provides additional information.
|
Loading…
Reference in New Issue
Block a user