Attualmente sono presenti quattro modalità di contribuzione:
- Un membro del team Ambassador può aprire una PR da un branch verso il branch main.
- Un contributor esterno - o Ambassador - può aprire una PR da un proprio fork verso il branch main.
- Un contributor esterno - o Ambassador - può aprire una PR da un proprio fork verso un branch di un Ambassador.
Queste quattro modalità seguiranno dei processi di approvazione contenuti che verranno descritti in questo documento.
Per l'approvazione di un contenuto all'interno di un branch, che sia da parte di un Ambassador che di una figura esterna, sarà sufficiente:
- Approvazione di almeno il 50%+1 degli Ambassador assegnatari. In caso di non raggiungimento del quorum entro 15 giorni dall'apertura della PR, un qualsiasi altro Ambassador potrà fare le veci degli assegnatari non votanti.
- Superato il tempo massimo di 15 giorni dall'apertura della PR - O 15 giorni dall'ultimo commento o approvazione da parte di un Ambassador -, qualora non venga raggiunto il quorum questa sarà considerata non valida e verrà chiusa da qualsiasi Ambassador avesse modo di farlo e verrà richiesto alla persona che ha aperto la PR di riproporla cercando di creare più coinvolgimento o di modificarne il wording.
Non si ritiene necessaria la presenza del Drafting Group in questa fase in quanto sarà comunque necessario un successivo passaggio prima dell'inserimento in main dei contenuti nel quale loro saranno coinvolti e questo step creerebbe solo eccessivo lavoro per il gruppo.
Si precisa che il conteggio dei tempi di approvazione e raggiungimento del quorum inizia quando la Pull Request (PR) è contrassegnata come ready for review, e non più in draft.
Per l'approvazione di un contenuto all'interno di main, che sia da parte di un Ambassador che di una figura esterna, sarà sufficiente:
- Approvazione di almeno 3 Ambassador non membro del Drafting Group.
- Approvazione di almeno 1 Ambassador membro del Drafting Group.
- Superato il tempo massimo di 15 giorni dall'apertura della PR - O 15 giorni dall'ultimo commento o approvazione da parte di un Ambassador -, questa sarà considerata non valida e verrà chiusa da qualsiasi Ambassador avesse modo di farlo e verrà richiesto alla persona che ha aperto la PR di riproporla cercando di creare più coinvolgimento o di modificarne il wording.
Per esprimere la disapprovazione dei contenuti sarà sufficiente che un membro del team Ambassador commenti la PR indicando in maniera chiara il proprio dissenso (Pollice giù 👎, commento chiaro es. "Non approvo questo contenuto"), al quale deve seguire una spiegazione chiara. Il semplice dissenso non motivato non verrà considerato come valido.
La disapprovazione andrà a ridurre di 1 i numeri per il raggiungimento dei criteri di cui sopra.
Di conseguenza, a titolo di esempio, una PR verso main con 3 voti a favore e approvazione del drafting group ma con una disapprovazione renderà necessaria un'ulteriore approvazione per poter passare. Lo stesso vale per il conteggio del Drafting Group, per cui la disapprovazione da parte di uno dei suoi membri richiederà l'approvazione di altri 2 di essi per raggiungere il netto positivo di 1.