Better Get/Push Async Semantics + State tracking