Stream: t-compiler/wg-meta

Topic: mcp process


nikomatsakis (Apr 13 2020 at 20:46, on Zulip):

So I was talking to @simulacrum about moving to a final decision on the git subtree MCP

nikomatsakis (Apr 13 2020 at 20:46, on Zulip):

And I realized a few things

nikomatsakis (Apr 13 2020 at 20:46, on Zulip):

So, specific to https://github.com/rust-lang/compiler-team/issues/266 --

nikomatsakis (Apr 13 2020 at 20:46, on Zulip):

I think we've had plenty of exposure and we can just say we're in FCP, it was semi-announced last week

nikomatsakis (Apr 13 2020 at 20:46, on Zulip):

though it's supposed to start at a meeting, so we could wait for that

nikomatsakis (Apr 13 2020 at 20:46, on Zulip):

which is probably also fine

nikomatsakis (Apr 13 2020 at 20:47, on Zulip):

but also the terminology here is maybe confusing and this process is kind of annoying me already in some minor ways

nikomatsakis (Apr 13 2020 at 20:47, on Zulip):

On the matter of terminology, FCP sort of refers to three things, two of which are pre-existing:

nikomatsakis (Apr 13 2020 at 20:47, on Zulip):

I worry we will be endlessly confused here

nikomatsakis (Apr 13 2020 at 20:49, on Zulip):

On the topic of things being annoying, though, I think we need to figure out the process for "announcing" that an MCP has a second and will move to be accepted pretty soon. I also think it might be nice if it can start asynchronously anytime, but it needs to include at least one meeting? Or should it always start on a Thursday?

nikomatsakis (Apr 13 2020 at 20:49, on Zulip):

I imagine for many changes -- especialy those like subtree that have had a fair amount of discussion -- it just feels unnecessary to wait.

simulacrum (Apr 13 2020 at 20:49, on Zulip):

I like async starts

simulacrum (Apr 13 2020 at 20:49, on Zulip):

it always feels really awkward to wait if you have everything lined up

nikomatsakis (Apr 13 2020 at 20:49, on Zulip):

Yeah exactly

simulacrum (Apr 13 2020 at 20:50, on Zulip):

once question: do we want the meeting in which it's brought up to be after the second, or before?

simulacrum (Apr 13 2020 at 20:50, on Zulip):

I'd be in favor of either

simulacrum (Apr 13 2020 at 20:50, on Zulip):

to make it lightweight

nikomatsakis (Apr 13 2020 at 20:51, on Zulip):

so the process could be:

You post a comment like

Hey @rust-lang/compiler, I second this proposal!

and add the final-comment-period label.

At the next meeting, we list out all the things with the final-comment-period label to make sure people know they're happening.

After a week has passed, you can move ahead -- or, if you feel confident it will work out, after the meeting is fine.

nikomatsakis (Apr 13 2020 at 20:51, on Zulip):

ah, hmm, I guess I can go either way

nikomatsakis (Apr 13 2020 at 20:51, on Zulip):

I had in mind that people got notified after the second, because that's like "oh hey this is happening"

nikomatsakis (Apr 13 2020 at 20:51, on Zulip):

instead of "hmm this is an idea"

simulacrum (Apr 13 2020 at 20:52, on Zulip):

yeah, that's true

simulacrum (Apr 13 2020 at 20:52, on Zulip):

let's go with that

nikomatsakis (Apr 13 2020 at 20:52, on Zulip):

how hard would it be to automate the above?

simulacrum (Apr 13 2020 at 20:52, on Zulip):

though we should make sure that the notification at the meeting has at least a day or two after it

nikomatsakis (Apr 13 2020 at 20:52, on Zulip):

e.g., so I wrote rustbot second or something

simulacrum (Apr 13 2020 at 20:52, on Zulip):

maybe the fcp should start at the meeting then? Not sure

nikomatsakis (Apr 13 2020 at 20:52, on Zulip):

simulacrum said:

though we should make sure that the notification at the meeting has at least a day or two after it

yeah I mean ideally it'd be a week, though I suspect a lot of cases (like this one) that feels like overkill

nikomatsakis (Apr 13 2020 at 20:53, on Zulip):

