Skip to content

feat(anonymizer): a shadow account is its interaction's associated address - #950

Open
avi-starkware wants to merge 1 commit into
avi/screening-v3/delegated-queryfrom
avi/screening-v3/anonymizer-screening-subjects
Open

feat(anonymizer): a shadow account is its interaction's associated address#950
avi-starkware wants to merge 1 commit into
avi/screening-v3/delegated-queryfrom
avi/screening-v3/anonymizer-screening-subjects

Conversation

@avi-starkware

@avi-starkware avi-starkware commented Aug 12, 2026

Copy link
Copy Markdown
Collaborator

The anonymizer answers the pool's delegated screening query: get_screening_subjects names the
shadow account the deposits passed through, which is the address compliance must cover — the dapp
pays the shadow account, and the anonymizer collects from there into an open note. Its parameters
mirror privacy_invoke_with_computation, because the pool forwards that call's calldata verbatim,
so the view's parameter list is the deserializer for it; calls is declared and never read, since
which shadow account acts decides the address, not what it does. No open notes means no answer.

Co-Authored-By: Claude Opus 5 noreply@anthropic.com


This change is Reviewable

@avi-starkware
avi-starkware marked this pull request as ready for review August 12, 2026 08:54
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/delegated-query branch from 586ad93 to fd82f75 Compare August 17, 2026 18:52
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/anonymizer-screening-subjects branch from 36bcddf to c6a5864 Compare August 17, 2026 18:52
@avi-starkware avi-starkware changed the title feat(anonymizer): a shadow account is its interaction's screening subject feat(anonymizer): a shadow account is its interaction's associated address Aug 17, 2026
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/delegated-query branch from fd82f75 to b79c463 Compare August 18, 2026 05:58
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/anonymizer-screening-subjects branch from c6a5864 to 727fd7b Compare August 18, 2026 05:58
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/delegated-query branch from b79c463 to 2a49606 Compare August 18, 2026 10:43
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/anonymizer-screening-subjects branch from 727fd7b to cd67ff5 Compare August 18, 2026 10:43
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/delegated-query branch from 2a49606 to dff5be0 Compare August 18, 2026 13:45
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/anonymizer-screening-subjects branch from cd67ff5 to d23f210 Compare August 18, 2026 13:45
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/delegated-query branch from dff5be0 to 7e779ab Compare August 18, 2026 14:31
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/anonymizer-screening-subjects branch from d23f210 to b3b8d14 Compare August 18, 2026 14:31
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/delegated-query branch from 7e779ab to 83e2d4a Compare August 19, 2026 07:24
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/anonymizer-screening-subjects branch from b3b8d14 to 87434d5 Compare August 19, 2026 07:25
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/delegated-query branch from 83e2d4a to ef5bacf Compare August 19, 2026 07:49
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/anonymizer-screening-subjects branch from 87434d5 to 3538169 Compare August 19, 2026 07:49
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/delegated-query branch from ef5bacf to 0b5bb24 Compare August 19, 2026 09:21
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/anonymizer-screening-subjects branch from 3538169 to eb5bf8c Compare August 19, 2026 09:22
…dress

privacy_invoke_with_computation returns the shadow account its deposits
passed through after those deposits, so the privacy contract learns the
address to screen from the interaction that produced them rather than by
asking a second time. Nothing is appended when there are no deposits, which
is the same condition as settling no note. The pool-side e2e test moves to
the production posture: listed Delegated, attesting the predicted address.
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/delegated-query branch from 0b5bb24 to eaa153c Compare August 19, 2026 10:49
@avi-starkware
avi-starkware force-pushed the avi/screening-v3/anonymizer-screening-subjects branch from eb5bf8c to c09c6c1 Compare August 19, 2026 10:49
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.

1 participant