From 315cf7a23cb3d121f2fd8f0d64daff751deb69ad Mon Sep 17 00:00:00 2001 From: "yunlu.wen" Date: Mon, 8 Dec 2025 16:47:21 +0800 Subject: [PATCH 1/3] fix: get event handler safely --- python/dify_plugin/core/trigger_factory.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/python/dify_plugin/core/trigger_factory.py b/python/dify_plugin/core/trigger_factory.py index fee1a829..eae9b7ba 100644 --- a/python/dify_plugin/core/trigger_factory.py +++ b/python/dify_plugin/core/trigger_factory.py @@ -140,11 +140,14 @@ def get_subscription_constructor_cls(self, provider_name: str) -> type[TriggerSu # ------------------------------------------------------------------ def get_trigger_event_handler_safely(self, provider_name: str, event: str, runtime: EventRuntime) -> Event | None: - entry = self._get_entry(provider_name) - if event not in entry.events: + try: + entry = self._get_entry(provider_name) + if event not in entry.events: + return None + _, event_cls = entry.events[event] + return event_cls(runtime) + except ValueError: return None - _, event_cls = entry.events[event] - return event_cls(runtime) def get_trigger_event_handler(self, provider_name: str, event: str, runtime: EventRuntime) -> Event: """Instantiate an event for the given provider and event name.""" From 88f5b3e28b37953d7a85804526d0c457aa1b1dbe Mon Sep 17 00:00:00 2001 From: Yunlu Wen Date: Mon, 8 Dec 2025 17:26:40 +0800 Subject: [PATCH 2/3] Update python/dify_plugin/core/trigger_factory.py Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- python/dify_plugin/core/trigger_factory.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/python/dify_plugin/core/trigger_factory.py b/python/dify_plugin/core/trigger_factory.py index eae9b7ba..b8eb1557 100644 --- a/python/dify_plugin/core/trigger_factory.py +++ b/python/dify_plugin/core/trigger_factory.py @@ -140,15 +140,16 @@ def get_subscription_constructor_cls(self, provider_name: str) -> type[TriggerSu # ------------------------------------------------------------------ def get_trigger_event_handler_safely(self, provider_name: str, event: str, runtime: EventRuntime) -> Event | None: - try: + try: entry = self._get_entry(provider_name) - if event not in entry.events: - return None - _, event_cls = entry.events[event] - return event_cls(runtime) except ValueError: return None + if event not in entry.events: + return None + _, event_cls = entry.events[event] + return event_cls(runtime) + def get_trigger_event_handler(self, provider_name: str, event: str, runtime: EventRuntime) -> Event: """Instantiate an event for the given provider and event name.""" From ad3465712277571a6acdeda4d95f0b3315c151a8 Mon Sep 17 00:00:00 2001 From: Yunlu Wen Date: Tue, 9 Dec 2025 10:15:08 +0800 Subject: [PATCH 3/3] Update python/dify_plugin/core/trigger_factory.py Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- python/dify_plugin/core/trigger_factory.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/python/dify_plugin/core/trigger_factory.py b/python/dify_plugin/core/trigger_factory.py index b8eb1557..d60481a4 100644 --- a/python/dify_plugin/core/trigger_factory.py +++ b/python/dify_plugin/core/trigger_factory.py @@ -140,11 +140,9 @@ def get_subscription_constructor_cls(self, provider_name: str) -> type[TriggerSu # ------------------------------------------------------------------ def get_trigger_event_handler_safely(self, provider_name: str, event: str, runtime: EventRuntime) -> Event | None: - try: - entry = self._get_entry(provider_name) - except ValueError: + entry = self._providers.get(provider_name) + if not entry: return None - if event not in entry.events: return None _, event_cls = entry.events[event]