Currently if a repo fails to sync the repo.postsync.d hooks still get called. Depending on what the hooks do this can leave things in an inconsistent state, or at the very least do some unnecessary work (eg. needlessly running egencache when nothing has changed). I think it makes more sense to only run the hooks when the sync succeeds.