Set or unset subscriber attributes from the checkpoint tester (#4046)
### Motivation Checkpoint rules can be evaluated against subscriber attributes, but the checkpoint tester had no way to set them, so exercising an attribute-driven rule meant editing and rebuilding the app. Adds an action to allow to set custom attributes to the app <img width="270" height="606" alt="image" src="https://github.com/user-attachments/assets/1b3f3a7e-1ff1-4835-a43a-26cc9690eb19" /> <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Sample-app UI only. It calls the existing public setAttributes API and does not change SDK, auth, or production behavior. > > **Overview** > Lets testers change a subscriber attribute at runtime so checkpoint rules that depend on attributes can be exercised without rebuilding. > > Adds a person icon in the top bar that opens a dialog with key/value fields. **Set** calls `Purchases.sharedInstance.setAttributes`; **Unset** sends `null` for that key (SDK delete). Documented in the checkpoint tester README. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 2197c8aaa0402aecaf7e4876476957789f790d70. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY --> Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
T
Toni Rico committed
64609c70074db57c7e21390bfafbeb2425c71b77
Parent: 54274be
Committed by GitHub <noreply@github.com>
on 8/24/2026, 4:19:26 PM