diff --git a/src/decision_process/reference.md b/src/decision_process/reference.md index 44e2391..526ba52 100644 --- a/src/decision_process/reference.md +++ b/src/decision_process/reference.md @@ -59,6 +59,35 @@ agree with the decision. They (or another team member) should then set their status to `dissent`. +# Delegation of decisions + +We trust other teams to make decisions about their areas of expertise, without +waiting on language team approval on every such decision. + +If the matter being decided seems non-trival or subtle, then we do wish to be +part of the decision-making process. But if the answer for a problem seems obvious, +and the corresponding decision is reversible, then it need not wait on T-lang nomination and approval. + +For example, we trust the compiler team to fix obvious bugs that are not +intended to be part of the Rust language and have minimal known breakage. See +for instance [PR #129422](https://github.com/rust-lang/rust/pull/129422), which +corrected a mistake in the implementation of `#[repr(Rust)]`). Since the correction +being applied here was changing a no-op to an error, we have the option of +reversing the decision (going from an error back to a no-op), and thus this decision +can be delegated without having to go through T-lang nomination and approval. + +However, when another team makes a language-relevant decision, the language team +also wants to be aware of it. This way we can ensure that the set of delegated +decisions do not drift out of their intended scope. + +If your team is making a decision that impacts the language, please ensure that +a link to the decision (and any related discussion) appears in the agenda for +the language team's triage upcoming meeting. + +(If a decision cannot be easily descibed and justified in a short snippet of +text, then it possibly needs to be brought to the attention of the language team +through the normal nomination process.) + # Rustbot commands The following commands are accepted by rustbot. (Commands written below omit