HydraCache 0.62.0
HydraCache 0.62.0
0.62.0 ships the cluster-correctness hardening layer: deterministic raft
message filtering, failpoint crash-safety, real-process daemon harnesses,
membership-history checking, id/wire properties, golden vectors, and the two
minimal correctness fixes those harnesses exposed.
This is a test-infrastructure release, not a feature release. It does not add a
new consensus algorithm, consistency level, or embedded-cache fast-path behavior.
Highlights
- Added deterministic raft message-filter coverage for asymmetric partitions,
minority/majority commit behavior, duplicate/reordered messages, retired-peer
rejection, and the missing stale-leader falsifiability case. - Added
test-failpointscrash-safety coverage for torn raft storage windows,
with canaries that prove the tests can turn red. - Added real-process daemon cluster gates that spawn
hydracache-server
children, kill/restart leaders, and assert durable rejoin behavior. - Reused the shipped
0.44invariant/linearizability checker for recorded
daemon membership histories. - Added id-mapping and wire-decode properties plus golden byte vectors for raft
command envelopes, wire messages,ConfState, and snapshotConfState. - Enabled raft
pre_voteby default and documented the one-release mixed
window indocs/COMPAT.md. - Tightened the server raft wire node-id mapping so integer-like node ids do not
take a parse-first shortcut. - Hardened the operator kind partition probe so it uses a dedicated network
probe pod, validates baseline reachability before applyingNetworkPolicy,
initializes rustls in the live harness, and waits for leader observation.
Verification
Focused gates run for this release:
cargo xtask verify
cargo xtask verify-no-test-features
cargo test -p hydracache-cluster-raft --features test-failpoints --test failpoints_crash_safety --locked -- --test-threads=1
$env:HYDRACACHE_RUN_NETWORKED_DAEMON_E2E='1'; cargo test -p hydracache-server --test grid_host multi_node --locked -- --nocapture
$env:HYDRACACHE_RUN_DAEMON_PROCESS_E2E='1'; cargo test -p hydracache-server --test daemon_process_cluster --locked -- --test-threads=1 --nocapture
$env:HYDRACACHE_RUN_DAEMON_PROCESS_E2E='1'; cargo test -p hydracache-server --test membership_history --locked -- --nocapture
$env:HYDRACACHE_RUN_PREVOTE_NIGHTLY_SOAK='1'; cargo test -p hydracache-cluster-raft --test prevote_nightly_soak --lockedOperator kind proof run on 2026-07-09:
$env:HYDRACACHE_OPERATOR_KIND='1'
$env:HYDRACACHE_OPERATOR_IMAGE='hydracache-server:td0011-0.61'
$env:HYDRACACHE_OPERATOR_NAMESPACE='default'
$env:HYDRACACHE_NETWORK_PROBE_IMAGE='busybox:1.36'
cargo test -p hydracache-operator --test soak_kind partition_probe_skips_loud_on_non_enforcing_cni --locked -- --nocapture
cargo test -p hydracache-operator --test soak_kind kind_partition_injection_isolates_and_heals --locked -- --ignored --nocaptureThe ordinary kind run reported partition probe applied NetworkPolicy; healing
after the baseline check, so this local kindnet build enforced NetworkPolicy
rather than exercising the non-enforcing skip branch. The enforcing leg was then
proven on a fresh disableDefaultCNI kind cluster with Calico 3.32.1 Available.
Scope Boundary
The test-failpoints feature and fail dependency are test-only. They are
guarded by cargo xtask verify-no-test-features and must not enter default
release graphs. hydracache-cluster-testkit remains dev-only and
publish = false.
Release Status
Shipped in the release ledger after the local gates above and cargo xtask doc-check passed. Tag and push remain a human SSH action.