EAC.Plugin.Outbox 2.3.0

dotnet add package EAC.Plugin.Outbox --version 2.3.0
                    
NuGet\Install-Package EAC.Plugin.Outbox -Version 2.3.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="EAC.Plugin.Outbox" Version="2.3.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="EAC.Plugin.Outbox" Version="2.3.0" />
                    
Directory.Packages.props
<PackageReference Include="EAC.Plugin.Outbox" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add EAC.Plugin.Outbox --version 2.3.0
                    
#r "nuget: EAC.Plugin.Outbox, 2.3.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package EAC.Plugin.Outbox@2.3.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=EAC.Plugin.Outbox&version=2.3.0
                    
Install as a Cake Addin
#tool nuget:?package=EAC.Plugin.Outbox&version=2.3.0
                    
Install as a Cake Tool

EAC.Plugin.Outbox

First-party EAC plugin for metadata-first, target-agnostic Outbox diagnostics.

The initial rule family is EAOB and covers detection taxonomy, operational state, idempotency, persistence boundaries, recovery, observability, and framework registration mismatches.

The plugin owns recipes for all EAOB diagnostics. Recipes classify findings as mechanical, review-required, or advisory and populate review metadata so EAC remediation and review flows can route outbox findings without assuming a message broker, database target, or relational CRUD remediation path.

With trusted host compilation facts, immutable payloads passed to the framework's OutboxEnvelope.Create<TEvent> and passive KeyedRelationalDomainEvent records are excluded from work-item diagnostics. The exclusion requires resolved framework metadata and checks every partial declaration. Envelope uses are matched by type identity across all available host compilations, so a payload declared in a contracts project is recognized when another project passes it to the envelope. Envelope uses in test sources (tests/ paths, .Tests/ directories, *Tests.cs files) and in assemblies whose name ends in Tests (any case) do not count, so a work item passed to the envelope only by a test fixture stays diagnosed. Mutable delivery state, state/status/retry/attempt/lease members (including qualified names such as DeliveryStatus), custom accessors, executable initializers (including literals that invoke a user-defined implicit conversion, or [] of a collection outside the BCL allow-list of arrays, List<T>, HashSet<T>, Dictionary<K,V>, ImmutableArray<T> and their interfaces), GetKey accessors whose returned property needs a user-defined conversion to the key type, methods, and interfaces with default or static behavior remain eligible for diagnostics. Payload types are correlated by full assembly identity, and a source file linked into several projects is exempt only when every compilation sees a passive type, and its declarations are inspected in every owning compilation, so a type that some projects omit through conditional compilation keeps its diagnostics. Only workspace source payloads reached through a project reference are correlated; a binary sharing a source type's identity may be stale and does not exempt it. Only sealed payload types are exempt: an unsealed or abstract payload can be enqueued as a derived type, possibly from another assembly, that this inspection never visits, so declare passive payload records sealed (records are not sealed by default). Virtual or overridable members are never exempt. Files with conditional compilation request host facts because the baseline parse sees no project symbols. Behavior-free marker interfaces do not prevent the exclusion. Snapshot fields such as processing timestamps or failure descriptions do not imply ownership of the envelope's delivery lifecycle. Missing host facts and source-defined framework lookalikes retain conservative classification.

Product Compatible and additional computed target framework versions.
.NET 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.3.0 77 11/4/2026
2.2.0 71 11/4/2026
2.1.0 96 10/17/2026
2.0.1 103 10/15/2026
2.0.0 91 10/15/2026
1.0.1 87 10/12/2026