Skip to content

Add GDPR removal customer detail extension to anonymizer#2380

Merged
lkostrowski merged 4 commits into
mainfrom
lkostrowski/gdpr-removal-extension
Jun 22, 2026
Merged

Add GDPR removal customer detail extension to anonymizer#2380
lkostrowski merged 4 commits into
mainfrom
lkostrowski/gdpr-removal-extension

Conversation

@lkostrowski

Copy link
Copy Markdown
Member

Adds a "GDPR removal" action mounted on the Dashboard customer detail page (CUSTOMER_DETAILS_MORE_ACTIONS, POPUP). The popup resolves the customer by the id the Dashboard passes, then runs a staged flow: scan orders/checkouts/gift cards, preview the exact list, confirm via a red gate, execute the existing anonymize/delete mutations (customer deleted last), and re-scan to verify with a per-type pass/fail summary. Staff accounts are blocked.

Reuses the existing pure helpers and GraphQL documents; the email-based single-customer page is left unchanged.

Scope of the PR

Related issues

Checklist

Adds a "GDPR removal" action mounted on the Dashboard customer detail
page (CUSTOMER_DETAILS_MORE_ACTIONS, POPUP). The popup resolves the
customer by the id the Dashboard passes, then runs a staged flow:
scan orders/checkouts/gift cards, preview the exact list, confirm via a
red gate, execute the existing anonymize/delete mutations (customer
deleted last), and re-scan to verify with a per-type pass/fail summary.
Staff accounts are blocked.

Reuses the existing pure helpers and GraphQL documents; the email-based
single-customer page is left unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@changeset-bot

changeset-bot Bot commented Jun 18, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 10a5dd3

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
saleor-app-anonymizer Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@vercel

vercel Bot commented Jun 18, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
saleor-app-anonymizer Ready Ready Preview, Comment Jun 22, 2026 9:24am
saleor-app-avatax Ready Ready Preview Jun 22, 2026 9:24am
saleor-app-cms Ready Ready Preview Jun 22, 2026 9:24am
saleor-app-klaviyo Ready Ready Preview, Comment Jun 22, 2026 9:24am
saleor-app-onboarding Ready Ready Preview, Comment Jun 22, 2026 9:24am
saleor-app-payment-np-atobarai Ready Ready Preview Jun 22, 2026 9:24am
saleor-app-payment-stripe Ready Ready Preview, Comment Jun 22, 2026 9:24am
saleor-app-products-feed Ready Ready Preview, Comment Jun 22, 2026 9:24am
saleor-app-search Ready Ready Preview Jun 22, 2026 9:24am
saleor-app-segment Ready Ready Preview Jun 22, 2026 9:24am
saleor-app-smtp Ready Ready Preview Jun 22, 2026 9:24am

Request Review

@codecov

codecov Bot commented Jun 18, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 37.97%. Comparing base (bae8d5d) to head (10a5dd3).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2380      +/-   ##
==========================================
- Coverage   38.15%   37.97%   -0.18%     
==========================================
  Files        1048     1044       -4     
  Lines       67116    66831     -285     
  Branches     3598     3554      -44     
==========================================
- Hits        25605    25379     -226     
+ Misses      41121    41063      -58     
+ Partials      390      389       -1     
Flag Coverage Δ
avatax 57.58% <ø> (ø)
cms 21.85% <ø> (ø)
domain 100.00% <ø> (ø)
dynamo-config-repository ?
errors 92.00% <ø> (ø)
logger 28.81% <ø> (ø)
np-atobarai 72.66% <ø> (ø)
products-feed 6.01% <ø> (ø)
search 32.31% <ø> (ø)
segment 33.65% <ø> (ø)
shared 56.07% <ø> (ø)
smtp 36.32% <ø> (ø)
stripe 70.89% <ø> (ø)
webhook-utils 21.35% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

The Dashboard's AppBridge reserves the `id` query param for the app's own
id (e.g. `App:1076`), so reading `id` resolved the active app instead of
the customer. The customer id is passed under `customerId` (e.g.
`User:1503`) for CUSTOMER_DETAILS_MORE_ACTIONS extensions.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The customer detail page the popup was opened from no longer exists once
the account is deleted. The done screen now shows a "Finish" button that
dispatches an AppBridge redirect to /customers so the operator lands on a
valid page.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@vercel vercel Bot temporarily deployed to Preview – saleor-app-onboarding June 18, 2026 17:50 Inactive
@lkostrowski lkostrowski marked this pull request as ready for review June 22, 2026 07:31
@lkostrowski lkostrowski requested a review from a team as a code owner June 22, 2026 07:31
@lkostrowski lkostrowski requested review from mirekm and wcislo-saleor and removed request for wcislo-saleor June 22, 2026 07:31
@lkostrowski lkostrowski enabled auto-merge (squash) June 22, 2026 09:22
@lkostrowski lkostrowski merged commit 4e5ec45 into main Jun 22, 2026
35 of 38 checks passed
@lkostrowski lkostrowski deleted the lkostrowski/gdpr-removal-extension branch June 22, 2026 09:26
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