Well, so skipping the closing li tags is perfectly valid, so I would definitely consider this a bug with canjs.
What would be really awesome is if we could just set a global flag to toss all whitespace between elements when creating the renderer. So many headaches would just disappear.