You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Make DataLinq a deliberate, lifetime-safe component of ASP.NET Core and Generic Host applications through an explicit host-integration package, injectable read access, and an explicit mutable unit-of-work boundary.
Required scope
Define a host-integration package boundary without imposing an ASP.NET Core dependency on the core runtime.
Register generated database models and current providers with validated options.
Separate injectable read access from explicit mutable unit-of-work ownership.
Add a unit-of-work factory whose instances own transaction begin, commit, rollback, cancellation, disposal, and terminal-state reporting.
Document singleton/scoped/transient ownership for provider state, generated roots, connections, transactions, units of work, and hosted services.
Integrate with Generic Host logging.
Preserve existing SQL mutable-instance trust rules across failed commit, cancellation, rollback failure, and disposal.
Make shutdown and disposal deterministic and exactly once.
Acceptance criteria
ASP.NET Core and worker-style Generic Host fixtures resolve read services and execute one explicit unit of work.
Concurrent scopes cannot accidentally share transaction or mutable unit-of-work state.
Begin, commit, rollback, cancellation, failure, uncertain outcome, and disposal paths have focused contract tests.
Nested application services can participate through explicit ownership without an ambient session.
Host shutdown disposes every owned resource exactly once.
New packages are included in central versioning, pack inventory, package inspection, compatibility checks, and consumer smoke without leaking unnecessary dependencies.
Objective
Make DataLinq a deliberate, lifetime-safe component of ASP.NET Core and Generic Host applications through an explicit host-integration package, injectable read access, and an explicit mutable unit-of-work boundary.
Required scope
Acceptance criteria
Dependency and order
Explicit non-goals
AsyncLocalsession.Planning sources