Não acho que haja preocupações com privacidade, pois o endpoint .json já existe de qualquer forma, este é apenas um tipo diferente de formatação.
@cvx / @j.jaffeux, o que acham de trazer de volta o .ics para a rota de índice de eventos (removido em: DEV: Remove old ics code by CvX · Pull Request #231 · discourse/discourse-calendar · GitHub)? Parece uma vitória fácil para mim.
Nós já fazemos:
DiscoursePostEvent::EventFinder.search(current_user, filtered_events_params)
E podemos ter um MAX_RESULTS (ordenado pelo mais recente) para garantir que isso e o .json não fiquem muito grandes.