Jon, Michael's response is perfect, I don't have much to add - tasks/flows are supposed to be stateless because each run might be running on an entirely different container/pod/infra, might need to be restarted, retried, and it's recommended to leverage functional programming style to pass data when needed without any shared global state