[backend] move projpacks data freeing to when we got an result in async case