Skip to content

test: re-enable authwit tests stale-skipped on additionalScopes - #18

Merged
IlyasRidhuan merged 1 commit into
stack/get-minterfrom
stack/reenable-tests
Aug 12, 2026
Merged

test: re-enable authwit tests stale-skipped on additionalScopes#18
IlyasRidhuan merged 1 commit into
stack/get-minterfrom
stack/reenable-tests

Conversation

@alejoamiras

@alejoamiras alejoamiras commented Aug 11, 2026

Copy link
Copy Markdown
Collaborator

What

Re-enables all seven integration tests skipped with "requires additionalScopes (not yet available)" — a stale claim: the API exists and was already used successfully elsewhere in the same files.

  • token: private transfer with authwitness (carl submits alice's transfer)
  • nft: both private→public authorization tests (bob submits for alice)
  • vault: all four private-flow suites (Private assets, Public shares, Public assets, Private shares, Private assets, Private shares, Exact methods, Mixed Assets, Private shares)

The fix on each third-party submission is additionalScopes: [owner], so the submitter's PXE can access the owner's notes (balances/NFT note + account-contract signing key). In vault.test.ts this is wired into both call helpers plus the six direct send({ from: carl }) calls. The sender's own scope is included by default — verified empirically (the pre-fix failure listed exactly [sender, zero] as allowed scopes).

Validation

Against a local aztec network (v5.1.0): token 1/1 · nft 9/9 (whole file) · vault "Successful interactions with authwits." 7/7, including all four re-enabled suites.

Codex adversarial review: approved, no findings — no assertions weakened, no isolation/ordering risk, scope coverage complete.

🤖 Generated with Claude Code

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

Seven tests were skipped with 'requires additionalScopes (not yet
available)' — but the API has been available for some time and is
already used successfully elsewhere in the same files. Re-enable all of
them, passing additionalScopes on every third-party submission so the
submitter's PXE can access the owner's notes:

- token: private transfer with authwitness (carl submits for alice)
- nft: both private-to-public authorization tests (bob submits for
  alice)
- vault: all four private-flow suites; both call helpers and the six
  direct third-party sends now scope the note owner (the sender's own
  scope is included by default)

Verified against a local network: token 1/1, nft 9/9, vault authwits
7/7.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@IlyasRidhuan
IlyasRidhuan merged commit 35532b5 into main Aug 12, 2026
6 of 7 checks passed
@alejoamiras
alejoamiras deleted the stack/reenable-tests branch August 12, 2026 17:00
@github-actions

Copy link
Copy Markdown

Benchmark Comparison

CPU Cores RAM Arch
AMD EPYC 9V74 80-Core Processor 4 16 GiB x64

Contract: escrow

🚦 Function Gates DA Gas L2 Gas Proving Time (ms)
Base PR Diff Base PR Diff Base PR Diff Base PR Diff
(partial) withdraw 486,936 486,936 3,744 3,744 587,800 587,800 13,915 15,058 +1,143 (+8.2%)
withdraw 331,210 331,210 832 832 499,700 499,700 11,312 12,185 +873 (+7.7%)
withdraw_nft 378,517 378,517 1,440 1,440 527,400 527,400 12,392 13,338 +946 (+7.6%)

Contract: logic

🚦 Function Gates DA Gas L2 Gas Proving Time (ms)
Base PR Diff Base PR Diff Base PR Diff Base PR Diff
get_escrow 390,359 390,359 192 192 456,000 456,000 12,633 13,521 +888 (+7.0%)
secret_key_to_public_keys 387,718 387,718 192 192 456,000 456,000 12,453 13,573 +1,120 (+9.0%)
share_escrow 303,989 303,989 1,952 1,952 520,700 520,700 11,108 11,963 +855 (+7.7%)

Contract: multitoken

🚦 Function Gates DA Gas L2 Gas Proving Time (ms)
Base PR Diff Base PR Diff Base PR Diff Base PR Diff
burn_private 260,810 260,810 832 832 499,700 499,700 9,978 10,959 +981 (+9.8%)
burn_public 223,823 223,823 416 416 638,292 638,292 9,643 10,534 +891 (+9.2%)
initialize_transfer_commitment 225,077 225,077 768 768 474,500 474,500 9,625 10,513 +888 (+9.2%)
mint_to_private 297,577 297,577 1,408 1,408 511,400 511,400 10,887 11,835 +948 (+8.7%)
mint_to_public 223,823 223,823 416 416 637,800 637,800 9,734 10,529 +795 (+8.2%)
transfer_private_to_commitment 264,328 264,328 1,024 1,024 511,400 511,400 10,046 11,000 +954 (+9.5%)
transfer_private_to_private 337,261 337,261 2,048 2,048 555,100 555,100 11,405 12,332 +927 (+8.1%)
transfer_private_to_public 307,363 307,363 1,056 1,056 714,677 714,677 10,916 11,862 +946 (+8.7%)
transfer_public_to_commitment 223,823 223,823 640 640 663,516 663,516 9,675 10,609 +934 (+9.7%)
transfer_public_to_private 298,128 298,128 1,024 1,024 683,958 683,958 10,760 11,770 +1,010 (+9.4%)
transfer_public_to_public 223,823 223,823 480 480 673,505 673,505 9,707 10,635 +928 (+9.6%)

Contract: nft

