Privacy Policy (Public Beta)

Effective date: 2026-02-18

This policy explains how WhyDidItClose handles information in the public beta.

Summary

  • WhyDidItClose is local-first.
  • Beta builds are designed to keep diagnosis data on your Mac.
  • No account is required.
  • No cloud sync is provided in beta.

Information Processed

WhyDidItClose processes app-closure diagnostics on-device, including:

  • app identifiers (for example app name, bundle ID, PID, app path)
  • event timing (launch and termination timestamps)
  • termination metadata (reason, raw OS reason, quit attribution when available)
  • diagnosis output (dominant cause, confidence, end state, explanation, signal summaries)
  • optional in-app feedback (helpful/unhelpful)

Data Sources

To diagnose why an app closed, WhyDidItClose may read local OS-observable sources around the event window:

  • app lifecycle notifications from macOS
  • local unified log data
  • local crash reports and spindump files

Storage Location and Retention

WhyDidItClose stores beta data in your user Library under:

  • ~/Library/Application Support/WhyDidItClose/events.json
  • ~/Library/Application Support/WhyDidItClose/feedback.jsonl
  • ~/Library/Application Support/WhyDidItClose/telemetry.json

Data remains on your device until you remove it. You can delete these files at any time.

Sharing and Transfers

  • WhyDidItClose does not automatically transmit diagnosis data to us in beta.
  • Data leaves your device only when you explicitly export files (for example JSON/CSV) or otherwise share them.

Permissions

WhyDidItClose may request notification permission so it can alert you when an app closes. If you deny notification permission, core diagnosis behavior still works.

Children

WhyDidItClose is not directed to children under 13.

Changes to This Policy

We may update this policy as beta behavior changes. The current version is the one published in this repository.

Contact

For privacy questions, use the support channel described in docs/support.md.