Obviously, there not being a way to specify the end of a list, and multiple line breaks making list item contents paragraphs, the only way to have adjacent lists is to alternate between ordered and unordered lists.
1. ordered list item - unordered list item
The above text outputs:
<ol><li><p>ordered list item</p></li><li><p>unordered list item</p></li></ol>
This seems like a bug to me. I tested in the "canonical" PHP version and it does distinguish the lists. It seems that Showdown is more greedy than expected when looking ahead for subsequent list item markers. This is how it's rendered off the server:
ordered list item
- unordered list item
Edit: egads, the server version has a completely other bug (rendering the second list as a child of the first).