Releases: faustbrian/go-lease
Releases · faustbrian/go-lease
Release list
github.com/faustbrian/go-lease v1.0.0
1.0.0 - 2026-08-25
Changed
-
Exclude intentional nested modules from root local-proxy archives so local,
bootstrap, CI, and public module checksums describe the same source
boundary. -
Track the pinned documentation-tool lockfile so clean CI checkouts install
the exact validated cspell dependency. -
Reconcile standalone dependency checksums against deterministic current
module archives so CI, local verification, and release consumers resolve
identical content. -
Harden standalone documentation validation with deterministic spelling and
link checks, package-specific documentation gates, and repository-local
contributor guidance.
Documentation
- Link the package README to the repository-wide Golib documentation portal.
Changed
- Publish the module from its standalone
github.com/faustbrian/go-leaseidentity while preserving its documented API and behavior. - Remove unused CLI-related indirect dependencies from canonical module
metadata. - Normalize owned sibling requirements to the unpublished local
v0.0.0
source proxy so repository manifests contain no stale pseudo-versions. - Refresh owned-module checksums against the final consolidated archives.
- Normalized standalone module metadata against the canonical owned dependency
graph, including complete checksums for clean consumer resolution.
Added
- Opaque Valkey ownership guards for atomic protected cache publication without
exposing logical lease identities. - Handle ownership snapshots for composing bounded client acquisition with
protected adapters without reconstructing lease records. - Fenced lease model with bounded acquisition and managed renewal.
- Deterministic memory reference backend.
- Native Valkey 9 backend with atomic server-time scripts.
- Native PostgreSQL backend with durable fence history and migrations.
- Queue, scheduler, service, and redacted observation integrations.
- Conformance, race, fuzz, mutation, benchmark, coverage, and operations gates.
- Disposable mutation checks for Valkey and PostgreSQL identity predicates.
- Restart-continuity and destructive-reset phases in the backend fault gate.
- Snapshot-rollback detection and Valkey replica-promotion evidence.
- Physical PostgreSQL replica-promotion fencing evidence.
- Valkey TLS trust, named ACL, and password rotation fault evidence.
- PostgreSQL transaction, cleanup, pool, isolation, and rolling-schema faults.
- Compatible and fail-closed incompatible Valkey rolling-script evidence.
- Direct queue and scheduler cancellation-on-loss evidence.
- Race-tested transactional protected-write fencing example.
- Blocking shuffled lifecycle stress gate and report.
- Disposable PostgreSQL replica authentication for the failover gate.
- Eager Valkey TLS rejection handling in the credential-rotation gate.
- Formal acquisition, handle, successor, and continuity epoch contracts.
- Full mutation and backend-fault gates before tagged release publication.
Fixed
- Keep the conformance setup lease valid while slower durable backends prove
contention before exercising the separate short-lived renewal boundary. - Validate the binary API export baseline with the canonical
apidiffgate
instead of interpreting it as a text symbol list. - Resolve internal Golib dependencies from the content-bound local source
proxy until the dependency-orderedv1.0.0tags are published. - Bound acquisition waits independently from injectable clock anomalies.
- Prevent observer re-entrancy from deadlocking handle state transitions.
- Reject corrupt or incompatible successful responses that change ownership.
- Redact backend cause text while preserving programmatic error identity.
- Isolate blocking observers behind bounded best-effort callback slots.
- Report PostgreSQL fence exhaustion as a permanent unavailable state.
- Bound handle admission with a conservative local monotonic deadline.
Release integrity
- Source commit:
18cbc080da4f583ae4c78d2f4d184a970ef607dd - Exact-head CI: https://github.com/faustbrian/go-lease/actions/runs/32918210172
- Release dry-run: urn:sha256:beefe33a59b0e571b85ab45989b7b0c86e4647944c05e7859e0d98038ae49ab3
- Assets include a CycloneDX SBOM, SLSA v1 in-toto provenance, and SSH-signed checksums.
Verify the checksum attestation with:
ssh-keygen -Y verify -f ALLOWED_SIGNERS -I brian@cline.sh -n golib-release -s SHA256SUMS.sig < SHA256SUMS