Skip to content

Architecture Decision Records

Key design decisions behind Conveyor.Batch, and why they were made.

ADRDecision
ADR-001Use IAsyncEnumerable<T> as the reader contract, for backpressure, cancellation, and LINQ composability.
ADR-002Use EF Core as the job repository persistence mechanism, as a separate optional package.
ADR-003Define IRetryPolicy as an adapter interface; ship Polly v8 support as a separate future package rather than a hard dependency.
ADR-004Use System.Threading.Channels for internal chunk transport in parallel and partitioned steps.

Source ADR files live in docs/adr/ in the repository.