user->calculateAchievements(); } /** * Recalculate after a flight is updated. * Cabin class, flight type, airline, etc. may have changed, * which could unlock or revoke achievements. */ public function updated(UserFlight $flight): void { $flight->user->calculateAchievements(); } /** * Recalculate after a flight is deleted. * Previously earned achievements may no longer be valid. */ public function deleted(UserFlight $flight): void { $flight->user->calculateAchievements(); } }