Assinaturas do Discourse - conta excluída cedo demais quando o usuário cancela - exclusão não anotada na interface do administrador

Passos realizados: Criei um usuário de teste e configurei uma assinatura recorrente de um dia, depois a cancelei (como usuário) ontem à noite por volta das 23h30 (agora são 20h30 aqui). Quando dei uma olhada esta noite, vi:

  1. Site da Stripe - assinatura listada como ativa com a observação “Agendado para cancelamento em 23 de novembro, 23:34”.
  2. Interface de administração do Discourse - assinatura listada como ativa.
  3. Interface de usuário do Discourse - a interface do usuário diz “Você não tem assinaturas ativas.” e o usuário foi removido do grupo de assinaturas do Discourse.

O que parece errado: É o item 3 que me surpreendeu - é inconsistente com a interface de administração e parece errado. Eu esperava que a assinatura fosse listada como ativa (mas “Renova: Cancelado”) e que o usuário permanecesse no grupo.

Alguns palpites: Não há nada relevante no log de webhooks da Stripe. Talvez o Discourse delete a assinatura na interface do usuário (e remova o usuário do grupo) no início do dia relevante (23 de novembro) em vez de esperar e só fazer isso ao processar o webhook? Aposto que quando tentar processar o webhook às 23h34, ele retornará um erro de cliente não encontrado.

O palpite estava certo, eu acho. Dois customer.subscription.deleted idênticos às 23:35:50 e 23:36:05 com o erro customer not found.

A assinatura agora desapareceu da página de administração do Discourse e foi cancelada no site do Stripe.