v0.1.25.57 — Redis recovery and rolling-upgrade matrices
Redis recovery and rolling-upgrade matrices
This test/documentation-only release makes Redis lost-response recovery and supported rolling-upgrade storage compatibility executable in CI, without changing production behavior.
Recovery coverage
- Adds deterministic lost-response tests for reserve, commit, release, direct event, dry-run, and decide.
- Retries every discarded successful response and asserts byte-identical bodies plus exactly-once ledger, evidence, runtime-event, reservation, event, and TTL-index side effects.
- Uses a FIFO executor barrier for deterministic asynchronous event draining rather than timing sleeps.
Upgrade compatibility
- Adds frozen legacy Redis fixtures for lifecycle fast-body rows, pre-snapshot rows, pre-v0.1.25.52 event storage, the pre-v0.1.25.51 dry-run namespace, and reservations created before the optional created-at index.
- Pins replay, mismatch, snapshot-backfill, no-second-debit, and index-backfill behavior against the current reader.
- Strengthens fixtures so storage-field drift cannot make compatibility tests pass vacuously.
Compatibility and validation
- No production source, protocol wire shape, Redis layout, or foreground command path changed.
- Production and full-stack Compose files pin
ghcr.io/runcycles/cycles-server:0.1.25.57. - 1,206 tests passed: 31 model, 575 data, 600 API; zero failures, errors, or skips.
- Protocol operation coverage 11/11.
- JaCoCo line coverage: data 95.14%, API 95.56%.
- All merge CI, integration, CodeQL, container, and supply-chain checks passed.
[benchmark-skip]: this release changes tests and documentation only.
Full details: CHANGELOG.md [0.1.25.57], AUDIT.md, BENCHMARKS.md, issue #247, and PR #248.