I thought that sessions with no name/alias and no further tasks pending quit.
POE::Component::IRC's register state increments the refcount on the calling session, which would also have kept it alive also. japhy's only problem was that he posted register from the POE::Component::Server::TCP session, so the events (and the refcount increment) were going there instead.
PS: I know this is a bit after the fact and a bit off-topic, but I figure the more we talk about POE the better. The Monastery seems to have a dearth of discussion about POE, which I think is a shame.