that reminds me that I wanted to make a special zulip stream for these sorts of things

simulacrum (Apr 13 2020 at 20:53, on Zulip):

fcp is normally 10 days

nikomatsakis (Apr 13 2020 at 20:53, on Zulip):

side note that I seconded git subtree 10 days -- I think I actually did annoucne that at the meeting

nikomatsakis (Apr 13 2020 at 20:54, on Zulip):

so in some sense we've been keeping the procedure :)

nikomatsakis (Apr 13 2020 at 20:54, on Zulip):

but I forget

simulacrum (Apr 13 2020 at 20:54, on Zulip):

so let's maybe have this:

nikomatsakis (Apr 13 2020 at 20:54, on Zulip):

yep

simulacrum (Apr 13 2020 at 20:54, on Zulip):

not sure if the ping is helpful

nikomatsakis (Apr 13 2020 at 20:54, on Zulip):

ideally it would also post into the zulip stream

nikomatsakis (Apr 13 2020 at 20:54, on Zulip):

probably the ping isn't needed

nikomatsakis (Apr 13 2020 at 20:55, on Zulip):

since they can just skim the final-comment-period labels

nikomatsakis (Apr 13 2020 at 20:55, on Zulip):

but @Santiago Pastorino can decide

simulacrum (Apr 13 2020 at 20:55, on Zulip):

okay, I can probably get that going

simulacrum (Apr 13 2020 at 20:56, on Zulip):

I think it probably doesn't make sense for the bot to create a zulip stream though?

simulacrum (Apr 13 2020 at 20:56, on Zulip):

since it probably already exists

nikomatsakis (Apr 13 2020 at 20:58, on Zulip):

sorry so

nikomatsakis (Apr 13 2020 at 20:58, on Zulip):

I will make a zulip stream

nikomatsakis (Apr 13 2020 at 20:58, on Zulip):

PS I'm going to declare compiler-team#266 accepted :)

simulacrum (Apr 13 2020 at 20:59, on Zulip):

@nikomatsakis I meant the per-change stream

simulacrum (Apr 13 2020 at 20:59, on Zulip):

er, not stream

nikomatsakis (Apr 13 2020 at 20:59, on Zulip):

yeah so .. here's what I want, two things

simulacrum (Apr 13 2020 at 20:59, on Zulip):

topic

nikomatsakis (Apr 13 2020 at 20:59, on Zulip):
nikomatsakis (Apr 13 2020 at 21:00, on Zulip):
nikomatsakis (Apr 13 2020 at 21:00, on Zulip):

(or perhaps within #t-compiler)

nikomatsakis (Apr 13 2020 at 21:00, on Zulip):

anyway, something like that

nikomatsakis (Apr 13 2020 at 21:00, on Zulip):

maybe it'd just be nice to have a kind of "procedural announcements" stream

simulacrum (Apr 13 2020 at 21:00, on Zulip):

I think they're both feasible, yeah...

simulacrum (Apr 13 2020 at 21:00, on Zulip):

I think having dedicated topics per thing though is good

simulacrum (Apr 13 2020 at 21:01, on Zulip):

(easier on the backend, too)

nikomatsakis (Apr 13 2020 at 21:02, on Zulip):

So @Mark-Simulacrum and I were talking on Zulip and we wanted to tweak the process as follows:

nikomatsakis (Apr 13 2020 at 21:03, on Zulip):

draft comment, does that sound right?

simulacrum (Apr 13 2020 at 21:03, on Zulip):

to be clear, this fcp does not have the rfcbot checklist

simulacrum (Apr 13 2020 at 21:03, on Zulip):

since that's 'too heavyweight'

nikomatsakis (Apr 13 2020 at 21:03, on Zulip):

right

simulacrum (Apr 13 2020 at 21:03, on Zulip):

:thumbs_up: from me in that case

nikomatsakis (Apr 13 2020 at 21:03, on Zulip):

maybe we should give it a different name

nikomatsakis (Apr 13 2020 at 21:03, on Zulip):

not sure what but...

nikomatsakis (Apr 13 2020 at 21:04, on Zulip):

maybe just "mcp-seconded"

simulacrum (Apr 13 2020 at 21:04, on Zulip):

'objection period'

simulacrum (Apr 13 2020 at 21:04, on Zulip):

not sure :)

