mirror of
https://github.com/langgenius/dify.git
synced 2026-05-05 18:08:07 +08:00
feat(trigger): refactor trigger debug event handling and improve response structures
- Renamed and refactored trigger debug event classes to enhance clarity and consistency, including changes from `TriggerDebugEventData` to `TriggerEventData` and related response classes. - Updated `DraftWorkflowTriggerNodeApi` and `DraftWorkflowTriggerRunApi` to utilize the new event structures, improving the handling of trigger events. - Removed the `TriggerDebugEventGenerator` class, consolidating event generation directly within the API logic for streamlined processing. - Enhanced error handling and response formatting for trigger events, ensuring structured outputs for better integration and debugging. This refactor improves the overall architecture of trigger debugging, making it more intuitive and maintainable.
This commit is contained in:
@ -51,12 +51,10 @@ class QueueEvent(StrEnum):
|
||||
PING = "ping"
|
||||
STOP = "stop"
|
||||
RETRY = "retry"
|
||||
# Trigger debug events
|
||||
TRIGGER_DEBUG_LISTENING_STARTED = "trigger_debug_listening_started"
|
||||
TRIGGER_DEBUG_RECEIVED = "trigger_debug_received"
|
||||
TRIGGER_DEBUG_NODE_FINISHED = "trigger_debug_node_finished"
|
||||
TRIGGER_DEBUG_WORKFLOW_STARTED = "trigger_debug_workflow_started"
|
||||
TRIGGER_DEBUG_TIMEOUT = "trigger_debug_timeout"
|
||||
TRIGGER_LISTENING_STARTED = "trigger_listening_started"
|
||||
TRIGGER_TRIGGERED = "trigger_triggered"
|
||||
TRIGGER_NODE_FINISHED = "trigger_node_finished"
|
||||
TRIGGER_LISTENING_TIMEOUT = "trigger_listening_timeout"
|
||||
|
||||
|
||||
class AppQueueEvent(BaseModel):
|
||||
@ -724,35 +722,35 @@ class QueueParallelBranchRunSucceededEvent(AppQueueEvent):
|
||||
"""loop id if node is in loop"""
|
||||
|
||||
|
||||
class QueueTriggerDebugListeningStartedEvent(AppQueueEvent):
|
||||
class QueueTriggerListeningStartedEvent(AppQueueEvent):
|
||||
"""
|
||||
QueueTriggerDebugListeningStartedEvent entity
|
||||
QueueTriggerListeningStartedEvent entity
|
||||
"""
|
||||
|
||||
event: QueueEvent = QueueEvent.TRIGGER_DEBUG_LISTENING_STARTED
|
||||
event: QueueEvent = QueueEvent.TRIGGER_LISTENING_STARTED
|
||||
session_id: str
|
||||
webhook_url: str
|
||||
timeout: int
|
||||
|
||||
|
||||
class QueueTriggerDebugReceivedEvent(AppQueueEvent):
|
||||
class QueueTriggerTriggeredEvent(AppQueueEvent):
|
||||
"""
|
||||
QueueTriggerDebugReceivedEvent entity
|
||||
QueueTriggerTriggeredEvent entity
|
||||
"""
|
||||
|
||||
event: QueueEvent = QueueEvent.TRIGGER_DEBUG_RECEIVED
|
||||
event: QueueEvent = QueueEvent.TRIGGER_TRIGGERED
|
||||
subscription_id: str
|
||||
triggers: list[str]
|
||||
request_id: str
|
||||
timestamp: float
|
||||
|
||||
|
||||
class QueueTriggerDebugNodeFinishedEvent(AppQueueEvent):
|
||||
class QueueTriggerNodeFinishedEvent(AppQueueEvent):
|
||||
"""
|
||||
QueueTriggerDebugNodeFinishedEvent entity
|
||||
QueueTriggerNodeFinishedEvent entity
|
||||
"""
|
||||
|
||||
event: QueueEvent = QueueEvent.TRIGGER_DEBUG_NODE_FINISHED
|
||||
event: QueueEvent = QueueEvent.TRIGGER_NODE_FINISHED
|
||||
id: str
|
||||
node_id: str
|
||||
node_type: str
|
||||
@ -763,23 +761,12 @@ class QueueTriggerDebugNodeFinishedEvent(AppQueueEvent):
|
||||
execution_metadata: Optional[Mapping[str, Any]] = None
|
||||
|
||||
|
||||
class QueueTriggerDebugWorkflowStartedEvent(AppQueueEvent):
|
||||
class QueueTriggerListeningTimeoutEvent(AppQueueEvent):
|
||||
"""
|
||||
QueueTriggerDebugWorkflowStartedEvent entity
|
||||
QueueTriggerListeningTimeoutEvent entity
|
||||
"""
|
||||
|
||||
event: QueueEvent = QueueEvent.TRIGGER_DEBUG_WORKFLOW_STARTED
|
||||
subscription_id: str
|
||||
triggers: list[str]
|
||||
request_id: str
|
||||
|
||||
|
||||
class QueueTriggerDebugTimeoutEvent(AppQueueEvent):
|
||||
"""
|
||||
QueueTriggerDebugTimeoutEvent entity
|
||||
"""
|
||||
|
||||
event: QueueEvent = QueueEvent.TRIGGER_DEBUG_TIMEOUT
|
||||
event: QueueEvent = QueueEvent.TRIGGER_LISTENING_TIMEOUT
|
||||
error: str = "Timeout waiting for trigger"
|
||||
|
||||
|
||||
|
||||
@ -83,11 +83,10 @@ class StreamEvent(Enum):
|
||||
TEXT_REPLACE = "text_replace"
|
||||
AGENT_LOG = "agent_log"
|
||||
# Trigger debug events
|
||||
TRIGGER_DEBUG_LISTENING_STARTED = "trigger_debug_listening_started"
|
||||
TRIGGER_DEBUG_RECEIVED = "trigger_debug_received"
|
||||
TRIGGER_DEBUG_NODE_FINISHED = "trigger_debug_node_finished"
|
||||
TRIGGER_DEBUG_WORKFLOW_STARTED = "trigger_debug_workflow_started"
|
||||
TRIGGER_DEBUG_TIMEOUT = "trigger_debug_timeout"
|
||||
TRIGGER_LISTENING_STARTED = "trigger_listening_started"
|
||||
TRIGGER_LISTENING_TIMEOUT = "trigger_listening_timeout"
|
||||
TRIGGER_TRIGGERED = "trigger_triggered"
|
||||
TRIGGER_NODE_FINISHED = "trigger_node_finished"
|
||||
|
||||
|
||||
class StreamResponse(BaseModel):
|
||||
@ -846,35 +845,35 @@ class AgentLogStreamResponse(StreamResponse):
|
||||
|
||||
|
||||
# Trigger Debug Stream Responses
|
||||
class TriggerDebugListeningStartedResponse(StreamResponse):
|
||||
class TriggerListeningStartedResponse(StreamResponse):
|
||||
"""
|
||||
TriggerDebugListeningStartedResponse entity
|
||||
TriggerListeningStartedResponse entity
|
||||
"""
|
||||
|
||||
event: StreamEvent = StreamEvent.TRIGGER_DEBUG_LISTENING_STARTED
|
||||
event: StreamEvent = StreamEvent.TRIGGER_LISTENING_STARTED
|
||||
session_id: str
|
||||
webhook_url: str
|
||||
timeout: int
|
||||
|
||||
|
||||
class TriggerDebugReceivedResponse(StreamResponse):
|
||||
class TriggerTriggeredResponse(StreamResponse):
|
||||
"""
|
||||
TriggerDebugReceivedResponse entity
|
||||
TriggerTriggeredResponse entity
|
||||
"""
|
||||
|
||||
event: StreamEvent = StreamEvent.TRIGGER_DEBUG_RECEIVED
|
||||
event: StreamEvent = StreamEvent.TRIGGER_TRIGGERED
|
||||
subscription_id: str
|
||||
triggers: list[str]
|
||||
request_id: str
|
||||
timestamp: float
|
||||
|
||||
|
||||
class TriggerDebugNodeFinishedResponse(StreamResponse):
|
||||
class TriggerNodeFinishedResponse(StreamResponse):
|
||||
"""
|
||||
TriggerDebugNodeFinishedResponse entity
|
||||
TriggerNodeFinishedResponse entity
|
||||
"""
|
||||
|
||||
event: StreamEvent = StreamEvent.TRIGGER_DEBUG_NODE_FINISHED
|
||||
event: StreamEvent = StreamEvent.TRIGGER_NODE_FINISHED
|
||||
id: str
|
||||
node_id: str
|
||||
node_type: str
|
||||
@ -885,21 +884,10 @@ class TriggerDebugNodeFinishedResponse(StreamResponse):
|
||||
execution_metadata: Optional[Mapping[str, Any]] = None
|
||||
|
||||
|
||||
class TriggerDebugWorkflowStartedResponse(StreamResponse):
|
||||
class TriggerListeningTimeoutResponse(StreamResponse):
|
||||
"""
|
||||
TriggerDebugWorkflowStartedResponse entity
|
||||
TriggerListeningTimeoutResponse entity
|
||||
"""
|
||||
|
||||
event: StreamEvent = StreamEvent.TRIGGER_DEBUG_WORKFLOW_STARTED
|
||||
subscription_id: str
|
||||
triggers: list[str]
|
||||
request_id: str
|
||||
|
||||
|
||||
class TriggerDebugTimeoutResponse(StreamResponse):
|
||||
"""
|
||||
TriggerDebugTimeoutResponse entity
|
||||
"""
|
||||
|
||||
event: StreamEvent = StreamEvent.TRIGGER_DEBUG_TIMEOUT
|
||||
event: StreamEvent = StreamEvent.TRIGGER_LISTENING_TIMEOUT
|
||||
error: str = "Timeout waiting for trigger"
|
||||
|
||||
Reference in New Issue
Block a user