In entrambi i casi, direi che tests_passed è solitamente sufficiente. Puoi evitare problemi di aggiornamento disponendo di un ambiente di staging e testando le tue release prima di applicare gli aggiornamenti.
I problemi che hai descritto sopra riguardano più i tuoi processi di rilascio che un ramo specifico di Discourse.