nikomatsakis (Apr 13 2020 at 21:04, on Zulip):

I mean we could say, you write second, and it becomes a "seconded MCP"

nikomatsakis (Apr 13 2020 at 21:04, on Zulip):

10 days after an MCP has been seconded, if there's no objections or concerns raised, it is accepted

simulacrum (Apr 13 2020 at 21:05, on Zulip):

I would.. avoid tagging more onto MCP I think

nikomatsakis (Apr 13 2020 at 21:05, on Zulip):

we don't have a name for that period I guess

nikomatsakis (Apr 13 2020 at 21:05, on Zulip):

side note that

nikomatsakis (Apr 13 2020 at 21:06, on Zulip):

I'd like to change the normal FCP process to start the clock as soon as you say rfcbot fcp merge

nikomatsakis (Apr 13 2020 at 21:06, on Zulip):

hmm I'm not sure if what I was going to say makes sense

nikomatsakis (Apr 13 2020 at 21:06, on Zulip):

anyway these things feel similar, kind of a question of how much "pre-checking" you need

simulacrum (Apr 13 2020 at 21:07, on Zulip):

indeed

Santiago Pastorino (Apr 13 2020 at 21:10, on Zulip):

nikomatsakis said:

but Santiago Pastorino can decide

yeah we can skim the things using the label, remember to let me know when do we need to start doing so :)

simulacrum (Apr 13 2020 at 21:13, on Zulip):

ah we should probably start now

simulacrum (Apr 13 2020 at 21:46, on Zulip):

@nikomatsakis are you planning to create the stream?

simulacrum (Apr 13 2020 at 21:46, on Zulip):

or are we putting in t-compiler for now?

nikomatsakis (Apr 14 2020 at 18:06, on Zulip):

I guess I will create it now

nikomatsakis (Apr 14 2020 at 18:07, on Zulip):

Created #t-compiler/major changes

simulacrum (Apr 14 2020 at 18:08, on Zulip):

let me update the triagebot.toml on the compiler-team repo to point there

simulacrum (Apr 14 2020 at 18:09, on Zulip):

done

nikomatsakis (Apr 16 2020 at 15:15, on Zulip):

Hmm, so @Vadim Petrochenkov mentioned in rfc#2904 discussing thread that they would prefer a regular fcp for stabilizing user-facing features:

I don't like that the process for stabilizing a minor user facing feature is different now between language/library and compiler.

Submitting a PR and starting an FCP worked well enough in all these cases.
(Except that waiting for one more week after everyone ticked their boxes often feels excessive.)

I'm trying to think how to integrate that feedback exactly. I'm not sure I agree that submitting a PR worked well enough, in that I think many people don't know the procedure, and there is frequently not enough documentation or other notes along the way. But I am inclined to agree that for "end-user facing features" a full team FCP seems reasonable (I also agree that waiting another week often feels silly.)

nikomatsakis (Apr 16 2020 at 15:16, on Zulip):

I would also kind of like to have a "smooth line" between MCP and larger proposals -- i.e., the starting point is an MCP, and what can happen is that it gets "upgraded" to requiring a full fcp, because it is a larger decision or impacts end users etc

nikomatsakis (Apr 16 2020 at 15:16, on Zulip):

This then effectively becomes the lang team idea I was kicking around for having people propose ideas and look for a sponsor before jumping to a full RFC -- after all, maybe the idea is simple enough it doesn't merit an RFC

nikomatsakis (May 07 2020 at 15:44, on Zulip):

So I'm amending the MCP RFC and I want to raise the question of policy around "user-facing changes"

nikomatsakis (May 07 2020 at 15:44, on Zulip):

@Vadim Petrochenkov commented:

I don't like that the process for stabilizing a minor user facing feature is different now between language/library and compiler.

Submitting a PR and starting an FCP worked well enough in all these cases.
(Except that waiting for one more week after everyone ticked their boxes often feels excessive.)

Last update: Sep 28 2020 at 16:00UTC