@Override
    public boolean decide(TroubleshootingContext context) throws HyscaleException {
        String serviceName = context.getServiceMetadata().getServiceName();

        List<V1Pod> podsList = ConditionUtil.getPods(context);

        if (podsList == null || podsList.isEmpty()) {
            logger.debug("No pods found for service: {}", serviceName);
            context.addReport(DiagnosisReportUtil.getServiceNotDeployedReport(serviceName));
            throw new HyscaleException(TroubleshootErrorCodes.SERVICE_IS_NOT_DEPLOYED, serviceName);
        }

        return podsList.stream().anyMatch(pod -> !K8sPodUtil.checkForPodCondition(pod, PodCondition.POD_SCHEDULED)
                || K8sPodUtil.checkForPodCondition(pod, PodCondition.UNSCHEDULABLE));
    }
This class checks for any Unschedulable pod or any pod with {@link PodCondition#POD_SCHEDULED}
condition = true . In either of the cases the pod is not scheduled to any node. To know more
about <a href="https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-conditions">pod condition</a>
deployer/troubleshooting-integration/src/main/java/io/hyscale/troubleshooting/integration/conditions/PodScheduleCondition.java