A minimal patch would change LazySeq.empty() to something like this:
However noted in slack that this could be solved in a more general way:
in general, most of the colls do retain metadata on empty
that seems to be missing on ASeq.empty() (which affects many subclasses) and LazySeq.empty()
some random subclasses do actually override and fix that, like ChunkedSeq.empty()
So perhaps ASeq.empty() and LazySeq.empty() can be fixed and overrides in subclasses removed.