@@ -391,7 +391,41 @@ async function main() {
391391 }
392392
393393 // ────────────────────────────────────────────────────────────
394- // 7. DEFERRED EXECUTION (Authorize + ExecuteDeferred)
394+ // 7. REVOKE SESSION
395+ // ────────────────────────────────────────────────────────────
396+ console . log ( '\n--- RevokeSession ---' ) ;
397+
398+ // Ed25519 owner revokes Ed25519 session
399+ {
400+ const balBefore = await connection . getBalance ( payer . publicKey ) ;
401+ const { instructions } = await client . revokeSession ( {
402+ payer : payer . publicKey , walletPda : ed25519WalletPda ,
403+ adminSigner : ed25519 ( ed25519OwnerKp . publicKey , ed25519OwnerAuthPda ) ,
404+ sessionPda : ed25519SessionPda ,
405+ } ) ;
406+ const r = await sendAndMeasure ( connection , payer , instructions , [ ed25519OwnerKp ] ) ;
407+ const balAfter = await connection . getBalance ( payer . publicKey ) ;
408+ r . rentCost = balBefore - balAfter - 10000 ; // 2 signers = 10000 fee
409+ record ( 'RevokeSession (Ed25519 owner, Ed25519 wallet)' , r ) ;
410+ }
411+
412+ // Secp256r1 owner revokes Secp256r1 session
413+ {
414+ const ownerSigner = createMockSigner ( secpOwnerKey ) ;
415+ const balBefore = await connection . getBalance ( payer . publicKey ) ;
416+ const { instructions } = await client . revokeSession ( {
417+ payer : payer . publicKey , walletPda : secpWalletPda ,
418+ adminSigner : secp256r1 ( ownerSigner , { authorityPda : secpOwnerAuthPda } ) ,
419+ sessionPda : secpSessionPda ,
420+ } ) ;
421+ const r = await sendAndMeasure ( connection , payer , instructions ) ;
422+ const balAfter = await connection . getBalance ( payer . publicKey ) ;
423+ r . rentCost = balBefore - balAfter - 5000 ;
424+ record ( 'RevokeSession (Secp256r1 owner, Secp256r1 wallet)' , r ) ;
425+ }
426+
427+ // ────────────────────────────────────────────────────────────
428+ // 8. DEFERRED EXECUTION (Authorize + ExecuteDeferred)
395429 // ────────────────────────────────────────────────────────────
396430 console . log ( '\n--- Deferred Execution ---' ) ;
397431
@@ -424,7 +458,7 @@ async function main() {
424458 }
425459
426460 // ────────────────────────────────────────────────────────────
427- // 8 . REMOVE AUTHORITY
461+ // 9 . REMOVE AUTHORITY
428462 // ────────────────────────────────────────────────────────────
429463 console . log ( '\n--- RemoveAuthority ---' ) ;
430464
@@ -458,7 +492,7 @@ async function main() {
458492 }
459493
460494 // ────────────────────────────────────────────────────────────
461- // 9 . TRANSFER OWNERSHIP
495+ // 10 . TRANSFER OWNERSHIP
462496 // ────────────────────────────────────────────────────────────
463497 console . log ( '\n--- TransferOwnership ---' ) ;
464498
0 commit comments