I didn't want to rewrite more of this code than I had to. I have some further thought for both publishers and consumers, but they're out of scope for this ticket.