commit 8826d6aeeeac63f2b73335c027b1971b8e3059f2
parent 66b3a7acd22f3b0fa02071da3eeb0a972579806d
Author: Florian Dold <florian@dold.me>
Date: Thu, 12 Feb 2026 23:28:13 +0100
DD82
Diffstat:
2 files changed, 76 insertions(+), 0 deletions(-)
diff --git a/design-documents/082-wallet-diagnostics.rst b/design-documents/082-wallet-diagnostics.rst
@@ -0,0 +1,75 @@
+DD 82: Wallet Diagnostics Export
+################################
+
+Summary
+=======
+
+This design document describes a new wallet feature to make gathering
+diagnostics information from wallet users safer and more convenient.
+
+Motivation
+==========
+
+When users have a problem with their wallet, right now the only
+reliable way to diagnose it is a database export.
+
+This is a problem, because:
+
+* It requires us to deal with sensitive user data, including private keys and
+ PII
+* It teaches the user that it's okay to export and send around their wallet
+ database via e-mail etc.
+
+Requirements
+============
+
+* Must be easy to use
+* Must give us relevant information to enable diagnostics
+* Must not contain
+
+Proposed Solution
+=================
+
+Wallet-core implements a new ``testingGetDiagnostics`` request. This request
+returns diagnostics information in a JSON format. The export **MUST NOT**
+contain private keys. IBANs **MUST** be truncated to six characters and user
+names should be scrubbed or truncated.
+
+The following new functionality is implemented in the UIs:
+
+* In settings mode, a new option "Save diagnostics information"
+ is added. This option should *not* be restricted to the developer
+ mode.
+* Clicking/tapping the option creates a diagnostics export
+
+ * On mobile platforms, the user should be the option to
+ share or save the export
+ * In the browser, just saving the export should be sufficient
+
+Test Plan
+=========
+
+Since the UI for this is very static, a simple manual test
+of an export and share/save should be enough.
+
+Future Extensions
+=================
+
+In future versions, we might ask users to exclude/include certain types of
+information from the export.
+
+Alternatives
+============
+
+There is no good alternative, we don't want telemetry, we don't want full DB
+exports.
+
+Drawbacks
+=========
+
+* One more option that clutters the settings dialogue
+
+Discussion / Q&A
+================
+
+(This should be filled in with results from discussions on mailing lists / personal communication.)
diff --git a/design-documents/index.rst b/design-documents/index.rst
@@ -93,4 +93,5 @@ Design documents that start with "XX" are considered deprecated.
079-reports
080-short-wire-subject
081-shop-discovery
+ 082-wallet-diagnostics
999-template