Skip to content

Commit e64588f

Browse files
authored
Merge pull request #15 from mcy/rfc-templates
Add a basic RFC template for extending the protocol
2 parents 55712ca + a26fdb0 commit e64588f

File tree

2 files changed

+84
-0
lines changed

2 files changed

+84
-0
lines changed
+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
* Name: Unique identifier for the proposal
2+
* Date: YYYY-MM-DD
3+
* Pull Request: [#NNNN](https://github.com/opencomputeproject/Security/pull/NNNN)
4+
5+
# Objective
6+
7+
A summary of the problem this proposal intends to solve, along with background.
8+
9+
# Proposal
10+
11+
A technical description of how this proposal achieves the goals outlined above.
12+
For example, this may include the introduction of new concepts, protocol
13+
messages, and so on.
14+
15+
This section should explain the proposal in detail, but should not describe how
16+
to achieve it in code or in standardsese; that is a task for the sections that
17+
follow.
18+
19+
# Specification Changelist
20+
21+
A list of proposed changes to the specification(s) relevant to this proposal.
22+
This should not be an actual diff of the specs; merely a description of the changes
23+
to be made once the RFC is adopted.
24+
25+
If this RFC would introduce an entirely new spec document, describing the broad
26+
strokes of what that document would contain is sufficient.
27+
28+
# Implementation Guidance
29+
30+
This section is optional.
31+
32+
For proposals which introduce significant complexity w.r.t. implementation of
33+
the protocol, this section can give a brief description of how the proposal
34+
might be implemented.
35+
36+
# Alternatives Considered
37+
38+
This section is optional.
39+
40+
Proposals may choose to include alternative approaches to solving their stated
41+
problem, and why those were rejected in favor of the main one.
42+
43+
# Future Work
44+
45+
This section is optional.
46+
47+
Proposals may describe future RFCs that solve related, but out-of-scope
48+
problems.

RoT/Protocol/RFCs/README.md

+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# Cerberus RFCs
2+
3+
Proposals for improving the Cerberus specifications are handled through the RFC
4+
process. An RFC describes a problem with the protocol as it exists today and
5+
proposes a solution.
6+
7+
Unlike IETF RFCs, Cerberus RFCs are non-normative, and primarily exist to record
8+
discussions leading to particular design decisions in the protocol, and to
9+
provide a starting point for deciding whether to adopt a proposal.
10+
11+
## Creating an RFC
12+
13+
Creating an RFC is done as follows:
14+
1. Pick a name for the RFC, say, "My Cool Proposal".
15+
2. Find the next RFC number in the sequence, say, 0284, and copy the template
16+
file into `0284-My_Cool_Proposal.md`.
17+
3. Fill out the template as described, except for the PR link.
18+
4. Open a PR to add your RFC to the repo, and modify the text to include the PR
19+
link (this is so that there is an easy way to find the discussion of the
20+
proposal for future readers of the proposal itself).
21+
5. Discuss!
22+
23+
## Accepting and implementing an RFC
24+
25+
An RFC is accepted when its PR is approved and merged by a specification owner.
26+
When and whether to accept an RFC is at the owners' discretion, but will usually
27+
occur after some discussion of the RFC has occured on the PR.
28+
29+
After the RFC is merged, the author may *implement* it by submitting a PR making
30+
text modifications to the spec(s) relevant to the RFC; in principle, the only
31+
thing up for discussion at this point should be the precise wording of the
32+
change.
33+
34+
The current RFC owners are:
35+
* bryankel
36+
* chweimer

0 commit comments

Comments
 (0)