## Summary Fixes #19377 - **Redis health**: The hit rate calculation divides by zero when both `keyspace_hits` and `keyspace_misses` are `"0"` (common on fresh instances). The string `"0"` is truthy so the guard `statsData.keyspace_hits ? ...` doesn't catch this case, resulting in `0/0 = NaN`. Fixed by computing the total first and checking it's a valid non-zero number. - **Database health**: The cache hit ratio query returns `null` when `pg_statio_user_tables` is empty (no user tables). `parseFloat(null)` → `NaN`. Fixed by adding a null check. ## Test plan - [ ] Verify health indicators display correctly on a fresh instance with no Redis keyspace activity - [ ] Verify health indicators display correctly on a database with no user tables - [ ] Existing tests in `redis.health.spec.ts` still pass 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: easonysliu <easonysliu@tencent.com> Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Co-authored-by: Charles Bochet <charles@twenty.com>