LevelUp.Health.Abstractions
0.1.0-preview.2
dotnet add package LevelUp.Health.Abstractions --version 0.1.0-preview.2
NuGet\Install-Package LevelUp.Health.Abstractions -Version 0.1.0-preview.2
<PackageReference Include="LevelUp.Health.Abstractions" Version="0.1.0-preview.2" />
<PackageVersion Include="LevelUp.Health.Abstractions" Version="0.1.0-preview.2" />
<PackageReference Include="LevelUp.Health.Abstractions" />
paket add LevelUp.Health.Abstractions --version 0.1.0-preview.2
#r "nuget: LevelUp.Health.Abstractions, 0.1.0-preview.2"
#:package LevelUp.Health.Abstractions@0.1.0-preview.2
#addin nuget:?package=LevelUp.Health.Abstractions&version=0.1.0-preview.2&prerelease
#tool nuget:?package=LevelUp.Health.Abstractions&version=0.1.0-preview.2&prerelease
LevelUp.Health.Abstractions
Foundational primitives for the LevelUp.Health backend packages (the asclepius P2 plane): a
JSON-serializable Result<T> / Error railway type plus the IContext / IRepository /
IService / IDecorator marker contracts. Lifted faithfully from ares-elite/aegis-api's
Aegis.Core; zero third-party dependencies (only System.Text.Json from the shared framework).
LevelUp.Health.Fhir depends on this package. LevelUp.Health.Audit and LevelUp.Health.Auth
do not — they are Result-free.
What's here
| Namespace | Types |
|---|---|
LevelUp.Health.Abstractions.Primitives |
Result<T>, Error, ErrorType, Unit |
LevelUp.Health.Abstractions.Factories |
ErrorFactory (typed NotFound/Validation/Conflict/… constructors) |
LevelUp.Health.Abstractions.Extensions |
ResultExtensions (Bind/Map/Ensure/Tap/Combine/async variants), ErrorExtensions (HTTP-status mapping) |
LevelUp.Health.Abstractions.Contracts |
IContext<T>, IRepository<T,TContext>, IService<T,TContext,TRepository>, IDecorator<T>, IWorkflowScope, IWorkflowService<TScope> |
Result<T>
Service methods return Result<T> rather than throwing for business failures. It carries either a
value or an Error (code + message + ErrorType), implicitly converts from both, and is a
readonly struct shaped for HybridCache round-tripping (the [JsonConstructor] +
ResultValue/ResultError property contract is load-bearing — do not reshape it).
public Result<Patient> Get(string id) =>
_repo.TryGet(id, out var p)
? p // implicit Success
: ErrorFactory.NotFound("Patient", $"{id} not found"); // implicit Failure
var status = result.Error.ToHttpStatusCode(); // ErrorType -> 404/400/409/...
| Product | Versions 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. |
-
net10.0
- No dependencies.
NuGet packages (2)
Showing the top 2 NuGet packages that depend on LevelUp.Health.Abstractions:
| Package | Downloads |
|---|---|
|
LevelUp.Health.Fhir
FHIR R4 client skeleton for the LevelUp.Health backend: a Firely-backed serializer, HTTP CRUD context with If-Match optimistic concurrency, repository/service base classes, caching + observability decorators, OBO/client-credential token services, and the FHIR primitive DTOs. Ares-specific resource types, identity-graph eviction, and change tracking are seams the consuming app fills. |
|
|
LevelUp.Health.Migration
FHIR data-migration accelerator for the LevelUp.Health backend: idempotent $import/$export load transport, business-identity idempotency, medallion staging, US-Core profile validation, terminology resolution, and a retrieve-then-$validate AI mapping harness — all behind neutral ports with in-repo reference implementations. Live Azure/terminology/LLM backends are opt-in seams. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0-preview.2 | 86 | 7/10/2026 |
| 0.1.0-preview.1 | 100 | 6/26/2026 |