This is definitely a rough edge, and I’m not 100% happy with the solution we currently have.
If we were inventing a light markup language from scratch, I’d want to require a blank line before a list or sublist (see Beyond Markdown), for this and many other reasons.
But we’re not, so we need to find a compromise that works.