🚦 Function Gates DA Gas L2 Gas Proving Time (ms)
Base PR Diff Base PR Diff Base PR Diff Base PR Diff
burn_private 275,257 275,257 416 416 661,052 661,052 10,605 11,460 +855 (+8.1%)
burn_public 223,823 223,823 448 448 670,034 670,034 9,702 10,549 +847 (+8.7%)
mint_to_private 341,050 341,050 1,600 1,600 735,342 735,342 11,498 12,497 +999 (+8.7%)
mint_to_public 223,823 223,823 448 448 670,718 670,718 9,649 10,484 +835 (+8.7%)
transfer_private_to_private 249,719 249,719 832 832 499,700 499,700 9,933 10,878 +945 (+9.5%)
transfer_private_to_public 275,286 275,286 416 416 659,258 659,258 10,466 11,477 +1,011 (+9.7%)
transfer_public_to_private 292,460 292,460 992 992 683,268 683,268 10,740 11,651 +911 (+8.5%)
transfer_public_to_public 223,823 223,823 384 384 633,285 633,285 9,648 10,536 +888 (+9.2%)

Contract: token

🚦 Function Gates DA Gas L2 Gas Proving Time (ms)
Base PR Diff Base PR Diff Base PR Diff Base PR Diff
burn_private 303,652 303,652 1,024 1,024 713,957 713,957 10,839 11,803 +964 (+8.9%)
burn_public 223,823 223,823 448 448 672,632 672,632 9,743 10,584 +841 (+8.6%)
initialize_transfer_commitment 225,077 225,077 768 768 474,500 474,500 9,613 10,463 +850 (+8.8%)
mint_to_private 355,289 355,289 2,144 2,144 738,070 738,070 11,727 12,697 +970 (+8.3%)
mint_to_public 223,823 223,823 448 448 672,227 672,227 9,706 10,496 +790 (+8.1%)
transfer_private_to_commitment 260,673 260,673 992 992 511,400 511,400 10,101 10,968 +867 (+8.6%)
transfer_private_to_private 344,855 344,855 2,592 2,592 557,600 557,600 11,534 12,522 +988 (+8.6%)
transfer_private_to_public 303,708 303,708 1,024 1,024 714,023 714,023 10,943 12,058 +1,115 (+10.2%)
transfer_private_to_public_with_commitment 308,509 308,509 1,600 1,600 747,323 747,323 11,039 11,918 +879 (+8.0%)
transfer_public_to_commitment 223,823 223,823 576 576 662,529 662,529 9,692 10,527 +835 (+8.6%)
transfer_public_to_private 296,092 296,092 992 992 683,304 683,304 10,815 11,726 +911 (+8.4%)
transfer_public_to_public 223,823 223,823 448 448 672,548 672,548 9,760 10,530 +770 (+7.9%)

Contract: vault

🚦 Function Gates DA Gas L2 Gas Proving Time (ms)
Base PR Diff Base PR Diff Base PR Diff Base PR Diff
deposit_private_to_private 508,340 508,340 1,312 1,312 878,248 878,248 14,291 15,376 +1,085 (+7.6%)
deposit_private_to_private_exact 612,065 612,065 1,888 1,888 915,316 915,316 16,104 17,474 +1,370 (+8.5%)
deposit_private_to_public 436,085 436,085 768 768 862,273 862,273 13,099 14,177 +1,078 (+8.2%)
deposit_public_to_private 424,713 424,713 1,984 1,984 965,045 965,045 13,011 14,102 +1,091 (+8.4%)
deposit_public_to_private_exact 424,724 424,724 1,952 1,952 949,469 949,469 13,083 14,097 +1,014 (+7.8%)
deposit_public_to_public 223,823 223,823 832 832 897,563 897,563 9,705 10,446 +741 (+7.6%)
issue_private_to_private_exact 612,065 612,065 1,888 1,888 915,976 915,976 16,238 17,440 +1,202 (+7.4%)
issue_private_to_public_exact 484,820 484,820 1,344 1,344 899,998 899,998 13,905 15,046 +1,141 (+8.2%)
issue_public_to_private 346,165 346,165 1,376 1,376 921,661 921,661 11,610 12,511 +901 (+7.8%)
issue_public_to_public 223,823 223,823 832 832 898,253 898,253 9,681 10,490 +809 (+8.4%)
redeem_private_to_private_exact 614,859 614,859 1,888 1,888 915,823 915,823 16,202 17,436 +1,234 (+7.6%)
redeem_private_to_public 436,028 436,028 768 768 862,717 862,717 13,244 14,192 +948 (+7.2%)
redeem_public_to_private_exact 427,575 427,575 1,952 1,952 949,790 949,790 13,108 14,104 +996 (+7.6%)
redeem_public_to_public 223,823 223,823 832 832 898,085 898,085 9,747 10,503 +756 (+7.8%)
withdraw_private_to_private 511,134 511,134 1,312 1,312 878,458 878,458 14,375 15,405 +1,030 (+7.2%)
withdraw_private_to_private_exact 614,859 614,859 1,888 1,888 915,769 915,769 16,259 17,444 +1,185 (+7.3%)
withdraw_private_to_public_exact 484,763 484,763 1,344 1,344 900,232 900,232 14,044 14,989 +945 (+6.7%)
withdraw_public_to_private 440,832 440,832 2,528 2,528 967,356 967,356 13,385 14,323 +938 (+7.0%)
withdraw_public_to_public 223,823 223,823 832 832 898,388 898,388 9,812 10,550 +738 (+7.5%)

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