This sort of issue seems common in a few places. E.g. Vue's component props can have defaults, and woe betide you if you use a literal object or array as a default, instead of a function that returns an object or array.
I'm surprised there was no lint rule for this case.
I'm surprised there was no lint rule for this case.