Nous utilisons le webhook Discourse Post Event (Lorsqu’il y a une nouvelle réponse, modification, suppression ou récupération). Lorsqu’un message dans un sujet (commentaire) est créé, il envoie un webhook et nous utilisons ces informations pour mettre à jour les données du côté WP.
J’ai remarqué que le webhook n’envoie pas de données précises, dans topic_filtered_posts_count ou topic_posts_count, après que certains messages dans un sujet sont supprimés. Il produit les bons décomptes tant que les commentaires sont ajoutés ou modifiés. Cependant, dès qu’un commentaire ou plus d’un est supprimé, ces décomptes commencent à être erronés de petites valeurs (mais de manière peu fiable, parfois erronés d’un, parfois de deux, etc.).
Nous avons inspecté les charges utiles des webhooks pour voir si le problème venait de WP ou de Discourse et il s’avère que les webhooks envoient des informations incorrectes. Parfois, il y a même une divergence entre topic_posts_count et topic_filtered_posts_count dans des situations où tous les messages sont de type :regular et où il n’y a actuellement aucun message supprimé.
Cela me fait penser que le problème est causé par la gestion asynchrone du webhook et de la (dé)suppression, mais je ne suis pas sûr que ce soit vraiment le cas.