I would cache the draft and ready versions separate here, since you have the chance to.  Basically the "error" case, (though not much of an error) is that the draft version gets cached and somehow it's very different than the ready version, thus exposing stuff that shouldn't be live or causing 404s.

In the leftnav case I couldn't cache them separately since the view cache is key on URL, so I made sure (see my PR) the cached nav originated from the ready course.