Skip to content

Conversation

@ivicac
Copy link
Contributor

@ivicac ivicac commented Dec 29, 2025

  • 682 client - Generate
  • 682 client - Add support for asynchronous workflow test execution and SSE streaming
  • 682 client - Add support for asynchronous workflow test execution and SSE streaming in embedded
  • 682 client - Add tests

@ivicac ivicac changed the title 682 client 682 client - Add support for asynchronous workflow test execution and SSE streaming in embedded Dec 29, 2025
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds support for asynchronous workflow test execution using Server-Sent Events (SSE) streaming, enabling real-time progress updates during workflow test runs across both platform and embedded contexts.

Key Changes:

  • Implements SSE-based streaming for workflow test execution with job persistence and reconnection support
  • Adds navigation guards to prevent accidental page exits during active test runs
  • Replaces synchronous API calls with asynchronous streaming architecture across all workflow editors

Reviewed changes

Copilot reviewed 20 out of 20 changed files in this pull request and generated 21 comments.

Show a summary per file
File Description
client/src/shared/util/testWorkflow-utils.ts New utility functions for building SSE stream requests (POST to start, GET to attach) with XSRF token handling
client/src/shared/hooks/useSSE.ts Custom React hook implementing SSE connection management with custom event handlers and connection state tracking
client/src/shared/hooks/usePersistJobId.ts Hook for persisting job IDs in localStorage to enable reconnection after page refresh
client/src/shared/hooks/tests/useSSE.test.ts Comprehensive test suite for the useSSE hook covering event dispatching, connection states, and handler updates
client/src/shared/middleware/platform/workflow/test/apis/WorkflowTestApi.ts Replaces synchronous testWorkflow endpoint with stopWorkflowTest endpoint for aborting runs
client/src/shared/middleware/platform/workflow/test/models/index.ts Removes TestWorkflowRequest export (now defined inline in utils)
client/src/shared/middleware/platform/workflow/test/models/TestWorkflowRequest.ts Formatting fixes and documentation updates
client/src/shared/middleware/platform/workflow/test/models/GetStatus200Response.ts New model for workflow test status responses containing running state and jobId
client/src/pages/platform/workflow-editor/components/workflow-test-chat/runtime-providers/WorkflowTestChatRuntimeProvider.tsx Migrates chat-based workflow testing from sync API to SSE streaming with job persistence
client/src/pages/platform/workflow-editor/components/WorkflowCodeEditorSheet.tsx Updates code editor workflow testing to use SSE streaming with stop button implementation
client/src/pages/automation/project/components/project-header/hooks/useProjectHeader.ts Adds SSE streaming, job persistence, and auto-reconnection to project workflow tests
client/src/pages/automation/project/components/project-header/hooks/tests/useProjectHeader.test.tsx New tests covering reattachment on mount, stop endpoint interaction, and stream request building
client/src/pages/automation/project/components/ProjectLeaveDialog.tsx New dialog warning users about leaving during active test runs
client/src/pages/automation/project/Project.tsx Implements navigation blocking, beforeunload/pagehide handlers, and stop-on-leave logic for test runs
client/src/ee/pages/embedded/integration/components/integration-header/IntegrationHeaderStopButton.tsx Updates stop button to accept onClick handler prop
client/src/ee/pages/embedded/integration/components/integration-header/IntegrationHeader.tsx Migrates embedded integration workflow testing to SSE streaming with job persistence and reconnection
client/src/ee/pages/embedded/integration/components/IntegrationLeaveDialog.tsx New leave dialog for embedded integrations (mirrors ProjectLeaveDialog)
client/src/ee/pages/embedded/integration/Integration.tsx Implements navigation guards and unload handlers for embedded integration test runs
client/src/ee/pages/embedded/automation-workflows/workflow-builder/components/workflow-builder-header/hooks/useWorkflowBuilderHeader.ts Adds SSE streaming and job persistence to embedded automation workflow builder

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 34 out of 34 changed files in this pull request and generated 10 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 34 out of 34 changed files in this pull request and generated 4 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 34 out of 34 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 34 out of 34 changed files in this pull request and generated 4 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 34 out of 34 changed files in this pull request and generated 6 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 38 out of 38 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 38 out of 38 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 38 out of 38 changed files in this pull request and generated 9 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 38 out of 38 changed files in this pull request and generated 4 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@sonarqubecloud
Copy link

Quality Gate Failed Quality Gate failed for 'client'

Failed conditions
56.1% Coverage on New Code (required ≥ 80%)
9.6% Duplication on New Code (required ≤ 3%)

See analysis details on SonarQube Cloud

@ivicac ivicac merged commit 58b8fec into master Dec 30, 2025
6 of 7 checks passed
@ivicac ivicac deleted the 682_client branch December 30, 2025 05:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet