Skip to main content
Table of Contents

Namespace Stratara.Abstractions.Entities

Interfaces

IBucket

Persistence-level entity carrying a bucket id used by the command-bus serialisation layer to dispatch aggregate-scoped commands single-writer per bucket.

IEntity

Persistence-level entity carrying a stable Id. EF Core uses this to configure value-generated primary keys uniformly across the framework.

IHasRowVersion

Optimistic-concurrency token mapped onto PostgreSQL's xmin system column by Npgsql. EF Core uses it to detect concurrent writes — DBConcurrencyException surfaces as DbUpdateConcurrencyException on conflict.

IMultiTenant

Tenant-owning entity. The Subject (data-owner) tenant id participates in EF Core's global query filter so application code never accidentally reads across tenant boundaries.

ITenantEntity

Common shape for a tenant-scoped persistence entity — combines IEntity (own Id) and IMultiTenant (Subject tenant id).

IUserIdentity

Marker for entities that carry a per-user identity (e.g. per-user projection views: UserSettings, UserProfile, AssistantView). Distinct from EventStreamEntry's Actor/Subject UserId fields — those are envelope columns, not entity-level identity.