Warum verursacht der Aufruf von super in PostSerializer#raw einen 500er Fehler, während object.raw funktioniert?

Danke für die Erklärung!
Sie hatten Recht – das erneute Öffnen von ::PostSerializer war das Problem. Nach dem Wechsel zu prepend funktioniert alles wie erwartet.

Ich verwende jetzt dieses Modul:

module PostSerializerExtension
  def raw
    if scope.can_edit?(object)
      super
    else
      object.raw&.truncate(300)
    end
  end
end

reloadable_patch do
  require_dependency "post_serializer"
  ::PostSerializer.prepend(::PostSerializerExtension)
end

Das funktioniert auf meiner Seite perfekt. Nochmals vielen Dank für die Anleitung!