Push block completion logic into download controller