Pinguteca.Sdk.Ergo
0.1.0
dotnet add package Pinguteca.Sdk.Ergo --version 0.1.0
NuGet\Install-Package Pinguteca.Sdk.Ergo -Version 0.1.0
<PackageReference Include="Pinguteca.Sdk.Ergo" Version="0.1.0" />
<PackageVersion Include="Pinguteca.Sdk.Ergo" Version="0.1.0" />
<PackageReference Include="Pinguteca.Sdk.Ergo" />
paket add Pinguteca.Sdk.Ergo --version 0.1.0
#r "nuget: Pinguteca.Sdk.Ergo, 0.1.0"
#:package Pinguteca.Sdk.Ergo@0.1.0
#addin nuget:?package=Pinguteca.Sdk.Ergo&version=0.1.0
#tool nuget:?package=Pinguteca.Sdk.Ergo&version=0.1.0
Pinguteca.Sdk.Ergo
Layer 1.5 ergonomic primitive kit for Pinguteca SDK clients in
.NET. Companion to Pinguteca.Sdk.Core.
Cross-SDK contract pinned in
RFC 0016:
ships the building blocks per-service L1.5 resource methods rely
on. No service-specific code lives here; resource methods are
written against this kit once their api-surface.yaml exists.
Install
dotnet add package Pinguteca.Sdk.Ergo --prerelease
What ships
ComposedOporchestrates multi-RPC operations under one L1.5 entry point. Derives per-leg idempotency keys ({op_id}/{leg}) and threads a correlation id through every leg via gRPC metadata headers.Operation<T>long-running-operation poller with full-jitter backoff (RFC 0006), serverretry-afteroverride, total wait bounded by the caller'sCancellationToken.IdGeneratorgenerates 128-bit hex identifiers viaRandomNumberGenerator.Fill(FIPS-approved CSPRNG).
Quickstart
using Pinguteca.Sdk.Ergo;
using Grpc.Core;
// In an L1.5 resource method:
public async Task<File> UploadAsync(string name, Stream data, CallOptions options)
{
var op = ComposedOp.New();
var session = await op.RunAsync(options,
opts => _client.CreateUploadSessionAsync(new() { Name = name }, opts).ResponseAsync);
// ... stream chunks (next leg) ... finalize (next leg)
return ...;
}
Stability: pre-release while Layer 1.5 takes shape. Tag releases
as v0.x-alpha until the primitive set proves stable across more
than one consumer-facing service.
Docs
| 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
- Grpc.Core.Api (>= 2.80.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0 | 67 | 6/7/2026 |