We've added a manual impl of `Encode` in: - https://github.com/sigp/lighthouse/pull/7806 It's still not completely clear why we can't use derive. We could revisit this to simplify this code somewhat.