Add cache logic to archive