Goldpath.Archival
0.1.0-preview.8
dotnet add package Goldpath.Archival --version 0.1.0-preview.8
NuGet\Install-Package Goldpath.Archival -Version 0.1.0-preview.8
<PackageReference Include="Goldpath.Archival" Version="0.1.0-preview.8" />
<PackageVersion Include="Goldpath.Archival" Version="0.1.0-preview.8" />
<PackageReference Include="Goldpath.Archival" />
paket add Goldpath.Archival --version 0.1.0-preview.8
#r "nuget: Goldpath.Archival, 0.1.0-preview.8"
#:package Goldpath.Archival@0.1.0-preview.8
#addin nuget:?package=Goldpath.Archival&version=0.1.0-preview.8&prerelease
#tool nuget:?package=Goldpath.Archival&version=0.1.0-preview.8&prerelease
Goldpath.Archival
The data lifecycle after "hot": declarative retention per aggregate, archive runs that move whole GRAPHS into a tamper-evident same-database store (SHA-256 hash chain), row-retention purges for high-volume detail, legal hold, and erasure that composes with retention. Runs execute on Goldpath.Jobs — chunked, checkpointed, resumable, visible in the same console.
builder.AddGoldpathArchival<WebApplicationBuilder, OrdersDbContext>(archival =>
{
archival.AddArchive<Claim>(a => a
.Graph(c => c.Decisions, c => c.Documents)
.Key(c => c.Id)
.DueWhen(c => c.ClosedAt != null, c => c.ClosedAt!.Value)
.ArchiveAfter(TimeSpan.FromDays(365))
.RetainFor(years: 10)
.DeleteHotRowsAfterArchive());
archival.AddRowRetention<RatedUsageDetail>(r => r
.After(TimeSpan.FromDays(90), u => u.RecordedAt)
.Where(u => u.RolledUp)); // never purge unsummarized detail
});
builder.AddGoldpathJobs<WebApplicationBuilder, OrdersDbContext>(jobs =>
jobs.AddGoldpathArchivalJobs<OrdersDbContext>());
// DbContext: modelBuilder.AddGoldpathArchiveModel();
Integrity model: every entry seals a ChainHash at append (never changes; the chain links through it) and carries a ContentHash of the current document. The audited erasure path (S2) redacts classified fields and re-stamps the content hash — divergence WITH an erasure record is evidence, divergence WITHOUT one is tamper, and the verify job files both into the repair queue. Retention purges remove only a contiguous chain PREFIX; an active legal hold stops the purge at itself.
Admin API (retrieve / hold / erase / verify) arrives with S2; see docs/rfc/goldpath-archival.md.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. 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
- Goldpath.Abstractions (>= 0.1.0-preview.8)
- Goldpath.Data (>= 0.1.0-preview.8)
- Goldpath.Jobs (>= 0.1.0-preview.8)
- Goldpath.Sdk (>= 0.1.0-preview.8)
-
net8.0
- Goldpath.Abstractions (>= 0.1.0-preview.8)
- Goldpath.Data (>= 0.1.0-preview.8)
- Goldpath.Jobs (>= 0.1.0-preview.8)
- Goldpath.Sdk (>= 0.1.0-preview.8)
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-preview.8 | 73 | 9/7/2026 |
| 0.1.0-preview.7 | 86 | 9/1/2026 |
| 0.1.0-preview.6 | 130 | 8/4/2026 |
| 0.1.0-preview.5 | 83 | 7/28/2026 |
| 0.1.0-preview.4 | 79 | 7/27/2026 |
| 0.1.0-preview.3 | 62 | 7/25/2026 |
| 0.1.0-preview.2 | 67 | 7/13/2026 |
| 0.1.0-preview.1 | 106 | 7/13/2026 |