热更新有个问题

版本3.10

按照正常的逻辑
std::unordered_map<std::string, Manifest::AssetDiff> diff_map = _localManifest->genDiff(_remoteManifest);
开始要先找到所有的diff,只更新diff,这个没有问题。

但是,如果更新到中间的时候,强制关闭游戏,再进入游戏,会更新所有没有更新过的文件,但其实并不是diff,因为这个方法里面,只要状态不是DownloadState::SUCCESSED,都会加入到待更新列表中…
void Manifest::genResumeAssetsList(DownloadUnits *units) const

请解答

说的不太明确.
问题是,在热更新到中间的某个时刻, 强制关闭游戏, 再进, 更新包会变的巨大, 因为并没有判断MD5,只判断了downloadState