I don't understand. Why you again fetch Post object here in this function and then send whole list of all runs and hugs?

Why not just send an update for the particular change? If run is removed, send only that one removed run. If run is added, send only that. Why are you sending whole lists of everything every time. This is really not nice approach. Optimize please.