feat(client): subaccounts(dappName).addresses via get_sub_accounts view (#922)
client.build().subaccounts(dappName).addresses(range) resolves a dapp's sub-account addresses through
the anonymizer's get_sub_accounts view over a typed Contract cached on the client, keyed by
wallet.partialCommitment(dappName). AddressRange { start?=0, end?=start+DEFAULT_ADDRESS_RANGE_END,
untilUndeployed?=false }: untilUndeployed=true passes the view's until_undeployed flag to return the
contiguous deployed prefix. SubAccountInfo is the decoded struct (nonce, address, is_deployed) — both
felts are bigint (the abi-wan static type says string for the address, but the runtime decoder returns
bigint, pinned by the integration test). The subaccounts(dappName) namespace will grow invoke with the
roundtrip work. resolveSubAccounts / SubAccountInfo / AddressRange exported. 6 unit + 1 integration test.
<!-- Reviewable:start -->
- - -
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/starkware-libs/starknet-privacy/922)
<!-- Reviewable:end --> I
Ittay Dror committed
adc4b8b697b187892bbac789585fd691804b6d7d
Parent: 438abd6
Committed by GitHub <noreply@github.com>
on 8/2/2026, 11:46:58 AM