FluxFlow.Coordination
2.0.0
See the version list below for details.
dotnet add package FluxFlow.Coordination --version 2.0.0
NuGet\Install-Package FluxFlow.Coordination -Version 2.0.0
<PackageReference Include="FluxFlow.Coordination" Version="2.0.0" />
<PackageVersion Include="FluxFlow.Coordination" Version="2.0.0" />
<PackageReference Include="FluxFlow.Coordination" />
paket add FluxFlow.Coordination --version 2.0.0
#r "nuget: FluxFlow.Coordination, 2.0.0"
#:package FluxFlow.Coordination@2.0.0
#addin nuget:?package=FluxFlow.Coordination&version=2.0.0
#tool nuget:?package=FluxFlow.Coordination&version=2.0.0
FluxFlow.Coordination
Transport-neutral coordination for operations that emit work and later receive an acknowledgement, reply, cancellation, timeout, or fault. The package owns pending keys, contexts, deadlines, terminal outcomes, and bounded settled-key history. It does not own transports, broker acknowledgements, Dataflow blocks, component ports, workflow configuration, or host lifetime.
PendingExchangeCoordinator<TKey, TContext, TOutcome> accepts any non-null key.
Workflow components normally use TraceId, which identifies one end-to-end
workflow processing lineage. Adapters may select another protocol key when an
external contract requires it. CorrelationId is therefore interoperability
metadata rather than a dependency of this package.
The coordinator enforces a maximum in-flight count, rejects duplicate keys,
uses one TimeProvider timer with a deadline queue, and settles every accepted
exchange exactly once. A bounded history classifies feedback after success as
duplicate and feedback after timeout, cancellation, stop, or fault as late.
Callers that permit retries should include an attempt discriminator in TKey
so feedback from an older attempt cannot settle a newer one.
var coordinator = new PendingExchangeCoordinator<TraceId, DeliveryContext, DeliveryOutcome>();
var started = coordinator.TryStart(message.TraceId, context);
if (started.IsAccepted)
{
coordinator.TryResolve(message.TraceId, DeliveryOutcome.Acknowledged);
var completed = await started.Completion!;
}
The package depends only on FluxFlow.Nodes and the BCL. Broker-specific
acknowledgement aggregation, HTTP response mapping, MQTT lifecycle, and retry
policy remain in their owning packages.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- FluxFlow.Nodes (>= 4.0.0)
-
net8.0
- FluxFlow.Nodes (>= 4.0.0)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on FluxFlow.Coordination:
| Package | Downloads |
|---|---|
|
FluxFlow.Components.Mqtt
Transport-neutral MQTT client orchestration and standalone FluxFlow components for commands, publish, receive, workflow acknowledgement, and client events. No engine or concrete MQTT client required. |
|
|
FluxFlow.Components.RequestReply
A transport-agnostic request/reply bridge for FluxFlow with compatibility correlation tracking over the shared coordination foundation. |
|
|
FluxFlow.Components.Resilience
Workflow retry coordination with normal result output and explicit acknowledgement signals. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 3.0.0-rc.1 | 126 | 9/5/2026 |
| 2.0.0 | 427 | 8/3/2026 |
Updates the Nodes dependency for the typed FlowMessage<T> contract while preserving coordination behavior.