diff --git a/apps/web/src/pages/Privacy.tsx b/apps/web/src/pages/Privacy.tsx index 993f741..09ea018 100644 --- a/apps/web/src/pages/Privacy.tsx +++ b/apps/web/src/pages/Privacy.tsx @@ -56,10 +56,9 @@ export default function Privacy() {

Vercel delivers the website, Render operates the public API, Neon hosts the database, - a private object-storage provider stores submitted photos, OpenFreeMap supplies map - tiles, and Apple distributes the iOS app and may process diagnostics according to your - Apple settings. The named storage provider will be added here before photo submissions - are enabled. Requests to those services are subject to their own privacy practices. + Cloudflare R2 stores submitted photos, OpenFreeMap supplies map tiles, and Apple + distributes the iOS app and may process diagnostics according to your Apple settings. + Requests to those services are subject to their own privacy practices. Links to research, conservation, and project sites take you outside Fluke, where the destination's policy applies.

diff --git a/apps/web/src/release-a-boundaries.test.tsx b/apps/web/src/release-a-boundaries.test.tsx index 3b9859f..760d13d 100644 --- a/apps/web/src/release-a-boundaries.test.tsx +++ b/apps/web/src/release-a-boundaries.test.tsx @@ -187,7 +187,8 @@ describe('Release A web boundaries', () => { expect(privacySource).toContain('submitted photos'); expect(privacySource).toContain('coarse location'); expect(privacySource).toContain('Delete account'); - expect(privacySource).toContain('private object-storage provider'); + expect(privacySource).toContain('Cloudflare R2 stores submitted photos'); + expect(privacySource).not.toContain('named storage provider will be added'); expect(privacySource).not.toContain('website or iOS app'); expect(privacySource).not.toContain('does not offer accounts, sighting submissions'); });