|
| 1 | +# SKIP 000 - What is a SKIP? |
| 2 | + |
| 3 | +Summary: A lightweight process for coordinating changes to SpinKube |
| 4 | + |
| 5 | +Owner: Danielle Lancashire <[email protected]> |
| 6 | + |
| 7 | +Impacted Projects: |
| 8 | + |
| 9 | +- [ ] spin-operator |
| 10 | +- [ ] `spin kube` plugin |
| 11 | +- [ ] runtime-class-manager |
| 12 | +- [ ] containerd-shim-spin |
| 13 | +- [x] Governance |
| 14 | +- [ ] Creates a new project |
| 15 | + |
| 16 | +Created: 18/04/2024 |
| 17 | + |
| 18 | +Updated: 18/04/2024 |
| 19 | + |
| 20 | +## Background |
| 21 | + |
| 22 | +SpinKube is a new project that was the "coming together" of many seperate |
| 23 | +efforts under a common banner. We've quickly found that there are changes we |
| 24 | +wish to make that cross across multiple projects, and decisions that require |
| 25 | +broader scope to be understandable. We need a lightweight way to have those |
| 26 | +discussions and reach agreement about direction. |
| 27 | + |
| 28 | +## Proposal |
| 29 | + |
| 30 | +A SKIP is a tool for recording a potential solution to a problem. It follows a |
| 31 | +specific format. There is a specific process for adopting a SKIP. And there is |
| 32 | +a process for recording when a SKIP is no longer the accepted practice. |
| 33 | + |
| 34 | +SKIPs are living documents. They change over time in both minor and major ways. |
| 35 | +The SKIP itself, combined with Git's change tracking, should indicate how it |
| 36 | +has changed. |
| 37 | + |
| 38 | +It is customary to refer to a SKIP by its number (”SKIP 004,” pronounced “skip |
| 39 | +oh-oh-four” or “skip four”). When necessary, it may also be referenced by its |
| 40 | +version (”SKIP 000 v1”) |
| 41 | + |
| 42 | +### The Document Head |
| 43 | + |
| 44 | +Two pieces of information appear at the top of the document before the |
| 45 | +Background section: |
| 46 | + |
| 47 | +- **Overview:** This is one paragraph that summarizes the document. It should |
| 48 | + contain both a summary of the decision point (problem) and a |
| 49 | + summary of the proposed solution. |
| 50 | + |
| 51 | +- For any SKIPs exceeding a couple of pages, it is recommend that a table of |
| 52 | + contents also be added. In particular, with SKIPs that have many subheadings, |
| 53 | + the table of contents can serve as an outline of the structure of the proposal. |
| 54 | + |
| 55 | +### The Background Section |
| 56 | + |
| 57 | +In the background section, clearly articulate the decision point that has |
| 58 | +necessitated this SKIP. Identify the key problem, a critical gap, or the |
| 59 | +motivating factor. A background section may be one paragraph or may be a few pages. |
| 60 | +The background section may be broken into multiple subsections (with subsections |
| 61 | +starting at Heading 3 level). |
| 62 | + |
| 63 | +On occasion, another document may clearly spell out the problem. In such cases, |
| 64 | +one is encouraged to point to that document as the definitive source, and merely |
| 65 | +summarize in the background section. |
| 66 | + |
| 67 | +However, if no such document does exist, the background section should provide |
| 68 | +ample material for understanding the issue. Links to other resources are |
| 69 | +encouraged, though the author should take into consideration the possibility |
| 70 | +that such resources may not always be available. |
| 71 | + |
| 72 | +### The Proposal Section |
| 73 | + |
| 74 | +The Proposal section outlines a proposed solution, process, or practice that |
| 75 | +clearly answers the issue as outlined in the Background section. It will be one |
| 76 | +or more paragraphs, possibly divided up into subsections. Before a SKIP can be |
| 77 | +considered, the proposal must fully address the issue raised in the background. |
| 78 | +That is, a SKIP should not be used to elaborate a problem, but to provide a |
| 79 | +solution (or provide a partial solution) for a well-articulated problem. |
| 80 | + |
| 81 | +While a proposal may reference external documents, a proposal should stand on |
| 82 | +its own without requiring the reader to read the external documents. The purpose |
| 83 | +of this requirement is to ensure that SKIPs remain a digestible and |
| 84 | +authoritative source. |
| 85 | + |
| 86 | +### The References Section |
| 87 | + |
| 88 | +The references section includes links to relevant sources of information. |
| 89 | +Not all links in the document must have an accompanying reference. This is not |
| 90 | +a works cited, but a bibliography that points to other related sources such as |
| 91 | +relevant SKIPs, external documentation, or witty XKCD comics. |
| 92 | + |
| 93 | +## Alternatives Considered |
| 94 | + |
0 commit comments