deft/notes/2020-11-26--10-11-23Z--meta_rfc_for_dev_team.org

123 lines
2.9 KiB
Org Mode
Raw Permalink Normal View History

2021-09-15 07:12:29 +00:00
:PROPERTIES:
:ID: a7c653a8-0b90-43bc-85ea-71bbb28cf1dd
:END:
#+TITLE: [Meta RFC] RFC template
#+Author: Yann Esposito
#+Date: [2020-11-26]
tags :: [[file:../../../../../../.org/journal/2020-11-26--10-12-21Z--work.org][work]] [[file:../../../../../../.org/journal/2020-11-26--10-12-42Z--organisation.org][organisation]]
source ::
/Abstract/: Yesterday in our weekly meeting I discussed about how I would
like us to work with RFCs.
I would like to add this document to talk about RFCs.
So this is a meta document.
I hope not to trigger the need for a meta-meta-document ;).
I will try to keep it self-referencing by using its own description.
Closer to the quine :).
*Audience*: (Who's impacted?)
+ iroh team
+ managers
*RFC kind*:
+ team organisation
** Objective
*Improvement*: Write a proper RFC template.
* Proposed Solutions
** Template
This is the template I would like us to provide.
We should probably add that as a github template for issue.
So if you declare you want to create a new RFC issue you will be presented
this template.
The author will only need to fill the blanks and remove parts that are not
relevant.
*** [Title] <- name of the issue in github
/Abstract/: A little bit more than in the title
*Audience*: (Who's impacted?)
+ iroh team
+ ops
+ ui team
+ managers
+ customers
*RFC kind*: (remove non relevant part)
+ code convention (=> Audience; iroh-team only)
- ns naming convention
- position of args
- naming of args
- etc..
+ dev tooling (=> Audience; iroh-team, maybe ops)
- emacs mode
- cider
- clj-refactor
- CI
- scripts
- git commit message
- docker
- etc...
+ team organisation (=> Audience; iroh-team, managers)
- github dashboard, issue templates, github labels, etc...
+ technical specification (Audience not constrained);
The goal of a technical specification RFC is is to produce a
document containing:
- a functional specification
- a technical specification for our team
- technical specification(s) for other team if necessary (ops, UI, etc...)
- an execution plan
**** Objectives
- *Problems*:
- *New Features*:
- *Improve the current situation*:
**** Proposed Solutions
***** [Solution 1]
Describe one possible solution
+ pros
+ cons
***** [Solution 2]
Describe another possible solution
+ pros
+ cons
**** Furter Considerations and Remarks
Generic place to put comment not suitable in any other subsection.
Typically, we could add
+ Security
+ Communication
**** Plan
Optional, complete once a consensus has been reached.
Should contain a plan to achieve the solution.
** Further Considerations and Remarks
*** =dev= label
We already have a =dev= label we should probably use for RFC whose audience
is just the iroh team.
*** =Epic= label
We should continu to use the =Epic= label for issues whose goal is to
produce a specification document along with an execution plan.