Sometimes making sketches how things work help me to contextualize how stuff should work. For example the Nostr subscription lifecycle. This lifecycle can only exist in the open state of a websocket connection. That websocket has it's own lifecycle as well. So you're dealing with two lifecycles at least when building stuff with Nostr.
