diff --git a/backend/alwrity_utils/router_manager.py b/backend/alwrity_utils/router_manager.py index eee799ce..876262f6 100644 --- a/backend/alwrity_utils/router_manager.py +++ b/backend/alwrity_utils/router_manager.py @@ -83,17 +83,16 @@ class RouterManager: @staticmethod def get_enabled_features() -> set: - """Get enabled features from environment variable. + """Get enabled features from ALWRITY_ENABLED_FEATURES env var. - ALWRITY_ENABLED_FEATURES can be: + Values: - "all" - enable all features (default) - - comma-separated list: "podcast,blog-writer,youtube" + - comma-separated: "podcast,blog-writer,youtube" - single feature: "podcast" + + DEPRECATED: ALWRITY_FEATURE_PROFILE, ALWRITY_ROUTER_PROFILE, ALWRITY_FEATURE_TO_ENABLE """ - env_value = os.getenv( - "ALWRITY_ENABLED_FEATURES", - os.getenv("ALWRITY_FEATURE_PROFILE", os.getenv("ALWRITY_ROUTER_PROFILE", "all")) - ).strip().lower() + env_value = os.getenv("ALWRITY_ENABLED_FEATURES", "all").strip().lower() if not env_value or env_value == "all": return {"all"} diff --git a/backend/app.py b/backend/app.py index f863996f..b61a57da 100644 --- a/backend/app.py +++ b/backend/app.py @@ -60,17 +60,16 @@ def _env_flag_enabled(*env_names: str) -> bool: def get_enabled_features() -> set: - """Get enabled features from environment variable. + """Get enabled features from ALWRITY_ENABLED_FEATURES env var. - ALWRITY_ENABLED_FEATURES can be: + Values: - "all" - enable all features (default) - - comma-separated list: "podcast,core" + - comma-separated: "podcast,core" - single feature: "podcast" + + DEPRECATED: ALWRITY_FEATURE_PROFILE, ALWRITY_ROUTER_PROFILE, ALWRITY_FEATURE_TO_ENABLE """ - env_value = os.getenv( - "ALWRITY_ENABLED_FEATURES", - os.getenv("ALWRITY_FEATURE_PROFILE", os.getenv("ALWRITY_ROUTER_PROFILE", "all")) - ).strip().lower() + env_value = os.getenv("ALWRITY_ENABLED_FEATURES", "all").strip().lower() if not env_value or env_value == "all": return {"all"} diff --git a/backend/start_alwrity_backend.py b/backend/start_alwrity_backend.py index 254c4b41..95c67e5a 100644 --- a/backend/start_alwrity_backend.py +++ b/backend/start_alwrity_backend.py @@ -27,17 +27,16 @@ LINGUISTIC_REQUIRED_FEATURES = {"content_planning", "strategy_copilot", "faceboo def get_enabled_features() -> set: - """Get enabled features from environment variable. + """Get enabled features from ALWRITY_ENABLED_FEATURES env var. - ALWRITY_ENABLED_FEATURES can be: + Values: - "all" - enable all features (default) - - comma-separated list: "podcast,blog-writer,youtube" + - comma-separated: "podcast,blog-writer,youtube" - single feature: "podcast" + + DEPRECATED: ALWRITY_FEATURE_PROFILE, ALWRITY_ROUTER_PROFILE, ALWRITY_FEATURE_TO_ENABLE """ - env_value = os.getenv( - "ALWRITY_ENABLED_FEATURES", - os.getenv("ALWRITY_FEATURE_PROFILE", os.getenv("ALWRITY_ROUTER_PROFILE", "all")) - ).strip().lower() + env_value = os.getenv("ALWRITY_ENABLED_FEATURES", "all").strip().lower() if not env_value or env_value == "all": return {"all"} @@ -46,7 +45,7 @@ def get_enabled_features() -> set: def get_active_profile() -> str: - """Legacy function - returns primary profile for backwards compatibility.""" + """Legacy function - use get_enabled_features() instead.""" enabled = get_enabled_features() if "all" in enabled: return "all" diff --git a/frontend/src/utils/demoMode.ts b/frontend/src/utils/demoMode.ts index 730096ac..0c5dfc65 100644 --- a/frontend/src/utils/demoMode.ts +++ b/frontend/src/utils/demoMode.ts @@ -1,22 +1,26 @@ /** * Consolidated feature mode detection utilities. * - * Uses ALWRITY_ENABLED_FEATURES (backend) / REACT_APP_ENABLED_FEATURES (frontend) - * Format: "all" or comma-separated features: "podcast,core" + * Primary: REACT_APP_ENABLED_FEATURES (format: "all" or "podcast,core") + * + * DEPRECATED (fallback order): + * - REACT_APP_APP_MODE + * - REACT_APP_DEMO_MODE + * - REACT_APP_PODCAST_ONLY_DEMO_MODE */ const ENABLED_FEATURES_STORAGE_KEYS = [ + 'enabled_features', // Primary 'app_mode', - 'enabled_features', 'demo_mode', 'podcast_only_demo_mode', ]; const ENABLED_FEATURES_ENV_KEYS = [ - 'REACT_APP_ENABLED_FEATURES', - 'REACT_APP_APP_MODE', - 'REACT_APP_DEMO_MODE', - 'REACT_APP_PODCAST_ONLY_DEMO_MODE', + 'REACT_APP_ENABLED_FEATURES', // Primary - use this! + 'REACT_APP_APP_MODE', // DEPRECATED + 'REACT_APP_DEMO_MODE', // DEPRECATED + 'REACT_APP_PODCAST_ONLY_DEMO_MODE', // DEPRECATED ]; /**