add some way to persistent task