Skip to content

docs(privacy): reconcile shipped diagnostics behavior before 2.0.2 #149

Description

@psimaker

Classification

PROVEN documentation drift — P1 release gate. No legal conclusion is asserted.

Problem and evidence to re-prove before editing

Current public repository text describes diagnostics app behavior as unreleased or not called by the released app:

  • PRIVACY.md:78-82
  • PRIVACY.md:136-143
  • PRIVACY.md:200-203
  • PRIVACY.md:239-246

Other current public evidence says the app-side capability, pairing, upload, controlled-download, and causal-roundtrip flow shipped in 2.0.0:

  • docs/architecture.md:95-106
  • CHANGELOG.md:23-27
  • App path: ios/VaultSync/Views/SettingsView.swift:71-78
    → ControlledDiagnosticsView.swift:343-347,518-538
    → DiagnosticsPairingController.swift:487-528.
  • git merge-base --is-ancestor 948b6ec v2.0.0 exited 0 during the audit.

Before any text change, re-verify the exact released tag/build, current app behavior, current public documents, and—if available through an authorized source—the actually distributed app version. Do not infer legal obligations or App Store state from repository code alone.

User and safety impact

Users can receive materially inconsistent factual descriptions of which explicit, opt-in local diagnostics operations exist in the shipped app. This is a transparency and release-evidence defect; it does not prove an undisclosed automatic data flow.

Acceptance criteria

  • Establish and record the exact released-version evidence.
  • Map current user gestures, consent, local writes, helper requests, persistence, and non-actions.
  • Reconcile PRIVACY.md with the proven shipped behavior using factual, bounded language.
  • Preserve the distinction between explicit opt-in diagnostics and ordinary/background sync.
  • Preserve truthful limits: no physical-device result may be claimed without evidence.
  • Obtain owner/privacy review appropriate for a public policy document.
  • Keep historical readiness documents historical where applicable.
  • No product-code change in this issue.

Regression/documentation test

Add a focused documentation gate or explicit release checklist that rejects stale phrases such as "currently released app does not call it" for a flow proven to be shipped. The test must not attempt to make legal judgments.

Out of scope

Product bugfixes, legal advice, StoreKit, signing, entitlements, App Store metadata, version/build bumps, and changes to diagnostics behavior.

Verification

  • Re-run tag ancestry and released-source inspection.
  • Trace the current app flow file:line.
  • Run bash ios/scripts/sync-proof-privacy-lint.sh.
  • Run localization/design checks only if referenced user-facing copy is touched.
  • Independent factual and owner/privacy review before merge.

Dependencies

  • Independent of all six product bugfix diffs.
  • Blocks the 2.0.2 release/submission gate, not implementation of the product fixes.
  • Distributed-binary/App Store evidence is explicitly UNVERIFIED until obtained through an authorized source.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:privacyPrivacy policy and data-flow documentationdocumentationImprovements or additions to documentationpriority:P1Required reliability or security workrisk:releaseRelease-blocking evidence or documentation risk

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions