From 248849318fde0f414996aba034ac4a3db432ac24 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ullrich=20Sch=C3=A4fer?=
Date: Sat, 18 Apr 2026 02:32:48 +0200
Subject: [PATCH] Align privacy manifest with Sentry + Overpass hardening
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Three sections drifted from the actual behaviour of the deployed apps:
Planner section:
- Spells out no cookies / no localStorage / no sessionStorage (we
removed i18n localStorage caching and alpha-banner sessionStorage).
- Notes the browser-side Planner does not load Sentry at all.
Sentry section:
- Drops the "session replays on error" claim — replay integration is
not installed and replaysSessionSampleRate / replaysOnErrorSampleRate
are both 0.
- Documents the actual scope: Journal server-side always; Journal
client-side only after login; Planner server-side only.
- Documents that IPs/cookies/headers are not sent (sendDefaultPii=false)
and that only the user ID is attached to logged-in Journal errors.
Third Parties section:
- Adds Overpass API with an explicit note that queries are proxied
through our own /api/overpass so the upstream host sees our server,
not end users.
Also bumps "Last updated" to today.
Co-Authored-By: Claude Opus 4.7 (1M context)
---
apps/journal/app/routes/legal.privacy.tsx | 32 ++++++++++++++++-------
1 file changed, 23 insertions(+), 9 deletions(-)
diff --git a/apps/journal/app/routes/legal.privacy.tsx b/apps/journal/app/routes/legal.privacy.tsx
index c8c758d..70fcef7 100644
--- a/apps/journal/app/routes/legal.privacy.tsx
+++ b/apps/journal/app/routes/legal.privacy.tsx
@@ -13,7 +13,7 @@ export default function PrivacyPage() {
Last updated: 2026-04-17
+Last updated: 2026-04-18
{/* GDPR formal sections */}- Both apps use Sentry for - error monitoring. This helps us find and fix bugs quickly. + We use Sentry for + error monitoring, scoped narrowly by design.
+sendDefaultPii is set to false everywhere@@ -207,6 +214,13 @@ export default function PrivacyPage() {
/api/overpass), so the upstream Overpass host sees our server rather
+ than end users' IP addresses or browsers. The current upstream is{" "}
+ overpass.private.coffee,
+ which operates without query logging. A self-hosted Overpass instance is planned.
+