Voglio incollare questo per conservarlo, così da poter chiudere una scheda: codice non testato generato da un LLM, presentato qui come una monkey patch da applicare nella console di Rails su un sistema in esecuzione, ma che contiene anche una correzione suggerita dall’LLM per questa fragilità che causa l’errore:
# Riapre CurrentUserSerializer per sovrascrivere il metodo rotto
class CurrentUserSerializer < ApplicationSerializer
def has_new_upcoming_changes
last_visited = object.custom_fields["last_visited_upcoming_changes_at"]
# Estrae la stringa se è stata memorizzata in cache come array dal 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