Quiero pegar esto para conservarlo y poder cerrar una pestaña: código sin probar del LLM, presentado aquí como un parche de mono para aplicar en la consola de Rails a un sistema en ejecución, pero que también contiene una corrección sugerida por el LLM para esta fragilidad que causa el error:
# Re-abrir CurrentUserSerializer para sobrescribir el método roto
class CurrentUserSerializer < ApplicationSerializer
def has_new_upcoming_changes
last_visited = object.custom_fields["last_visited_upcoming_changes_at"]
# Extraer la cadena si está en caché como un arreglo por el preloader
last_visited = last_visited.first if last_visited.is_a?(Array)
return false if last_visited.blank? && object.created_at < Discourse.site_creation_date + 1.hour
cutoff = last_visited.present? ? Time.zone.parse(last_visited.to_s) : object.created_at
UpcomingChangeEvent.added.not_backfilled.where("created_at > ?", cutoff).exists?
end
end