Skip to content

fix: #7936 - #7940

Open
diegomodolo wants to merge 15 commits into
elsa-workflows:mainfrom
diegomodolo:main
Open

diegomodolo wants to merge 15 commits into
elsa-workflows:mainfrom
diegomodolo:main

Conversation

@diegomodolo

@diegomodolo diegomodolo commented Aug 13, 2026

Copy link
Copy Markdown

Purpose

This PR updates the FastEndpoints package version to fix versions mismatches when using FastEndpoints in a solution with central package management.


Scope

Select one primary concern:

  • Bug fix (behavior change)
  • Refactor (no behavior change)
  • Documentation update
  • Formatting / code cleanup
  • Dependency / build update
  • New feature

Description

Problem

Elsa was using an old version of FastEndpoints, and when using central package management in a solution it would not work with newer versions.
Besides that, the newer versions of FastEndpoints will throw an exception when using a Request with no public properties, so this PR also addresses that.

Solution

Update the FastEndpoints package version, create another abstract endpoint that will get an EmptyRequest (FastEndpoints solution for request without public properties).

Verification

Steps:

  1. Update the FastEndpoins version on a solution that also uses Elsa.
  2. Run the solution and check that /swagger works and shows all the endpoints.

Expected outcome:

Swagger UI with all the endpoints.

Screenshots / Recordings (if applicable)


Commit Convention

We recommend using conventional commit prefixes:

  • fix: – Bug fixes (behavior change)
  • feat: – New features
  • refactor: – Code changes without behavior change
  • docs: – Documentation updates
  • chore: – Maintenance, tooling, or dependency updates
  • test: – Test additions or modifications

Clear commit messages make reviews easier and history more meaningful.


Checklist

  • The PR is focused on a single concern
  • Commit messages follow the recommended convention
  • Tests added or updated (if applicable)
  • Documentation updated (if applicable)
  • No unrelated cleanup included
  • All tests pass

@greptile-apps

greptile-apps Bot commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

PR author is not in the allowed authors list.

@diegomodolo

Copy link
Copy Markdown
Author

@dotnet-policy-service agree [company="Néctar Sistemas"]

@diegomodolo

Copy link
Copy Markdown
Author

@dotnet-policy-service agree

@dotnet-policy-service agree company="Néctar Sistemas"

@sfmskywalker

Copy link
Copy Markdown
Member

@copilot resolve the merge conflicts in this pull request

@gitguardian

gitguardian Bot commented Aug 17, 2026

Copy link
Copy Markdown

⚠️ GitGuardian has uncovered 1 secret following the scan of your pull request.

Please consider investigating the findings and remediating the incidents. Failure to do so may lead to compromising the associated services or software components.

Since your pull request originates from a forked repository, GitGuardian is not able to associate the secrets uncovered with secret incidents on your GitGuardian dashboard.
Skipping this check run and merging your pull request will create secret incidents on your GitGuardian dashboard.

🔎 Detected hardcoded secret in your pull request
GitGuardian id GitGuardian status Secret Commit Filename
35183230 Triggered Generic High Entropy Secret 233d15f src/apps/Elsa.ModularServer.Web/appsettings.json View secret
🛠 Guidelines to remediate hardcoded secrets
  1. Understand the implications of revoking this secret by investigating where it is used in your code.
  2. Replace and store your secret safely. Learn here the best practices.
  3. Revoke and rotate this secret.
  4. If possible, rewrite git history. Rewriting git history is not a trivial act. You might completely break other contributing developers' workflow and you risk accidentally deleting legitimate data.

To avoid such incidents in the future consider


🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.

@diegomodolo

Copy link
Copy Markdown
Author

Hello @sfmskywalker , there seem to be a problem with my pull request because of a secret uncovered, but I've checked my source code and could not find this secret.
I am not familiar with GitGuardian, could you help me find the problem so I can fix it?

@sfmskywalker
sfmskywalker requested a balanced review from Copilot September 14, 2026 01:45
@sfmskywalker

Copy link
Copy Markdown
Member

@copilot resolve the merge conflicts in this pull request

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟡 Changes recommended

Unresolved critical test compatibility and workflow security findings block approval.

Get a fresh assessment by requesting another Copilot review.

Pull request overview

This PR updates FastEndpoints compatibility for .NET 10 and central package management, adapts the resume endpoint to use EmptyRequest, and adds package publishing automation.

Changes:

  • Adds an empty-request endpoint abstraction and updates runtime resume.
  • Updates package versions and logging references.
  • Adjusts Swagger middleware setup.
  • Adds a manual package publishing workflow.
File summaries
File Summary Review findings
src/modules/Elsa.Workflows.Api/Endpoints/RuntimeAdmin/Resume/Endpoint.cs Uses the new empty-request endpoint base. Critical: Authorization test endpoint discovery does not support the new generic base.
src/modules/Elsa.AI.Host/Elsa.AI.Host.csproj Adjusts package reference formatting. No specific final comment.
src/modules/Elsa.AI.Copilot/Elsa.AI.Copilot.csproj Updates logging abstractions version. No specific final comment.
src/common/Elsa.Api.Common/Abstractions/Endpoints.cs Adds the new endpoint abstraction. Critical: Authorization test endpoint discovery does not support the new generic base.
src/apps/Elsa.Server.Web/Program.cs Configures Swagger. Moderate: Registers Swagger middleware twice.
Directory.Packages.props Updates conditional package versions. No specific final comment.
.github/workflows/manual_package.yml Adds manual package publishing and release automation. Critical: Unsanitized workflow input permits shell command injection. Moderate: Hard-coded package owner targets an unrelated feed. Nit: Unrelated privileged release automation is included.
Review details

Suppressed comments (1)

.github/workflows/manual_package.yml:16

  • This new publisher is hard-coded to the nectar-sistemas GitHub Packages owner, while the repository metadata identifies elsa-workflows/elsa-core (Directory.Build.props:6-7) and the existing package workflow publishes to the Elsa feeds (.github/workflows/packages.yml:22-23). Running this workflow for Elsa Core will target an unrelated registry and can fail with the repository-scoped credentials or publish packages to the wrong owner; use the repository's official feed/owner or remove this workflow.
  NUGET_SOURCE: https://nuget.pkg.github.com/nectar-sistemas/index.json
  • Files reviewed: 6/7 changed files
  • Comments generated: 5
  • Review effort level: Lite (auto)

Note

Copilot is running an experiment and ran this review at Lite.


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

run: >
dotnet build
--configuration Release
-p:Version=${{ github.event.inputs.version }}
}
}

public abstract class ElsaEndpointWithoutRequest<TRequest, TResponse> : Endpoint<TRequest, TResponse> where TRequest : notnull where TResponse : notnull
/// </summary>
[PublicAPI]
internal sealed class ResumeEndpoint(IWorkflowRuntimeAdminService admin) : ElsaEndpoint<ResumeRequest, StatusResponse>
internal sealed class ResumeEndpoint(IWorkflowRuntimeAdminService admin) : ElsaEndpointWithoutRequest<EmptyRequest, StatusResponse>
Comment on lines +287 to 288
app.UseSwaggerGen();
app.UseSwaggerUI();
Comment on lines +1 to +16
name: Publish NuGet Packages

on:
workflow_dispatch:
inputs:
version:
description: 'NuGet package version (e.g. 2.0.0)'
required: true

permissions:
contents: write
packages: write

env:
DOTNET_VERSION: "10.0.x"
NUGET_SOURCE: https://nuget.pkg.github.com/nectar-sistemas/index.json
@sfmskywalker

Copy link
Copy Markdown
Member

Triage: needs review — community/non-draft PR on main with no review decision yet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants