[eluser]Damien K.[/eluser]
@OP, thank you for putting your question in context. I'm inclined to say that this use case is not a good cadidate for caching, because (1) comments are dynamic (new ones can be added) and caching will not show new comments. Okay, we'll assume the post has closed off comments as it's an old post and the admin still wants to be able to edit the comments. And (2) because the page contains "dynamic" content (ie, edit links).
Clearly, we have members of the community who insist on caching

.
I see why you're doing this though. I assume you have a few million hits a day viewing your blog archives and cannot scale

. First, how are you caching your pages? CI's built-in feature or your own? I see you mention CI and I also see "show_cache()" and "create_cache()", which I don't think are CI functions. If you're using CI, where are you testing for the logged_in cookie?
However, the short (and I believe is the ideal) answer is: don't cache. I'm not trying to evade your question, because this clearly is implementable.
Btw, to put things in perspective, I don't believe Facebook even worry about these. It is unlikely that their code-base is even efficient, at least not majority of it. I don't have evidence to back this up, but people who code for them are no different from you and I. Facebook would scale via hardware, which is the cheapest way. I do like how you're approaching this though.