def audience_overlap_warnings()

in experimenter/experimenter/experiments/models.py [0:0]


    def audience_overlap_warnings(self):
        warnings = []
        excluded_live_deliveries = ""
        if self.excluded_live_deliveries:
            excluded_live_deliveries = ", ".join(self.excluded_live_deliveries)

        feature_has_live_multifeature_experiments = ""
        if self.feature_has_live_multifeature_experiments:
            feature_has_live_multifeature_experiments = ", ".join(
                self.feature_has_live_multifeature_experiments
            )

        live_experiments_in_namespace = ""
        if self.live_experiments_in_namespace:
            live_experiments_in_namespace = ", ".join(self.live_experiments_in_namespace)

        overlapping_warnings = (
            feature_has_live_multifeature_experiments
            and live_experiments_in_namespace
            and feature_has_live_multifeature_experiments in live_experiments_in_namespace
        )

        if self.status in [NimbusConstants.Status.DRAFT, NimbusConstants.Status.PREVIEW]:
            if excluded_live_deliveries:
                warnings.append(
                    {
                        "text": NimbusUIConstants.EXCLUDING_EXPERIMENTS_WARNING,
                        "slugs": self.excluded_live_deliveries,
                        "variant": "warning",
                        "learn_more_link": NimbusUIConstants.AUDIENCE_OVERLAP_WARNING,
                    }
                )

            if live_experiments_in_namespace and not overlapping_warnings:
                warnings.append(
                    {
                        "text": NimbusUIConstants.LIVE_EXPERIMENTS_BUCKET_WARNING,
                        "slugs": self.live_experiments_in_namespace,
                        "variant": "warning",
                        "learn_more_link": NimbusUIConstants.AUDIENCE_OVERLAP_WARNING,
                    }
                )

            if feature_has_live_multifeature_experiments:
                warnings.append(
                    {
                        "text": NimbusUIConstants.LIVE_MULTIFEATURE_WARNING,
                        "slugs": self.feature_has_live_multifeature_experiments,
                        "variant": "warning",
                        "learn_more_link": NimbusUIConstants.AUDIENCE_OVERLAP_WARNING,
                    }
                )

        return warnings