Producers should use

const { publisher, subscriber } = makePublishKit();
const topic = makePinnedHistoryTopic(subscriber);

instead, which makes it clearer that all the subscriber's history is retained, preventing GC. Potentially remote consumers use

for await (const value of subscribeEach(topic)) { ... }

Makes a { publication, subscription } for doing lossless efficient distributed pub/sub.