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

1/COSS: New RFC Process #4

merged 24 commits into from
Aug 9, 2024

Conversation

jimstir
Copy link
Collaborator

@jimstir jimstir commented Feb 23, 2024

Making changes to COSS to reflect new RFC process.

@jimstir jimstir marked this pull request as draft February 23, 2024 02:31
@jimstir jimstir marked this pull request as ready for review March 14, 2024 23:59
@jimstir jimstir requested a review from kaiserd March 14, 2024 23:59
Copy link
Contributor

@kaiserd kaiserd left a comment

Choose a reason for hiding this comment

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

Thank you!
I left some comments inline.

Generally, we need to be more explicit about the new process, especially about the fact that "raw" lives outside of Vac's responsibility.

Mention something like:

  • project teams write raw specifications for their protocols and components.
    The Vac RFC team may be involved in this stage already and can support writing first drafts.
  • when these specifications reach a certain level of maturity they enter the Vac RFC process and become RFC drafts;
    this step corresponds to working group adoption in the IETF [please cite IEFT working group adoption here, linking to an IEFT document explaining this.]
    We should explain that the rigorous process described in the COSS starts with a document becoming draft / getting a number.
    (you have some explanation on this in the COSS already, you can merge your text with this)
  • explain the process from draft to stable...
    you can also add that this iterative process helps identify and fix design and implementation flaws.

vac/1/coss.md Outdated
New versions of the same specification will have new numbers.
The syntax for a specification reference is:

<domain>/spec/<number>/<shortname>
<domain>/project/<number>/<shortname>
Copy link
Contributor

Choose a reason for hiding this comment

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

We should mention that setting vac as he project means the RFC is more generally applicable and not specific to one project. Vac is not a project.

vac/1/coss.md Outdated

A specification has six possible states that reflect its maturity and contractual weight:
For a specification to receive a lifecycle status,
a new specification SHOULD be presented by the project team.
Copy link
Contributor

Choose a reason for hiding this comment

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

What is a project team? That term has not been introduced yet.
We should also introduce the concept of an IFT project before.

We should also mention that non-project applications are accepted, too. We should keep the process open to the whole community not limit it to IFT. We could add such applications to vac for now.

vac/1/coss.md Outdated
A specification has six possible states that reflect its maturity and contractual weight:
For a specification to receive a lifecycle status,
a new specification SHOULD be presented by the project team.
After discussion amongst the contributors has occurred for an unspecific amount of time,
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
After discussion amongst the contributors has occurred for an unspecific amount of time,
After discussion amongst the contributors has reached rough consensus,

Ideally cite the IETF for the definition of rough consensus.

@jimstir jimstir changed the title Updating COSS 1/COSS: New RFC Process May 21, 2024

For example, this specification is **rfc.vac.dev/spec/1/COSS**.
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

vac/1/coss.md Outdated

