dograh/api/services/workflow/node_specs
nuthalapativarun 7d053320df
fix: disable duplicate trigger nodes in workflow builder (#402)
* fix: disable duplicate trigger nodes in workflow builder

AddNodePanel: disable trigger buttons and show tooltip when a trigger
already exists on the canvas, using bySpecName to identify trigger-
category specs from the live node list.
useWorkflowState: preflight in saveWorkflow rejects saves with multiple
trigger nodes via a sonner toast before the network request is made.
text_chat_session_service: include the original exception message in
TextChatSessionExecutionError so the HTTP 500 detail surfaces the root
cause without DB inspection.

Closes #378

* style: format test_text_chat_session_service.py with ruff

* chore: retrigger CI checks

* fix(workflow): enforce node instance constraints

---------

Co-authored-by: Abhishek Kumar <abhishek@a6k.me>
2026-06-19 15:59:30 +05:30
..
__init__.py feat: add Tuner Integration to Dograh (#311) 2026-05-20 14:37:33 +05:30
__main__.py feat: refactor node spec and add mcp tools (#244) 2026-04-21 07:56:16 +05:30
_base.py fix: disable duplicate trigger nodes in workflow builder (#402) 2026-06-19 15:59:30 +05:30
constants.py feat: add Tuner Integration to Dograh (#311) 2026-05-20 14:37:33 +05:30
display_options_fixtures.json feat: refactor node spec and add mcp tools (#244) 2026-04-21 07:56:16 +05:30
model_spec.py feat: add Tuner Integration to Dograh (#311) 2026-05-20 14:37:33 +05:30