Cohesive.Storage 0.1.0-alpha.5

This is a prerelease version of Cohesive.Storage.
dotnet add package Cohesive.Storage --version 0.1.0-alpha.5
                    
NuGet\Install-Package Cohesive.Storage -Version 0.1.0-alpha.5
                    
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="Cohesive.Storage" Version="0.1.0-alpha.5" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Cohesive.Storage" Version="0.1.0-alpha.5" />
                    
Directory.Packages.props
<PackageReference Include="Cohesive.Storage" />
                    
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 Cohesive.Storage --version 0.1.0-alpha.5
                    
#r "nuget: Cohesive.Storage, 0.1.0-alpha.5"
                    
#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 Cohesive.Storage@0.1.0-alpha.5
                    
#: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=Cohesive.Storage&version=0.1.0-alpha.5&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Cohesive.Storage&version=0.1.0-alpha.5&prerelease
                    
Install as a Cake Tool

Cohesive.Storage

Provider-neutral storage abstractions for entity repositories, observation streams, outbox records, seeding, and process repository adapters.

Install

dotnet add package Cohesive.Storage

Use When

  • You need repository contracts for Cohesive entities and observations.
  • You want storage behavior to attach to semantic entity and relation models without binding application code to a database SDK.
  • You need adapters between entity snapshots, observation records, canonical relation/query source readers, and process execution.

Canonical relation/query sources

Storage contributes physical acquisition to Cohesive.Relations; it does not define another predicate, join, projection, aggregation, or paging model. Register an exact graph-qualified entity shape with its canonical source instance, reader, selectors, capability profile, and limits. The immutable catalog then authors plan-affine placement and constructs the existing canonical evaluator:

var source = EntityRelationQuerySourceRegistration.InMemory(
    loadShape,
    loadRepository,
    limits: new(
        maximumBatchSize: 100,
        maximumBufferedRows: 10_000,
        maximumFanOut: 100,
        maximumConcurrency: 4));

var catalog = new EntityRelationQuerySourceCatalog([source]);
IRelationQueryEvaluator evaluator = catalog.CreateEvaluator(physicalPlanningPolicy);
var outcome = await evaluator.EvaluateAsync(evaluation, cancellationToken);

The in-memory reader supports bounded enumeration, identity batches, relationship-reference batches, exact field selection, authoritative absence, partial/inconclusive evidence, and cancellation. Canonical interpretation owns filters, joins, output shaping, aggregation, and paging. Query source roots are read from registered sources; relation roots remain invocation inputs and must be supplied by the evaluation.

The same facilities can be registered with IServiceCollection through RegisterEntityRelationQuerySource and RegisterEntityRelationQueryEvaluator. Registration order does not choose a source: the v1 catalog permits exactly one source per graph-qualified shape and rejects duplicate shape or source identities.

Query authority

Cohesive.Relations canonical relation/query IR is the sole authority for predicates, joins, projections, aggregations, and paging. Storage repositories retain point reads, writes, typed object mapping, and atomic outbox behavior; they do not expose a parallel entity-query contract. Query consumers author a RelationQueryEvaluation, register explicit IRelationQuerySourceReader implementations through EntityRelationQuerySourceRegistration, and execute through IRelationQueryEvaluator or a target's canonical artifact executor.

The former query-repository compatibility facade and observation adapters were removed intentionally. Storage does not provide an automatic bridge from that deleted model to canonical relation/query definitions.

  • Cohesive.Transitions for entity state and transition models.
  • Cohesive.Relations for canonical relation/query semantics, evaluation, placement, and source-reader contracts.
  • Cohesive.Adapters.Cosmos for Cosmos DB-backed storage.
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 (4)

Showing the top 4 NuGet packages that depend on Cohesive.Storage:

Package Downloads
Cohesive.Identity

Cohesive semantic system definition and orchestration building blocks.

Cohesive.Host

Cohesive semantic system definition and orchestration building blocks.

Cohesive.Adapters.AspNet

Cohesive semantic system definition and orchestration building blocks.

Cohesive.Adapters.Cosmos

Cohesive semantic system definition and orchestration building blocks.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.0-alpha.5 64 7/20/2026
0.1.0-alpha.4 77 7/13/2026
0.1.0-alpha.3 80 7/8/2026
0.1.0-alpha.2 81 7/7/2026