Controllo di esistenza su findAncestorModel

Sto dando un’occhiata allo sviluppo dei plugin e ho notato che, in casi come quello del discourse translator, dopo aver recuperato un modello widget tramite findAncestorModel(), viene eseguita una verifica sull’esistenza del risultato prima di procedere. Vedo che questo accade anche nel codice sorgente, per esempio:

  _getTopicUrl() {
    const post = this.findAncestorModel();
    return post ? post.get("topic.url") : null;
  },

Ma ci sono anche casi in cui non viene controllata l’esistenza del modello antenato, qualche riga più sotto:

      const post = this.findAncestorModel();
      const controller = this.register.lookup("controller:topic");
      return post
        .get("topic.postStream")
        .filterUpwards(this.attrs.id)
        .then(() => {
          controller.updateQueryParams();
        });

Quanto è affidabile l’esistenza del risultato di findAncestorModel? Dipende dal widget in cui ci troviamo, o è buona norma gestire sempre una risposta null, anche in situazioni in cui sembra davvero improbabile, come nel menu del post?