Commit graph

5 commits

Author SHA1 Message Date
Devanshu Rastogi
2447a55e22
Fix: Workflow app crashes when user clicks on response node (#13217)
* Added controller and service for fetching logs and nodes seperately

* Add inifinte scroll pagination for workflow logs

* Fix "All Nodes" not renderd on Nodes column

* Fix reducer to append logs on Logs column

* Fix: incorrect code placement

* Fix reducer to append logs on Nodes column

* Prepend execution log on workflow run

* Fix node ordering

* Decouple logs panel from workflow editor

* Update execution nodes when log panel is opened

* Reset log selection on workflow run

* Added 'updatePreviewState' function

* Update ee-server submodule reference
2025-07-07 10:37:46 +05:30
Akshay Sasidharan
69a61051cf feat: migrate PR #3745 - Release: Workflow prioritised client issues (v3.5.62-ee-lts)
🚀 Features:
- Workflow node specific errors are thrown on App builder, Workflow builder and Webhook triggers
- Enhanced error handling with specific node error reporting

🌟 Enhancements:
- Node preview shows hints and errors
- Improved node preview functionality showing errors and hints

🛠️ Fixes:
- Loop node preview fix
- Fix query id shown for failed nodes
- Enhanced error visualization in workflow logs panel

Migration Details:
- Applied composition pattern for frontend workflow components
- Enhanced QueryNodeConfiguration with better error handling and node preview
- Updated LogsPanel with collapsible error details and new triangle icons
- Improved ResponseNodeConfiguration with updated preview state management
- Updated workflow reducer to handle new preview state structure
- Added workflow execution node handle utility function

Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>
Co-authored-by: Muhsin Shah C P <muhsinshah21@gmail.com>
2025-07-03 18:44:40 +05:30
Akshay Sasidharan
f11ea30325 feat: migrate workflow-in-workflow capabilities and enhanced node preview (PR #3735)
Migrate hotfix for workflow blockers including:

- Feature: Ability to call workflow within a workflow
- Feature: Preview query node with other previewed node results
- Fix: startTrigger input accepts string values instead of code/JSON

Frontend changes:
- Add workflow-in-workflow support in FlowBuilder and QueryNodeConfiguration
- Enhance query node preview with upstream node state management
- Implement preview state cleanup with deleteNodePreviewState calls
- Replace TestParameter input with CodeHinter for better JSON editing
- Add workflow node type support and error styling
- Update WorkflowEditor components for nested workflow handling

Backend changes:
- Update workflow execution controller to handle state parameter
- Enhance PreviewWorkflowNodeDto with optional state field
- Modify workflow services for state-aware query execution
- Update triggers listener and webhooks service

Migration follows composition pattern for frontend EE modules and
inheritance pattern for backend services.

Co-authored-by: Akshay Sasidharan <akshaysasidrn@tooljet.com>
Co-authored-by: Shah <shah21@tooljet.com>
Co-authored-by: Devanshu <devanshu052000@tooljet.com>
2025-07-03 14:06:15 +05:30
Akshay Sasidharan
131ff6a288 feat: Setup async workflow query execution with SSE
Overview
This PR implements real-time workflow execution monitoring using Server-Sent Events (SSE) as part of our LTS feature support. The implementation allows for tracking long-running workflows without requiring deployment changes.

Technical Changes
1. Server Components
Added WorkflowStreamService to manage persistent SSE streams with automatic cleanup
Implemented @sse endpoint in WorkflowExecutionsController for streaming status updates
Created WorkflowTriggersListener to emit workflow execution events with EventEmitter2
Added workflow execution status constants to identify different states in the execution lifecycle
2. Client-side Components
Implemented AsyncQueryHandler to manage SSE connections and parse event streams
Enhanced queryPanelSlice with methods to create async handlers and trigger workflows
Added support for non-blocking workflow execution with real-time status updates
3. Workflow Integration
Modified workflow triggering to use the SSE-based monitoring approach
Maintained same-server architecture to avoid deployment changes
Added automatic reconnection handling and error recovery for client connections
Architecture Decisions
Selected Same Server Approach: Chose to implement workflows within the same HTTP server to maintain the existing deployment setup for LTS users
Real-time Updates with SSE: Leveraged Server-Sent Events for their simplicity, efficiency, and compatibility with existing infrastructure
Future Extension Path: Implementation can be extended to Worker Threads or Microservice architecture later if needed
2025-07-01 19:17:07 +05:30
gsmithun4
269ec56455 Initial commit 2025-02-25 12:22:50 +05:30