Disclosure policy
Every disclosure field ispublic. execute() submits the transaction directly.
Example
Seed state
Seed one unspent note whose value matches the amount you will withdraw.id is the note commitment.
List notes and withdraw
listPublicWithdrawNotes reads local state. It returns unspent notes that can be withdrawn. page starts at 1.
amount must equal the note value. to must be the connected wallet. That address signs the payout.
Omit noteId only when exactly one unspent note has that asset and amount. Catch PublicWithdrawNoteError when no unspent note matches.
listPublicWithdrawNotes again to confirm it is still listed.