Skip to content

Sentry: native scope minimisation per tier + boot transaction slimming #79

@gmaclennan

Description

@gmaclennan

Part of #74. Independent workblock.

Spec: docs/sentry-integration-plan.md §9b.3 (trim device fields per tier), §9b.4 (slim the boot transaction), §9b.6 (fresh memory/disk numbers on backend events).

The Android and iOS Sentry SDKs attach a lot of device detail to every event by default. This workblock trims that to match what each privacy tier promises.

Deliverables

  • Hooks in the Android and iOS Sentry configs that filter event fields per tier before sending. The default (diagnostic) tier keeps the basics — manufacturer, model, OS name + version, app id/version/build — and drops the fingerprint-friendly extras: kernel version, Android build string, app name, locale + timezone, screen resolution/density. The usage tier adds them back (§9b.3)
  • Boot transaction slimming: keep the phase timings, drop user-shaped attributes, keep span descriptions to the bare phase name (§9b.4)
  • Keep the Node process's free-memory/free-disk numbers fresh on every backend event, not just fatal ones. Usage tier only, since polling frequency itself reveals app activity (§9b.6)

Tests

  • Per-tier field assertions on captured native events, both platforms
  • Boot transaction carries only the allowed attributes

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions