{"repo":"hoangsnowy/FlowOrchestrator","free":true,"listed":false,"github":"https://github.com/hoangsnowy/FlowOrchestrator","clone":"git clone https://github.com/hoangsnowy/FlowOrchestrator.git","description":"Code-first DAG workflow orchestration for .NET. Runs in your existing ASP.NET Core app — Hangfire, in-process, or Azure Service Bus runtime. Built-in dashboard, OpenTelemetry native, conditional branching, human-in-loop signals.","language":"C#","stars":17,"topics":["dotnet-core","hangfire","worflow","workflow-engine","background-jobs","in-memory","azure-service-bus","aspnet-core","code-first","cron"],"license":"MIT","category":"workflow-automation","readme_excerpt":"FlowOrchestrator Code-first DAG orchestration for .NET. Runs on Hangfire, in-process, or Azure Service Bus. 📖 Documentation · NuGet · GitHub --- --- What's new in v1.29 — Stuck runs now recover. Dashboard Retry used to be a permanent no-op once a run's timeout deadline had lapsed; RetryStepAsync now refreshes the run's execution window via the new IFlowRunControlStore.ExtendDeadlineAsync (un-latching a timeout while preserving a genuine user cancel). A new FlowTimeoutEnforcementHostedService ( FlowRunControlOptions.TimeoutEnforcementInterval , default 30 s) proactively finalizes runs that are past their deadline with no in-flight work, so a step that threw and left nothing scheduled no longer leaves the run Running forever. Run completion is now idempotent through IFlowRunStore.CompleteRunIfActiveAsync , an atomic guarded Running → terminal transition, so lifecycle events fire exactly once even when the graph continuation and the timeout sweep race. Both new store members ship as default interface methods — custom store implementations compile unchanged. v1.28 — AddFlowDashboard(IConfiguration, Action ) overload (config-bound then delegate, closing a footgun that silently dropped Basic Auth); large correctness pass across Service Bus cron, signal delivery, ForEach run termination, and concurrent SQL/PostgreSQL writes; webhook X-Forwarded-For spoofing fix. v1.27 — Faster dashboard RUN search: PostgreSQL deep search now actually hits the pg trgm trigram GIN indexes ( 462 ms → ","default_branch":null,"files":null,"tree":[],"storefront":"/r/hoangsnowy","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/hoangsnowy/FlowOrchestrator/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}