In the new generation of MediaWiki event schemas we want to restric the schemas to have monomorphic types everywhere, thus require that a certain property could only have a single possible type. The only place where it's not true right now is in the recentchange event - we allow the properties to be null. This is not consistent with the rest of the schemas, where null properties are just absent from the event. We need to make recentchange events conform to this bt clearing out the null properties.
After the patch was deployed we do not have nulls in recent change schema anymore, however we still can not declare victory and get rid of all of the polymorphic types in the schema. The log_params can be either an object or an array and, judging by the code, it can actually be a non-empty array in rare cases. Not sure what to do about that.
Since we'll be able to support map types with new schemas (once we get that stuff running in Hadoop), we might be able to just always convert log_params to a map in eventbus extension. Can we just always somehow make this a simple string: string map?