Git 중단 및 관리자/모더레이터 계정 오류 페이지 문제

다시 돌아가서 말하자면… 당시 저는 예외를 발생시키는 코드가 실행되지 않기를 바라며 관리자 설정을 변경하려 하고 있었습니다.

하지만 우리가 정말 확인하고 싶은 것은 수정이 필요한 코드 버그가 있는지, 아니면 데이터베이스에 있어서는 안 되는 이상한 값이 있는지입니다. 혹은 둘 다일 수도 있죠.

백트레이스는 app/serializers/current_user_serializer.rb 파일의 이 코드로 이어집니다.

  def has_new_upcoming_changes
    last_visited = object.custom_fields["last_visited_upcoming_changes_at"]
    return false if last_visited.blank? && object.created_at < Discourse.site_creation_date + 1.hour
    cutoff = last_visited.present? ? Time.zone.parse(last_visited) : object.created_at
    UpcomingChangeEvent.added.not_backfilled.where("created_at > ?", cutoff).exists?
  end

데이터 탐색 쿼리를 실행하여 관리자 계정의 last_visited_upcoming_changes_at 값이 무엇인지 확인할 수 있습니다.

SELECT 
    ucf.id AS custom_field_id, 
    ucf.user_id, 
    u.username,
    ucf.name, 
    ucf.value 
FROM user_custom_fields ucf
INNER JOIN users u ON u.id = ucf.user_id
WHERE ucf.name = 'last_visited_upcoming_changes_at'
  AND u.admin = true

이것이 유용한 결과를 줄 수 있습니다. 제 경우(최근 v2026.7.3으로 업데이트됨)에는 날짜 문자열이었는데, 이것이 정상적인 형태라고 생각합니다.