There is a validator that prevents trait authors from adding top-level arrays of type structure due to a legacy restriction that prevented mutations to top-level arrays of structures. It's not clear why special-casing mutations to arrays of complex value types is any different from arrays of simple types.
Trait developers currently work around this by wrapping it in a struct, which is just a work-around that doesn't really solve the purported issue, but this in turn causes the schema to look just a little more odd, and the data to be encoded slightly less efficiently.
Let's remove this.