Discobot이 잘못된 사용자의 인증서를 발급합니다

기본 튜토리얼을 완료한 후, 최소 3명의 사용자가 Discobot에서 다른 사용자의 인증서를 받는 문제를 경험했습니다. URL을 살펴보면, 날짜와 사용자 ID도 전달된 인증서에 표시된 것과 다릅니다. URL에는 올바른 정보가 표시되지만, 이미지에는 그렇지 않습니다. https://tokenae.com/discobot/certificate.svg?date=Jan+31+2026&user_id=12

원인이 무엇인지 정확히 알 수 없습니다. 문제 발생 시간보다 몇 시간 전에 튜토리얼을 수행한 다른 사용자들은 인증서를 정상적으로 받았습니다. 심지어 서로 다른 인증서가 잘못 배정되는 경우도 있는데, 예를 들어 사용자 x는 사용자 y의 인증서를, 사용자 c는 사용자 b의 인증서를 받는 식입니다. 또한, 봇의 메시지 텍스트에는 해당 사용자를 호명할 때 올바른 사용자 이름이 표시되므로, 겉으로 보기에는 이 부분을 올바르게 처리하고 있는 것으로 보입니다.

도움을 주시면 감사하겠습니다!

2개의 좋아요

저희 호스팅 환경에서는 이 문제를 재현할 수 없습니다. 따라서 이는 캐싱 문제일 가능성이 있으며, 특히 CDN을 사용하고 계신다면 서버 또는 CDN 쪽에서 발생하는 문제일 수 있다고 생각합니다.

해당 라우트는 24시간 동안 캐시되도록 설정되어 있습니다. 그러나 일부 구성에서는 요청을 캐시할 때 쿼리 매개변수를 저장하지 않습니다. 이로 인해 잘못된 사용자에게 잘못된 이미지가 표시되는 현상이 설명될 수 있습니다.

다만 저희 호스팅 환경에서는 재현할 수 없으므로, 해당 브랜치를 테스트해 보시고 실제로 문제가 해결되는지 확인해 주실 수 있을까요? DEV: Skip caching discobot certificate generation - Pull Request #37495 - discourse/discourse - GitHub (해당 라우트의 캐싱을 제거하는 한 줄 변경 사항입니다.)

2개의 좋아요