Класс задачи не был предоставлен, поэтому для этого примера я предполагаю, что он является строкой. Все, что вам нужно сделать, это собрать все ключи с окончательной карты, которые существуют на исходной карте, если они имеют одинаковый статус. Вы можете собрать в список, а затем работать после.
Map<String, String> initialTaskStatus = new HashMap<>();
Map<String, String> finalTaskStatus = new HashMap<>();
List<String> tasks = initialTaskStatus.keySet().stream()
.filter(initialTask -> finalTaskStatus.keySet()
.stream().anyMatch(finalTask -> finalTask.equalsIgnoreCase(initialTask)))
.collect(Collectors.toList());
List<String> completeOrCancelled = tasks.stream()
.filter(task -> task.equalsIgnoreCase("COMPELTE") || task.equalsIgnoreCase("CANCELLED"))
.collect(Collectors.toList());
List<String> inProgress = tasks.stream()
.filter(task -> task.equalsIgnoreCase("IN_PROGRESS"))
.collect(Collectors.toList());
completeOrCancelled.forEach(task -> System.out.println("Complete or cancelled!"));
inProgress.forEach(task -> System.out.println("In progress!"));