eg
```
"impacts": [
            {
              "severity": 3,
              "description": "Searches might return slower than usual. Fewer redundant copies of the data exist on 2 indices [.ds-logslogslogs-2022.03.29-000001, my-index-000001].",
              "impact_areas": [ "search" ]
            }
          ]
```
server/src/test/java/org/elasticsearch/cluster/routing/allocation/ShardsAvailabilityHealthIndicatorServiceTests.java
if (primary) {
            return state == INITIALIZING
                ? RecoverySource.EmptyStoreRecoverySource.INSTANCE
                : RecoverySource.ExistingStoreRecoverySource.INSTANCE;
        } else {
            return RecoverySource.PeerRecoverySource.INSTANCE;
        }
    }
    public enum ShardState {
        UNAVAILABLE,
        INITIALIZING,
        AVAILABLE,
        RESTARTING
    }
    private record ShardAllocation(String nodeId, ShardState state, Long unassignedTimeNanos) {
        ShardAllocation(String nodeId, ShardState state) {
            this(nodeId, state, null);
        }
    }
    private record NodeShutdown(String nodeId, SingleNodeShutdownMetadata.Type type, Integer allocationDelaySeconds) {}
    private static String randomNodeId() {
        return UUID.randomUUID().toString();
    }
    private static ShardsAvailabilityHealthIndicatorService createAllocationHealthIndicatorService(ClusterState clusterState) {
        var clusterService = mock(ClusterService.class);
        when(clusterService.state()).thenReturn(clusterState);
        return new ShardsAvailabilityHealthIndicatorService(clusterService);
    }
}