Upgraded various dependencies including Elsa, ElsaStudio, ElsaExtensions, MicrosoftVersion, and Resilience to their latest preview versions. These changes ensure the project stays up-to-date with the latest improvements and bug fixes.
- Created a new `Elsa.Alterations.IntegrationTests` project.
- Added `MigrationTests` to validate workflows migration from version 1 to 2.
- Updated solution file to include the new integration tests project.
* Restore EF Core persistence layer
Originally, we had moved EF Core to the extensions repo, but in practice this turned out to be rather impractical when debugging elsa-core, given that we would lose all of the state (workflow definitions, instances, etc.) across application restarts.
* Integrate PostgreSQL support into EF Core persistence and enhance BlobStorage workflows provider setup.
- Introduced `WorkflowStateCommitted` notification to encapsulate workflow execution context, state, and instance details.
- Updated `DefaultCommitStateHandler` to publish `WorkflowStateCommitted` via `IMediator`.
- Adjusted `DispatchWorkflowExtensions` to use `WorkflowStateCommitted` for workflow completion.
Updates KubernetesClient and Microsoft packages (#6917)
* Remove Proto.Cluster.Kubernetes dependency due to vulnerability
- Temporarily removed `Proto.Cluster.Kubernetes` package and provider integration because of a vulnerability in its dependency (https://avd.aquasec.com/nvd/2025/cve-2025-9708).
- Adjusted related cluster provider and remote configuration logic.
- Updated `PortAttribute` default parameter for clarity.
* Revert "Remove Proto.Cluster.Kubernetes dependency due to vulnerability"
This reverts commit 0720d970968e4f7338825407258b34ddffb1d2a4.
* Add KubernetesClient package and update MicrosoftVersion to 9.0.9
- Added `KubernetesClient` package to the project dependencies.
- Updated `MicrosoftVersion` to `9.0.9` in `Directory.Packages.props`.
Update Polly packages
- Bump Polly and Polly.Extensions package versions to 8.6.3.
Update `Microsoft.AspNetCore.Authorization` to use `MicrosoftVersion` property
Ensure Docker images ship CA trust and add TLS smoke tests (#6918)
Remove TlsSmoke project and related solution references
- Deleted `TlsSmoke` project files (`Program.cs` and `TlsSmoke.csproj`).
- Removed `TlsSmoke` project reference from the solution file (`Elsa.sln`).
Add comprehensive Copilot coding agent instructions for repository onboarding (#6920)
* Initial plan
* Add comprehensive .github/copilot-instructions.md with validated build instructions
Co-authored-by: sfmskywalker <938393+sfmskywalker@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: sfmskywalker <938393+sfmskywalker@users.noreply.github.com>
Add ForEach tests, introduce asynchronous workflow runner and enhance workflow events. (#6926)
* Introduce asynchronous workflow runner and enhance workflow events.
- Added `AsyncWorkflowRunner` to enable asynchronous workflow execution and result tracking.
- Introduced new event arguments, such as `ActivityExecutedEventArgs` and `WorkflowStateCommittedEventArgs`.
- Expanded `WorkflowEvents` class to include `ActivityExecuted`, `ActivityExecutedLogUpdated`, and `WorkflowStateCommitted` events.
- Refactored event arguments into the `Elsa.Testing.Shared.EventArgs` namespace.
- Enhanced tests with `AsyncWorkflowRunner` and new event-driven workflow scenarios.
* Refactor event argument classes to unify namespace and simplify inheritance
* Add shared component DotSettings file to support namespace exclusions
Refactor `WaitAsync` call in `DispatchWorkflowsTests` to remove unnecessary generic type.
- Introduced `WorkflowStateCommitted` notification to encapsulate workflow execution context, state, and instance details.
- Updated `DefaultCommitStateHandler` to publish `WorkflowStateCommitted` via `IMediator`.
- Adjusted `DispatchWorkflowExtensions` to use `WorkflowStateCommitted` for workflow completion.
Updates KubernetesClient and Microsoft packages (#6917)
* Remove Proto.Cluster.Kubernetes dependency due to vulnerability
- Temporarily removed `Proto.Cluster.Kubernetes` package and provider integration because of a vulnerability in its dependency (https://avd.aquasec.com/nvd/2025/cve-2025-9708).
- Adjusted related cluster provider and remote configuration logic.
- Updated `PortAttribute` default parameter for clarity.
* Revert "Remove Proto.Cluster.Kubernetes dependency due to vulnerability"
This reverts commit 0720d970968e4f7338825407258b34ddffb1d2a4.
* Add KubernetesClient package and update MicrosoftVersion to 9.0.9
- Added `KubernetesClient` package to the project dependencies.
- Updated `MicrosoftVersion` to `9.0.9` in `Directory.Packages.props`.
Update Polly packages
- Bump Polly and Polly.Extensions package versions to 8.6.3.
Update `Microsoft.AspNetCore.Authorization` to use `MicrosoftVersion` property
Ensure Docker images ship CA trust and add TLS smoke tests (#6918)
Remove TlsSmoke project and related solution references
- Deleted `TlsSmoke` project files (`Program.cs` and `TlsSmoke.csproj`).
- Removed `TlsSmoke` project reference from the solution file (`Elsa.sln`).
Add comprehensive Copilot coding agent instructions for repository onboarding (#6920)
* Initial plan
* Add comprehensive .github/copilot-instructions.md with validated build instructions
Co-authored-by: sfmskywalker <938393+sfmskywalker@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: sfmskywalker <938393+sfmskywalker@users.noreply.github.com>
Add ForEach tests, introduce asynchronous workflow runner and enhance workflow events. (#6926)
* Introduce asynchronous workflow runner and enhance workflow events.
- Added `AsyncWorkflowRunner` to enable asynchronous workflow execution and result tracking.
- Introduced new event arguments, such as `ActivityExecutedEventArgs` and `WorkflowStateCommittedEventArgs`.
- Expanded `WorkflowEvents` class to include `ActivityExecuted`, `ActivityExecutedLogUpdated`, and `WorkflowStateCommitted` events.
- Refactored event arguments into the `Elsa.Testing.Shared.EventArgs` namespace.
- Enhanced tests with `AsyncWorkflowRunner` and new event-driven workflow scenarios.
* Refactor event argument classes to unify namespace and simplify inheritance
* Add shared component DotSettings file to support namespace exclusions
Refactor `WaitAsync` call in `DispatchWorkflowsTests` to remove unnecessary generic type.
* Introduce asynchronous workflow runner and enhance workflow events.
- Added `AsyncWorkflowRunner` to enable asynchronous workflow execution and result tracking.
- Introduced new event arguments, such as `ActivityExecutedEventArgs` and `WorkflowStateCommittedEventArgs`.
- Expanded `WorkflowEvents` class to include `ActivityExecuted`, `ActivityExecutedLogUpdated`, and `WorkflowStateCommitted` events.
- Refactored event arguments into the `Elsa.Testing.Shared.EventArgs` namespace.
- Enhanced tests with `AsyncWorkflowRunner` and new event-driven workflow scenarios.
* Refactor event argument classes to unify namespace and simplify inheritance
* Add shared component DotSettings file to support namespace exclusions
* Remove Proto.Cluster.Kubernetes dependency due to vulnerability
- Temporarily removed `Proto.Cluster.Kubernetes` package and provider integration because of a vulnerability in its dependency (https://avd.aquasec.com/nvd/2025/cve-2025-9708).
- Adjusted related cluster provider and remote configuration logic.
- Updated `PortAttribute` default parameter for clarity.
* Revert "Remove Proto.Cluster.Kubernetes dependency due to vulnerability"
This reverts commit 0720d970968e4f7338825407258b34ddffb1d2a4.
* Add KubernetesClient package and update MicrosoftVersion to 9.0.9
- Added `KubernetesClient` package to the project dependencies.
- Updated `MicrosoftVersion` to `9.0.9` in `Directory.Packages.props`.
- Introduced `WorkflowStateCommitted` notification to encapsulate workflow execution context, state, and instance details.
- Updated `DefaultCommitStateHandler` to publish `WorkflowStateCommitted` via `IMediator`.
- Adjusted `DispatchWorkflowExtensions` to use `WorkflowStateCommitted` for workflow completion.
- Updated `HttpFeature` to include `SendHttpRequest` in `HttpClient` configuration delegate support.
- Added `[Port]` attributes to `FailedToConnect` and `Timeout` properties in `SendHttpRequest` activity.
- Simplified `ValueTask` return syntax in `SendHttpRequestActivityPortResolver`.
- Use `CancellationToken.None` to avoid canceling workflow execution when clients, like Blazor, terminate requests prematurely.
- Add comments for clarification on potential causes.
- Introduced `async` parameter to enable asynchronous workflow resumption.
- Refactored `ResumeBookmarkedWorkflowAsync` to handle both synchronous and asynchronous resumption via `IWorkflowResumer` and `IBookmarkQueue`.
- Updated dependency injection to include `IWorkflowResumer`.
- Adjusted `RenderEnumMember` to include a trailing comma in rendered enums.
- Excluded compiler-generated methods in `TypeDescriber`.
- Extended `VariableTypeDefinitionProvider` to handle `ManagementOptions` and refined variable type exclusion logic.
Introduced `InputEvaluationException` to encapsulate errors during input evaluation in `ActivityExecutionContextExtensions`. Refactored the input evaluation logic by adding a core evaluation method to improve error handling and clarity.