monitor indexer progress via tasks
generalize target iterator