Candidate Recommendation and Living Specs

Hello group,

I noticed a question on "Living Spec" in the draft minutes of the last 
WebGPU WG meeting [1] :

 > KN: What’s the difference between Living Spec and just periodically 
pushing new CRs?
 > CW: could ask fdaoust@ to explain this.

The W3C Process does not have a notion of a "Living Spec", but it now 
has a (relatively simple) mechanism that allows groups to do something 
close to what a "Living Standard" is in WHATWG. That mechanism 
essentially amounts to periodically pushing new CRs. It does not have a 
real name. I'll continue to call it "Living Spec" mode here.

In practice, the CR stage is divided into two statuses: CR snapshot and 
CR draft.

Publication of a CR snapshot requires some validation (wide review, 
formal approval). It also triggers a Call for Exclusions from a patent 
policy perspective, and brings related Royalty-Free licensing 
guarantees.

Publication of a CR draft is just like publishing a Working Draft, which 
you are already doing on a daily basis: no wide review, no formal 
validation, and no guarantee.

To enter the CR stage, you need to publish a CR snapshot. After that, 
you may publish as many CR drafts as you want. Then, once in a while, 
you will publish another CR snapshot (the Process says that a snapshot 
"SHOULD be published within 24 months of the Working Group accepting any 
proposal for a substantive change" [2]), both to record support from the 
web community at large, and to bring Royalty-Free licensing guarantees 
for the new features.

You may do that forever but that's the part that requires rechartering 
of the group: in the absence of a statement in the charter that says 
that the specifications will stay at the CR stage, the expectation is 
that they will eventually reach the Recommendation stage. With the 
rechartering, you would effectively be telling the world that you 
operate under a "Living Spec" mode. That seems a good idea to me for the 
specs you develop, because they will likely see new features being added 
over time, with no clear "we're fully done" milestone.


 > KR: WebIDL had a working draft that published CRs periodically and it 
was very confusing because there were two very different versions of the 
spec, one very out of date.

That should no longer happen. As soon as you've published a CR snapshot, 
you can publish CR drafts with each and every commit made to the main 
branch of the repository, using the same automated publication system as 
today. The version on /TR will remain in sync with the editor's draft. 
Said differently, https://www.w3.org/TR/webgpu/ will always return the 
latest published version of the WebGPU spec, it won't stay stuck at the 
CR snapshot.

In short, don't see CR as being a frozen state. That was the case a long 
time ago. It no longer is! For the specs you develop, it is very likely 
that you will need to publish more than one CR snapshot and plenty of CR 
drafts, even if you don't recharter to switch to a "Living Spec" mode. 
The first CR snapshot does not need to be perfect. It is good if all 
features that you consider needed for a first implementation are roughly 
specified. It is totally fine to have lots of editorial todos in the 
spec, and fine if you already know that some features need to be 
revisited afterwards.

Hope that helps :)
François.

[1] 
https://docs.google.com/document/d/1XcJ2CeiF2bY7LUMOWvQXmFY5pLF74A_AfDxmg4LX_z4/edit#heading=h.yrx696uk7n8t
[2] https://www.w3.org/2023/Process-20231103/#publishing-crrs

Received on Wednesday, 3 April 2024 10:43:54 UTC