AsiBackbone 3.2.1 Release Readiness Record
Release candidate date: 2026-08-07
Release intent
3.2.1 is a backward-compatible patch release for the stable 3.2.x
package family.
Its primary purpose is to establish the dedicated AsiBackbone GitHub
organization as the canonical project location following the transfer from
the personal cdcavell namespace.
The release updates repository, documentation, Source Link, citation, SBOM, validation, workflow, sample, and package metadata while preserving the existing package, namespace, target-framework, binary-identity, runtime, and host-ownership boundaries.
The capability-grant validation profiles introduced in 3.2.0 are carried
forward unchanged.
This record is a pre-tag checklist. Do not create v3.2.1 or publish
packages until every required validation is complete on the final
release-candidate commit.
Included scope
- Update the canonical repository URL to
https://github.com/AsiBackbone/AsiBackbone. - Update the canonical documentation URL to
https://asibackbone.github.io/AsiBackbone/. - Update NuGet repository and project metadata for
3.2.1. - Update Source Link validation expectations for the organization-owned repository.
- Update
CITATION.cffand.zenodo.jsonfor the organization-owned repository and documentation locations. - Update SBOM document namespace and creator metadata.
- Update repository badges, security links, documentation navigation, GitHub Pages references, samples, package READMEs, quality documentation, and development-diagnostics examples.
- Update references to NetCoreApplicationTemplate to use
AsiBackbone/NetCoreApplicationTemplatewhere the canonical current repository is intended. - Update
AsiBackbone.Templatesfallback package references to3.2.1. - Preserve the capability-validation functionality introduced by
3.2.0without changing its runtime behavior. - Preserve the existing
AsiBackbone.*package and namespace identity. - Preserve the stable
3.xbinary assembly identity. - Preserve the current deferred NuGet package-signing posture.
Compatibility boundary
- Package IDs remain unchanged.
- Public namespaces remain unchanged.
- Public APIs remain unchanged.
- Runtime governance behavior remains unchanged.
- The target framework remains
net10.0. AssemblyVersionremains3.0.0.0for the compatible3.xbinary line.FileVersionadvances to3.2.1.0.- Package version advances to
3.2.1. - Informational version and release metadata advance to
3.2.1. - Citation and archival metadata advance to
3.2.1. - No new stable public API is introduced.
- No serialized or persisted governance artifact shape is intentionally changed.
- No package boundary is added or removed.
- Existing
3.2.xconsumers require no source-code migration solely because of this patch release. - Authentication, authorization, durable replay protection, signing-key custody, persistence, external execution, monitoring, and operational safety remain host-owned responsibilities.
- NuGet package signing remains deferred while the project is independently maintained.
Repository metadata transition
3.2.1 establishes the organization-owned repository as the canonical
repository metadata location:
https://github.com/AsiBackbone/AsiBackbone
The canonical documentation and project URL is:
https://asibackbone.github.io/AsiBackbone/
Published packages from earlier releases may retain the historical repository URL embedded when those immutable artifacts were created:
https://github.com/cdcavell/AsiBackbone
Earlier packages may also retain the historical GitHub Pages project URL:
https://cdcavell.github.io/AsiBackbone/
The repository transfer does not rewrite previously published NuGet packages.
Release validation for 3.2.1 should verify the new canonical locations
without rewriting historical package evidence.
Version and metadata checklist
- [ ]
Directory.Build.propsresolves package version3.2.1. - [ ]
AssemblyVersionremains3.0.0.0. - [ ]
FileVersionis3.2.1.0. - [ ]
TargetFrameworkremainsnet10.0. - [ ]
RepositoryUrlishttps://github.com/AsiBackbone/AsiBackbone. - [ ]
RepositoryTyperemainsgit. - [ ]
PackageProjectUrlishttps://asibackbone.github.io/AsiBackbone/. - [ ]
CITATION.cffreports version3.2.1. - [ ]
CITATION.cffreports release date2026-08-07. - [ ]
CITATION.cffuseshttps://github.com/AsiBackbone/AsiBackboneasrepository-code. - [ ]
CITATION.cffuseshttps://asibackbone.github.io/AsiBackbone/as the project URL. - [ ]
.zenodo.jsonreports version3.2.1. - [ ]
.zenodo.jsondescribes3.2.1as a backward-compatible patch release. - [ ]
.zenodo.jsonidentifieshttps://github.com/AsiBackbone/AsiBackboneas the canonical software repository. - [ ]
.zenodo.jsonreferenceshttps://github.com/AsiBackbone/NetCoreApplicationTemplate. - [ ] Template fallback package references use
3.2.1. - [ ] Source Link post-publication validation defaults to
3.2.1. - [ ] Source Link validation expects
https://github.com/AsiBackbone/AsiBackbone. - [ ] NuGet package metadata validation expects the organization repository and documentation URLs.
- [ ] SBOM generation uses the organization-owned repository in the SPDX document namespace.
- [ ] SBOM creator metadata reflects the organization-owned project identity.
- [ ] GitHub Pages publishing configuration uses
https://asibackbone.github.io/AsiBackbone. - [ ] Security-reporting links target the organization-owned repository.
- [ ] Repository badges target the organization-owned repository.
- [ ] Lock files remain consistent after release-version changes.
- [ ] Locked restore succeeds.
- [ ]
CHANGELOG.mdcontains the3.2.1release entry. - [ ]
CHANGELOG.mdandrelease-notes-321.mddescribe the same release scope and compatibility boundary. - [ ] Evergreen documentation identifies
3.2.1as the current patch release. - [ ] Capability-validation functionality is attributed to
3.2.0where release-specific attribution is required. - [ ] Historical release records remain factually accurate regarding metadata embedded in previously published packages.
Repository-transfer link checklist
- [ ] No active release-facing link unintentionally references
github.com/cdcavell/AsiBackbone. - [ ] No active documentation-site link unintentionally references
cdcavell.github.io/AsiBackbone. - [ ] Current NetCoreApplicationTemplate references use
AsiBackbone/NetCoreApplicationTemplatewhere appropriate. - [ ] Security reporting targets the organization-owned repository.
- [ ] Repository badges target the organization-owned repository.
- [ ] Documentation navigation targets the organization-owned repository.
- [ ] Package READMEs use the organization-owned documentation site.
- [ ] Sample and development-diagnostics URLs use the organization-owned documentation site.
- [ ] Current workflow references use the canonical repository and site where applicable.
- [ ] Current quality documentation uses the canonical documentation site.
- [ ] Current issue and repository references use the transferred repository location where historical accuracy does not require preservation of the former URL.
Historical text that intentionally documents a previous repository location
should not be rewritten merely to eliminate every occurrence of cdcavell.
Maintainer identity, author attribution, usernames, email addresses, and other personal references should likewise remain unchanged unless independently incorrect.
Release documentation checklist
- [ ]
CHANGELOG.mdcontains a3.2.1entry dated2026-08-07. - [ ]
docs/articles/release-notes-321.mdexists and accurately describes the patch-release scope. - [ ]
docs/articles/release-readiness-321.mdexists and contains this complete pre-tag checklist. - [ ]
docs/articles/consumer-verification-321.mdexists and documents the consumer verification path. - [ ]
README.mdidentifies3.2.1as the current patch release. - [ ]
README.mdlinks to the3.2.1release notes. - [ ]
README.mdlinks to the3.2.1release readiness record. - [ ]
README.mdlinks to the3.2.1consumer verification guide. - [ ]
docs/index.mdidentifies3.2.1as the current patch release. - [ ]
docs/articles/index.mdidentifies3.2.1as the current patch release. - [ ]
docs/articles/index.mdlinks to the3.2.1release notes and consumer verification guide. - [ ]
docs/articles/release-validation.mdidentifies the3.2.1readiness record as the current release-candidate control sheet. - [ ]
docs/articles/release-validation.mdidentifies the3.2.1consumer verification guide as the current consumer-facing verification record. - [ ]
docs/articles/api-compatibility-and-semver.mdidentifies3.2.1as the current stable patch release. - [ ]
docs/articles/release-cadence-and-readiness.mdidentifies3.2.1as the current patch release. - [ ]
docs/articles/toc.ymlexposes the3.2.1release documentation. - [ ] Historical
3.2.0,3.1.0, and earlier release records remain available for traceability.
Required validation before tag
- [ ] Restore succeeds in locked mode using the repository SDK and package configuration.
- [ ] Debug solution build succeeds.
- [ ] Release solution build succeeds.
- [ ]
dotnet format --verify-no-changessucceeds. - [ ] All test projects pass.
- [ ] Repository-wide line-coverage gate passes.
- [ ] Package-specific coverage gates pass.
- [ ] Core branch-coverage gate passes.
- [ ] XML-documentation inventory ceiling passes.
- [ ] API baseline validation passes.
- [ ] API compatibility validation passes.
- [ ] Version consistency validation passes for
3.2.1. - [ ] Version consistency validation passes for tag
v3.2.1. - [ ] Package creation succeeds for the complete publishable package set.
- [ ] Generated package IDs are correct.
- [ ] Generated package versions are
3.2.1. - [ ] Generated dependency metadata is correct.
- [ ] Generated repository metadata is correct.
- [ ] Generated project URL metadata is correct.
- [ ] Generated repository commit metadata is populated.
- [ ] Generated symbol packages are correct.
- [ ] Packaged README content is correct.
- [ ] Generated packages use
https://github.com/AsiBackbone/AsiBackboneas repository metadata. - [ ] Generated packages use
https://asibackbone.github.io/AsiBackbone/as project metadata. - [ ] Template smoke tests succeed against repository projects.
- [ ] Template smoke tests succeed against
3.2.1fallback package references. - [ ] External-consumer smoke tests succeed.
- [ ] Stable-package smoke tests succeed.
- [ ] Existing capability-validation profile tests continue to pass unchanged.
- [ ] DocFX build succeeds.
- [ ] Documentation release-claim validation succeeds.
- [ ] Documentation links have been reviewed for the repository-transfer boundary.
- [ ] CodeQL reports no blocking findings.
- [ ] Dependency review reports no blocking findings.
- [ ] OpenSSF Scorecard results have no unexplained blocking findings.
- [ ] Workflow-security checks have no unexplained blocking findings.
- [ ]
actionlintvalidation succeeds where configured. - [ ] Zizmor validation succeeds where configured.
- [ ] OWASP Dependency-Check has no unexplained blocking findings.
- [ ] Reviewed OWASP suppressions remain narrowly scoped, documented, and unexpired.
- [ ] SPDX SBOM artifacts are generated for the expected package set.
- [ ] SBOM metadata uses the canonical organization-owned repository.
- [ ] Provenance artifacts are produced where supported.
- [ ] No package-signing claim is made for unsigned packages.
- [ ] No documentation implies that Source Link, SBOMs, provenance, or public source availability is equivalent to NuGet package signing.
Package verification expectations
Generated and published 3.2.1 packages should expose:
Repository type:
git
Repository URL:
https://github.com/AsiBackbone/AsiBackbone
Project URL:
https://asibackbone.github.io/AsiBackbone/
The package repository commit value should identify the source revision used
for the release and should resolve to the final v3.2.1 source commit.
The expected package IDs remain:
AsiBackbone.CoreAsiBackbone.DependencyInjectionAsiBackbone.Storage.InMemoryAsiBackbone.EntityFrameworkCoreAsiBackbone.AspNetCoreAsiBackbone.TestingAsiBackbone.TemplatesAsiBackbone.AnalyzersAsiBackbone.OpenTelemetryAsiBackbone.Signing.LocalDevelopmentAsiBackbone.Signing.ManagedKey
Package-signing posture
NuGet package signing remains intentionally deferred while AsiBackbone is independently maintained.
The release should not imply that unsigned packages are cryptographically authenticated merely because they provide:
- Source Link metadata;
- repository commit metadata;
- SBOMs;
- provenance artifacts;
- GitHub release tags;
- public source code; or
- a public release record.
These are complementary traceability and supply-chain signals rather than a substitute for NuGet package signing.
Consumers with mandatory package-signing requirements remain responsible for enforcing those requirements through their own dependency policy.
Release sequence
- Confirm the prepared
3.2.1entry is present inCHANGELOG.mdand is consistent withrelease-notes-321.md. - Confirm
release-readiness-321.mdandconsumer-verification-321.mdare complete and linked from the current release documentation. - Confirm the canonical repository and documentation URLs are consistent across build, NuGet, Source Link, citation, Zenodo, SBOM, workflow, sample, package README, and documentation metadata.
- Confirm historical package records preserve the repository metadata that was actually published with those package versions.
- Regenerate and commit any NuGet lock files or generated release artifacts required by the final release-candidate commit.
- Confirm locked restore succeeds.
- Open the
release/3.2.1pull request againstmain. - Allow all required pull-request, CI, security, package, documentation, and release-validation checks to complete.
- Resolve any blocking validation or documentation findings without weakening the release criteria.
- Confirm the release-readiness checklist accurately reflects the final release-candidate state.
- Merge the release-preparation pull request only after required checks pass.
- Confirm
maincontains the final3.2.1version metadata, release documentation, repository URLs, and project URLs. - Confirm the final
maincommit is the intended release source commit. - Create the annotated release tag
v3.2.1from the validated commit. - Run the stable release workflow against
v3.2.1. - Confirm all expected NuGet packages are published from the official package source.
- Confirm all expected symbol packages are published.
- Confirm published package versions are exactly
3.2.1. - Confirm published NuGet metadata identifies:
https://github.com/AsiBackbone/AsiBackbone
- Confirm published project metadata identifies:
https://asibackbone.github.io/AsiBackbone/
- Confirm GitHub release assets are present as expected.
- Confirm package SBOMs are present as expected.
- Confirm provenance artifacts are attached where supported.
- Confirm documentation deployment succeeds at:
https://asibackbone.github.io/AsiBackbone/
- Run post-publication Source Link validation:
./scripts/Validate-Source-Link-commit-metadata.ps1 -Version 3.2.1
- Verify that each package reports repository type
git. - Verify that each package reports:
https://github.com/AsiBackbone/AsiBackbone
- Verify that each package repository commit resolves to the tagged
v3.2.1source commit. - Review the published
3.2.1NuGet pages for README rendering, package icon, repository link, project link, dependencies, and target-framework metadata. - Review the published documentation site for the current release links.
- Record any release exception explicitly rather than silently weakening the release claim.
Post-publication verification
After NuGet publication completes, run:
./scripts/Validate-Source-Link-commit-metadata.ps1 -Version 3.2.1
The expected repository URL is:
https://github.com/AsiBackbone/AsiBackbone
The expected project URL is:
https://asibackbone.github.io/AsiBackbone/
Verify that the repository commit embedded in each published package resolves
to the final source commit associated with v3.2.1.
Any mismatch between package metadata, GitHub release metadata, the tag, SBOMs, provenance artifacts, citation metadata, or the release documentation should be investigated and documented before the release is considered complete.
Final scope statement
AsiBackbone remains Accountable Systems Infrastructure for governed .NET decision flow.
3.2.1 changes the canonical stewardship and metadata location of the project
from a personal GitHub namespace to the dedicated AsiBackbone organization.
It does not introduce a new public API surface, change runtime governance semantics, alter package IDs or namespaces, or change host-owned execution responsibilities.
It does not make AsiBackbone an authentication system, authorization system, host executor, robot controller, compliance certification, complete tamper-evidence platform, production key-management system, or production replay-protection system by default.
The repository location changed.
The stable software contract did not.