Test for Error

Hands-on exercise: Test for Error

Objectives

By the end of this exercise, you will be able to:

  • Verify you can no longer submit transactions after removing your transactor permissions
  • Verify you can no longer deploy contracts after removing your deployer permissions
  • Recognize the failure modes users will see in wallets and dApps

Instructions

Step 1: Attempt a normal transaction (should fail)

In your Core Wallet browser extension:

  1. Stay on your L1 network
  2. Try to send a small amount of the native token to any address you control
  3. Confirm the transaction

You should see a failure/revert because the Transaction AllowList blocks your address from submitting transactions.

Step 2: Attempt a contract deployment (should fail)

Use the ICM demo deploy tool (any deployment attempt works โ€” weโ€™re just testing deploy restrictions):

Builder Console

Checking requirements...

When you try to deploy, the transaction should fail because the Contract Deployer AllowList blocks your address from deploying contracts.

Expected Output

You should see:

  • A failed value transfer transaction (blocked by Transaction AllowList)
  • A failed contract deployment (blocked by Contract Deployer AllowList)

Next Steps

Next weโ€™ll cover how to safely recover from mistakes like this using network upgrades (enable/disable + role recovery).

Is this guide helpful?