Skip to content

Commit

Permalink
tiny edits; specify document header.
Browse files Browse the repository at this point in the history
  • Loading branch information
raulk committed May 23, 2019
1 parent 00dd809 commit b229eb1
Showing 1 changed file with 23 additions and 7 deletions.
30 changes: 23 additions & 7 deletions 00-framework-01-spec-lifecycle.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

Our goal is to design a framework to foster rapid and incremental libp2p
specification development, aiming to reduce the barrier to entry for new
ideas, increasing the throughput of ideation and crystallization of
ideas, increasing the throughput of ideation and crystallisation of
breakthrough novel proposals, promoting their evolution and adoption within
the ecosystem, while maximising consensus through a common policy for
progression across lifecycle stages.
Expand Down Expand Up @@ -37,6 +37,8 @@ lifecycle:
* `Deprecated`
* `Terminated`

### Applicability matrix

Not all statuses are relevant to all maturity levels. This matrix defines the
applicability:

Expand All @@ -46,16 +48,30 @@ applicability:
| **Candidate Recommendation** ||| |
| **Recommendation** ||| |

### Abbreviations

To abbreviate the lifecycle stage of a specification, we combine the maturity
level and status in a two character string:
level and status into a two-character string:

```
<maturity level> ::= "1" | "2" | "3"
<status> ::= "A" | "D" | "T"
<lifecycle stage> ::= <maturity level> <status>
<abbrv maturity level> ::= "1" | "2" | "3"
<abbrv status> ::= "A" | "D" | "T"
<abbrv lifecycle stage> ::= <abbrv maturity level> <abbrv status>
// example: 1A (Working Draft / Active), 2D (Candidate Recommendation / Deprecated).
```

### Document headers

We use the following nomenclature in document headers to denote its current
lifecycle stage:

```
<full maturity level> ::= "Working Draft" | "Candidate Recommendation" | "Recommendation"
<full status> ::= "Active" | "Deprecated" | "Terminated"
<lifecycle header> ::= <abbrv lifecycle stage> " – " <full maturity level> " / " <full status>
// example: 1A – Working Draft / Active.
```

## Maturity levels

### Level 1: Working Draft
Expand All @@ -65,9 +81,9 @@ development.

This level is lightweight and mostly self-directed by the author. We aim to
reduce the barrier to entry, and it's designed to allow for iterative
experimentation, discovery and pivoting.
experimentation, discovery, and pivoting.

We don't enforce a hard template in an attempt to enhance author's
We do not enforce a hard template in an attempt to enhance author's
expressability and creativity.

We enter this level by posting an `Initial Working Draft` that covers:
Expand Down

0 comments on commit b229eb1

Please sign in to comment.