use zustand to have global state of pubsub data for each source connection in a collection
save pubsub messages in browser session, so it is not gone on refresh
update in UI
cancel sync button that waits for the job to get cancelled (can take a while because of temporal)
running time live
hard refresh when switching between source connection view
deterministic triggers for subscribing