Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

1/COSS: New RFC Process #4

Merged
merged 24 commits into from
Aug 9, 2024
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 17 additions & 19 deletions vac/1/coss.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,8 @@ It is equivalent except for some areas:
- standards track specifications SHOULD follow a specific structure that both streamlines editing,
and helps implementers to quickly comprehend the specification
- specifications MUST feature a header providing specific meta information
- section explaining the [IFT](https://free.technology/) Vac RFC specification process
- raw specifications will not be assigned numbers
- section explaining the [IFT](https://free.technology/) Request For Comments specification process managed by the Vac service department

## License

Expand Down Expand Up @@ -81,25 +82,25 @@ Primarily, COSS uses a wiki model for editing and publishing specifications text

* The *domain* is the conservancy for a set of specifications.
* The *domain* is implemented as an Internet domain.
* Each specification is a document together with references and attached resources.
* Each specification is a text document together with references and attached resources.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd revert this to the general: document

* A *sub-domain* is a initiative under a specific domain.

Individuals can become members of the *domain* by completing the necessary legal clearance.
The copyright, patent, and trademark policies of the domain must be clarified in an Intellectual Property policy that applies to the domain.

Specifications exist as multiple pages, one page per version,
(discussed below in "Branching and Merging").
which may be assigned URIs that MAY include an incremental number.
(discussed below in "Branching and Merging"),
which should be assigned URIs that MAY include an number identifier.

Thus, we refer to new specifications by specifying its domain, sub-domain and short name.
Thus, we refer to new specifications by specifying its domain, its sub-domain and short name.
The syntax for a new specification reference is:

<domain>/<sub-domain>/<shortname>

For example, this specification is **rfc.vac.dev/vac/COSS**,
For example, this specification should be **rfc.vac.dev/vac/COSS**,
if the status were **raw**.

When awarded **draft** status, a number will be assigned to the specification.
A number will be assigned to the specification when obtaining **draft** status.
New versions of the same specification will be assigned a new number.
The syntax for a specification reference is:

Expand All @@ -108,7 +109,7 @@ The syntax for a specification reference is:
For example, this specification is **rfc.vac.dev/vac/1/COSS**.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the same as line 101

The short form **1/COSS** may be used when referring to the specification from other specifications in the same domain.

Every specification (including branches) carries a different number.
Specifications (excluding raw specifications) carries a different number including branches.

## COSS Lifecycle

Expand All @@ -132,7 +133,8 @@ Raw specifications have no contractual weight.

### Draft Specifications

When raw specifications can be demonstrated, they become **draft** specifications.
When raw specifications can be demonstrated,
they become **draft** specifications and are assigned numbers.
Changes to draft specifications should be done in consultation with users.
Draft specifications are contracts between the editors and implementers.

Expand Down Expand Up @@ -224,16 +226,14 @@ This will enable programmatic access to specification metadata.
| **tags** | 0 or several tags | list | waku-application, waku-core-protocol |
| **editor** | editor name/email | string | Oskar Thoren <[email protected]> |
| **contributors** | contributors | list | - Pieter Hintjens <[email protected]><br> - André Rebentisch <[email protected]><br> - Alberto Barrionuevo <[email protected]><br> - Chris Puttick <[email protected]><br> - Yurii Rashkovskii <[email protected]> |
| **date** | time | string | July, 1 2024 |

### IFT/Vac RFC Process

---
*** Note: ***

> [!Note]
This section is introduced to allow contributors to understand the IFT
(Institute of Free Technology) Vac RFC specification process.
Other orgranziations may make changes to this section according to their needs.
---

Vac is a department under the IFT organization that provides RFC (Request For Comments) specification services.
This service works to help faciliate the RFC process, assuring standards are followed.
Expand All @@ -246,14 +246,12 @@ the Vac RFC process SHOULD facilitate all updates to the specification.

RFC specifcations are introduced by teams,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the context of IFT, subdomain = BU / team (for instance Nomos, Codex, Waku)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be introduced above

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mentioned 5 projects that currently create specifications

under a specific *domain*, with the intentions of becoming technically mature documents.
When specification has obtained draft status a new number wil be assigned.
Standards track specifications SHOULD be based on the [Vac RFC template](../template.md).

When a specification is promoted to *draft* status,
the number that is assigned MAY be incremental in nature
or random based on other factors.
Copy link
Contributor

@kaiserd kaiserd Jul 19, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

random based on other factors

This is too vague.

Let's just say. A number is agreed upon by the sub-domain and the Vac process

Standards track specifications MUST be based on the [Vac RFC template](../template.md) before obtaining a new status.
All changes, comments, and contributions SHOULD be documented.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This section needs to fully spec the process.
We can do this in a follow-up PR. There is much more to it.
Should ideally also link the teams repos etc...


A number will be assigned to indicate the specification has entered the [Vac RFC](rfc.vac.dev) process.

## Conventions

Where possible editors and contributors are encouraged to:
Expand Down
Loading