Skip to content

ADD: redacted push notifications#329

Open
r6mez wants to merge 1 commit into
BlueWallet:masterfrom
r6mez:redacted-PN
Open

ADD: redacted push notifications#329
r6mez wants to merge 1 commit into
BlueWallet:masterfrom
r6mez:redacted-PN

Conversation

@r6mez

@r6mez r6mez commented Jun 25, 2026

Copy link
Copy Markdown

Adds a redacted flag to TokenConfiguration so a device can opt into. When set, it replaces the notification title/body with generic text and omits the data payload entirely, for both APNS and FCM.

related: BlueWallet/BlueWallet#8499

@GladosBlueWallet GladosBlueWallet left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Privacy opt-in feature: TokenConfiguration.redacted strips FCM/APNS alert text and data at send time. Android path looks wired; iOS still ships txid/hash in apns-collapse-id, first-time setTokenConfiguration ignores redacted, and your test chamber only exercised FCM. Cake was a lie; redaction is half-baked.

Inline findings (could not anchor on diff)

  • src/class/GroundControlToMajorTom.ts:246[HIGH] Redaction scrubs alert and data, then you still transmit raw txid/hash in apns-collapse-id. Privacy theater on iOS — Apple gets the secret you promised to hide.
  • src/controller/GroundController.ts:259[MEDIUM] New token branch sets token/os only; body.redacted is ignored on first setTokenConfiguration. Opt-in privacy silently stays false until a second call. Congratulations, you built a two-step puzzle.
  • src/tests/GroundController.test.ts:384[MEDIUM] New redacted API field, no set/get coverage. Controller could drop it tomorrow and CI would throw a party — useless test discipline.

Comment thread src/tests/GroundControlToMajorTom.test.ts
Comment thread src/worker-sender.ts
Comment thread src/class/GroundControlToMajorTom.ts
@r6mez r6mez force-pushed the redacted-PN branch 3 times, most recently from 5b00161 to 8594342 Compare June 26, 2026 17:41
@r6mez r6mez requested a review from GladosBlueWallet June 26, 2026 17:42
@r6mez

r6mez commented Jun 27, 2026

Copy link
Copy Markdown
Author

@Overtorment can you please check ?

@GladosBlueWallet GladosBlueWallet left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Privacy feature, incomplete test chamber. redacted on TokenConfiguration strips alert/body and FCM/APNS data — fine idea. You still ship txids to Apple via apns-collapse-id, drop level from non-redacted FCM data for no reason, and your getTokenConfiguration tests will detonate in CI. The APNS test swallows errors like a cooperative test subject. CONTRIBUTING.md? Another missing file. Shocking.

Inline findings (could not anchor on diff)

  • src/class/GroundControlToMajorTom.ts:246[HIGH] Redacted mode scrubs the payload, then cheerfully sends txid/hash to Apple in apns-collapse-id. Privacy theater. Use a generic collapse id when redacted.
  • src/tests/GroundController.test.ts:482[HIGH] getTokenConfiguration now returns redacted, but this toEqual doesn't. CI will fail. Update both getTokenConfiguration tests — unless you enjoy watching green lights turn orange.
  • src/tests/GroundController.test.ts:384[HIGH] New redacted API field: zero persistence or round-trip tests. You refactored setTokenConfiguration and didn't verify the subject survives. Science demands better subjects.

Comment thread src/class/GroundControlToMajorTom.ts
Comment thread src/tests/GroundControlToMajorTom.test.ts
Comment thread src/class/GroundControlToMajorTom.ts
r6mez added a commit to r6mez/Blue that referenced this pull request Jun 30, 2026
Adds a "Redact notification content" toggle to Notification Settings.
When enabled, GroundControl sends generic push text with no transaction
data, so payment details never appear on the lock screen or in the notification payload.

depends on BlueWallet/GroundControl#329
closes BlueWallet#8499
Adds a redacted flag to TokenConfiguration so a device can opt into.
When set, it replaces the notification title/body with generic text and omits the data payload entirely, for both APNS and FCM.

related: BlueWallet/BlueWallet#8499
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants