dograh/api/services/integrations/tuner
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
client.py feat: add Tuner Integration to Dograh (#311) 2026-05-20 14:37:33 +05:30
collector.py fix timestamps in tuner accumelator (#335) 2026-05-21 07:43:50 +05:30
completion.py feat: add Tuner Integration to Dograh (#311) 2026-05-20 14:37:33 +05:30
node.py fix: disable duplicate trigger nodes in workflow builder (#402) 2026-06-19 15:59:30 +05:30
runtime.py feat: add Tuner Integration to Dograh (#311) 2026-05-20 14:37:33 +05:30