(إخلاء مسؤولية: لست مبرمج روبي)
أعتقد أن هذا سلوك بغيض بشكل خاص في مكتبة البريد التي يستخدمها ديسكورس. إليك دالة header_value:
على حد علمي، فإن @message.header[name] تستدعي هذه الطريقة:
https://www.rubydoc.info/github/mikel/mail/Mail%2FHeader:[]
وفقًا لـ RFC، يمكن أن تظهر العديد من الحقول أكثر من مرة، وسنعيد سلسلة نصية للقيمة إذا كان هناك رأس واحد فقط، أو إذا كان هناك أكثر من رأس مطابق، فسنعيد مصفوفة من القيم بالترتيب الذي تظهر به في الرأس مرتبة من الأعلى إلى الأسفل.
يقوم ديسكورس بتعيين رأس Precedence تلقائيًا، لذلك نظرًا لأنك تضيف واحدًا أيضًا عبر إعداد email_custom_headers، فهناك الآن رأسان Precedence، ويعيد @message.header["Precedence"] مصفوفة بدلاً من سلسلة نصية.
أعتقد أن هذه المشكلة سيتم تفعيلها في أي وقت يحتوي فيه email_custom_headers على رأس موجود بالفعل في كائن الرسالة.