ARF report original_email field unexpected type

Hi everyone !

We run out on an issue regarding the ARF report data structure.

The field feedback_report.original_message is now an array of char before it was a string.

"feedback_report":{"version":"1","original_message":[65,117,116,104,101,110,116,105,99,97,116,105,11,..], "user_agent":"JMRP/1.0","feedback_type":"abuse"},"id":"<anonymized id>","hostname":"<anonymized host>","tls_cipher":"TLS13_AES_256_GCM_SHA384","created":"2026-06-18T17:23:11.699107900Z","timestamp":"2026-06-18T17:23:11.700752069Z","size":9267}

We are on the latest version 2026.05.12-a6845223. I don’t see any changes linked to this. And according to the documentation it should be a string.

For now I hotfixed it in our lua script that publish logs to our rabbitmq :

...
-- fix for feedbackloop empty array '{}' and original_message wrongly typed
if data["feedback_report"] ~= nil then
    for key, value in pairs(data["feedback_report"]) do
        if type(value) == 'table' and next(value) == nil then
            data["feedback_report"][key] = nil
        end
        if type(value) == 'table' and key == 'original_message' then
            data["feedback_report"][key] = string.char(table.unpack(value))
        end
    end
end

Fixed next to a the empty array that are types as object by the way :stuck_out_tongue: .

Thanks for your reply :slight_smile:

This should be fixed in Dev. It is in the current unreleased changes. We plan to roll a stable soon. From the changelog:

  • The feedback_report.original_message field, and the values in the associated extensions map, in Feedback log records produced for incoming ARF reports were being serialized as a JSON array of byte values rather than the string shape documented in the log_record reference. They are now emitted as a JSON string when the underlying bytes are valid UTF-8, falling back to a byte array only for non-UTF-8 content. #529

Thanks for your reply. And thanks for the fix !