Priority
P0 — Critical — resolve before the next release presented as production-ready.
Problem
DialCache.flushAll() delegates to raw Redis/Valkey FLUSHALL, ignores redis.keyPrefix, and broadcasts across every cluster primary. A library-scoped maintenance method can therefore delete unrelated application data.
Evidence on reviewed main (2bda04d1443a75a71cbbc41365c4424554936a37):
Confirmed decision
Remove this capability entirely. Do not add a replacement clearing API in this issue.
Acceptance criteria
- Remove
DialCache.flushAll().
- Remove
flushAll() from DialCacheRedisClient and both bundled adapters.
- Remove dead internal flush plumbing and every library-initiated
FLUSHALL/flushall call.
- Update README, package-consumer mocks, unit tests, and integration tests.
- Raw administrative flushes may remain only in isolated test-fixture setup, outside the DialCache API.
- Document the breaking change in release notes.
Priority
P0 — Critical — resolve before the next release presented as production-ready.
Problem
DialCache.flushAll()delegates to raw Redis/ValkeyFLUSHALL, ignoresredis.keyPrefix, and broadcasts across every cluster primary. A library-scoped maintenance method can therefore delete unrelated application data.Evidence on reviewed main (
2bda04d1443a75a71cbbc41365c4424554936a37):Confirmed decision
Remove this capability entirely. Do not add a replacement clearing API in this issue.
Acceptance criteria
DialCache.flushAll().flushAll()fromDialCacheRedisClientand both bundled adapters.FLUSHALL/flushallcall.