Skip to content

HydraCache 0.64.0

Choose a tag to compare

@github-actions github-actions released this 16 Jul 11:22
· 803 commits to main since this release
8672702

HydraCache 0.64.0

0.64.0 strengthens HydraCache's correctness evidence around Raft snapshots,
membership changes, recovery, concurrency, and asynchronous cancellation. This
release intentionally prioritizes executable proof over new product surface: it
adds deterministic, model-based, adversarial, and real-process test tiers while
keeping the public cache and protocol scope stable.

Highlights

  • Added immutable snapshot and committed-tail replay proofs, including snapshots
    taken during membership changes and fail-loud handling of malformed,
    truncated, stale, swapped, and misdirected durable artifacts.
  • Expanded the Raft fault matrix with deterministic message filtering,
    composed-fault nemesis schedules, shrinking, bad-seed replay, bounded model
    checking, leadership handoff, snapshot-delivery fan-out, retry idempotency,
    clock-skew safety, rejoin, and recovery scenarios.
  • Added independent concurrency evidence through loom, Miri, ThreadSanitizer,
    mutation testing, invariant canaries, and ordinary contention tests. These
    tiers remain separate so one green detector cannot stand in for another.
  • Added trace-driven cache-policy characterization against Belady, cache-core
    race and expiry-storm tests, connection/resource chaos, adapter/configuration
    property corpora, parser fuzz corpora, and differential behavior checks.
  • Added an executable TLA+/TLC election model and a separate Rust state-space
    model, each with a negative canary and explicit traceability to implementation
    invariants.
  • Added W39 cancellation-safety contracts for local single-flight loading, the
    Axum client and token-safe lock path, and Raft proposal/shutdown recovery.
    Cancellation outcomes are classified explicitly and retries remain
    command-idempotent.
  • Added machine-readable release governance: registered gated tests, exact-commit
    evidence receipts, dynamic expected-red canaries, quarantine expiry, fast-tier
    budgets, deterministic logical digests, and a coverage ratchet.
  • Added tag-gated crates.io automation. A successful full CI run for a release
    tag publishes workspace crates in dependency order through the protected
    release environment, verifies fresh crates.io consumers, and only then
    creates the GitHub Release.

Compatibility And Scope

  • The workspace MSRV remains Rust 1.88.
  • The Redis RESP facade and protocol-v4 lock subset introduced in 0.63.0
    remain unchanged; this release does not add Redis Cluster, general Lua,
    multi-endpoint lock, or cross-daemon RESP key-visibility claims.
  • In-process and deterministic snapshot/backpressure proofs do not claim
    production slow-TCP or receiver-process-kill behavior. Those stronger
    real-process and operational rows remain assigned to 0.66.
  • Previous-version compatibility is proved against the frozen v0.63.0
    wire/snapshot/API baseline. Mixed-version daemon rollout remains a later
    operational gate.
  • Test-only failpoints, canaries, fuzz harnesses, and cluster testkits are not
    part of the published runtime dependency graph.

Verification

The release candidate is accepted only when the ordinary Rust/MSRV checks and
all registered 0.64 evidence lanes are green, including performance and
coverage budgets, Redis compatibility proof, DST/soak, Raft corner cases, loom,
fuzz corpus replay, mutation shards, Miri, ThreadSanitizer, dynamic canaries,
TLA+/TLC, cancellation safety, packaging, and post-publish consumer checks.

The authoritative implementation boundaries and exact commands are recorded in
V0_64_RAFT_SNAPSHOT_AND_AGENTIC_DEBUGGING_TEST_EXPANSION_PLAN.md,
GATES.md, and TESTING.md.

Not Shipped In 0.64.0

  • New cache, Redis, Hazelcast, ownership-routing, or consensus APIs.
  • Production snapshot streaming and slow-receiver process-kill guarantees.
  • Mixed-version daemon rolling upgrades and external Jepsen process drivers.
  • Backup/PITR, operator scale chaos, or new disk-backed compaction product
    features beyond the existing tested seams.