v13.5.4

ssrajadh/sentrysearchv13.5.4Jun 10, 2026by thedotmack

AI Summary

Resolves a significant gap in telemetry data where ~98.5% of events had unknown location by enabling PostHog GeoIP lookups on the client side.

Key Highlights

  • Enables PostHog GeoIP lookup (country/region/city) from request IP
  • Preserves privacy by discarding raw IPs after transient lookup
  • Fixes CI regression test for PostHog client construction
  • Discloses ingest-derived coarse location in telemetry docs

New Features

  • GeoIP location inference for telemetry events
  • Updated telemetry consent screens and documentation

Full Release Notes

## Fixed

- **Telemetry geolocation: closed the ~98.5% "unknown location" gap.** The posthog-node SDK assumes server deployments and stamps `$geoip_disable: true` on every event by default. claude-mem's worker runs on the user's own machine, so this needlessly suppressed PostHog's ingest-side GeoIP on all worker events (`worker_started`, `session_compressed`, `context_injected`, …). The client now passes `disableGeoip: false`, letting PostHog derive coarse location (country / region / city) at ingestion — from the request IP, which is then discarded. CLI events (`install_*`) were already unaffected.

## Privacy

- No change to the IP promise: raw IP addresses are still **never attached to events by the client and never stored** — the sender IP is used transiently at ingest for the coarse-location lookup, then discarded.
- The telemetry docs (https://docs.claude-mem.ai/telemetry) and the `npx claude-mem telemetry enable` consent screen now disclose the ingest-derived coarse location.

## Tests

- New regression test asserts the PostHog client is constructed with `disableGeoip: false` (telemetry suite now 58 tests, all passing).

šŸ¤– Generated with [Claude Code](https://claude.com/claude-code)