For example, this specification is **rfc.vac.dev/vac/COSS**,
if the status were **raw**.
Note that **vac** is not a project, but a service that supports a project that could live under [IFT](https://free.technology/).
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
Note that **vac** is not a project, but a service that supports a project that could live under [IFT](https://free.technology/).
Note that **vac** is not a project, but an IFT service that supports [IFT](https://free.technology/) projects.

vac/1/coss.md Outdated
if the status were **raw**.
Note that **vac** is not a project, but a service that supports a project that could live under [IFT](https://free.technology/).
In this case,
a service MAY be used as the project if generally applicable rather than a specific project.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
a service MAY be used as the project if generally applicable rather than a specific project.
RFCs under **vac** are generally applicable rather than associated with a specific project.

vac/1/coss.md Outdated
@@ -82,35 +82,63 @@ Primarily, COSS uses a wiki model for editing and publishing specifications text
* Each domain is implemented as an Internet domain, hosting a wiki and optionally other communications tools.
* Each specification is a set of wiki pages, together with comments, attached files, and other resources.
* Important specifications may also exist as subdomains, i.e. child wikis.
* A *project* SHOULD consist of team memebers of a working group under a specific domain.
Non-project application MAY be considered a project if the working group has not established a formal domain.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
Non-project application MAY be considered a project if the working group has not established a formal domain.
Non-project applications are considered if they are within the broader topic are of IFT work.

Copy link
Contributor

@kaiserd kaiserd left a comment

Choose a reason for hiding this comment

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

Thank you. Comments in-line.

vac/1/coss.md Outdated
* 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.
* A *sub-domain* consists of a members within a team under a specific domain.
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 not mention members here.
Rather explain it abstractly similar to the domain.
The IFT specific section at the bottom will explain the IFT specific use of a sub-domain.

vac/1/coss.md Outdated


Individuals can become members of the domain or project by completing the necessary legal clearance.
Individuals can become members of the *sub-domain* by completing the necessary legal clearance.
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 move in to the IFT specific section in the bottom.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

This was included in the original COSS as domain instead of sub-domain. Change to sub-domain is not correct, I changed back to domain.

vac/1/coss.md Outdated
When the specification reaches some level of maturity,
the specification SHOULD enter the VAC RFC process.
Similar to the the IETF working group adoption described in [RFC6174](https://www.rfc-editor.org/rfc/rfc6174.html),
the VAC RFC process SHOULD facilitate all updates to the specification.
the Vac RFC process SHOULD facilitate all updates to the specification.
Copy link
Contributor

Choose a reason for hiding this comment

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

As mentioned in he meeting, the IFT/Vac specific parts should move into a separate section.

Copy link
Contributor

Choose a reason for hiding this comment

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

This part should be general, because the COSS is a doc that can be copied by another org.
We'd only add one section that is an exception to this rule.
(We could theoretically move that in a separate doc, but having it in a section in the same doc makes it easier to process.)

vac/1/coss.md Outdated
@@ -28,6 +28,7 @@ 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
- domain relate to [IFT](https://free.technology/) projects and teams
Copy link
Contributor

Choose a reason for hiding this comment

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

This would be sub-domains?

I'd rather say: - adding a section covering the IFT specific process

Copy link
Contributor

Choose a reason for hiding this comment

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

Also add raws will not have numbers

vac/1/coss.md Outdated
@@ -139,6 +140,7 @@ Raw specifications have no contractual weight.

When raw specifications can be demonstrated, they become **draft** specifications.
Changes to draft specifications should be done in consultation with users.
A number will be assigned to indicate the specification has entered the [Vac RFC](rfc.vac.dev) process.
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 in the IFT/Vac section.
Rather say: A number will be assigned once it is promoted to draft. The IFT/Vac section will mention this the start of the Vac RFC process.

vac/1/coss.md Outdated

### Specification Template
### Specification RFC Process
Copy link
Contributor

Choose a reason for hiding this comment

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

Rather call the section IFT/Vac specific RFC Process.

Also add a note:
This section is specific to the IFT/Vac RFC Process. Orgs copying this process MAY adjust this to their needs..
(something like this in better phrasing)

The RFC process will ensure that standards are met before assigning a new specification status.
All changes, comments, and contributions SHOULD be documented.
A service under a **domain**, [Vac RFC](rfc.vac.dev),
SHOULD faciliate the RFC process to assure standards are followed.

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...

vac/1/coss.md Outdated
This service works to help faciliate the RFC process, assuring standards are followed.
Contributors within the service SHOULD assistant a *sub-domain* in creating a new specification,
editing a specification, promoting the status of a specification along with other tasks.
When a specification reaches some level of maturity,
Copy link
Contributor

Choose a reason for hiding this comment

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

[...] reaches some level of maturity (agreed upon by rough consensus) [...]

vac/1/coss.md Outdated
Similar to the the IETF working group adoption described in [RFC6174](https://www.rfc-editor.org/rfc/rfc6174.html),
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

vac/1/coss.md Outdated
SHOULD faciliate the RFC process to assure standards are followed.


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

Choose a reason for hiding this comment

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

There is more to the number:

A number will be assigned to once the specification has entered the ...

vac/1/coss.md Outdated
@@ -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

vac/1/coss.md Outdated

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

Copy link
Contributor

@kaiserd kaiserd left a comment

Choose a reason for hiding this comment

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

LGTM Thank you :).

@jimstir jimstir merged commit ed2c68f into main Aug 9, 2024
2 checks passed
@jimstir jimstir deleted the 1-COSS branch August 9, 2024 14:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants