Add Validator via Multi-Sig
Add a new validator using Safe wallet multi-sig approval
Adding a validator through the multi-sig involves two phases, each requiring Safe wallet approval. This guide walks you through the complete process.
Prerequisites
Before starting, ensure you have:
- ✅ Access to your Safe wallet at wallet.ash.center
- ✅ The required number of signers available
- ✅ A validator node ready to be added (Node ID and BLS public key)
- ✅ Your PoA Manager contract address
Phase 1: Initiate Validator Registration
Access Your Safe Wallet
- Go to wallet.ash.center
- Connect your wallet
- Select your Safe from the list
- Navigate to "New Transaction" → "Transaction Builder"
Configure the Transaction
Set up the transaction to call your PoA Manager:
| Field | Value |
|---|---|
| To Address | Your PoA Manager address |
| Value | 0 |
| Contract Method | addValidator or use custom calldata |
Enter Validator Details
You'll need to provide:
- Node ID: The validator's node identifier (20 bytes)
- BLS Public Key: The validator's BLS public key (48 bytes)
- Weight: The validator's voting weight
- Remaining Balance Owner: P-Chain address(es) to receive remaining balance
- Disable Owner: P-Chain address(es) that can disable the validator
The PoA Manager simplifies parameter formatting compared to calling the Validator Manager directly. Refer to your PoA Manager's ABI for exact parameter formats.
Submit the Transaction
- Review all parameters carefully
- Click "Create Batch" or "Submit"
- Sign the transaction with your wallet
Collect Approvals
After submitting:
- The transaction appears in the "Queue" tab
- Share the transaction details with other signers
- Each signer must:
- Connect to the Safe
- Review the transaction
- Click "Confirm"
Execute the Transaction
Once the threshold is reached:
- Any signer can click "Execute"
- Pay the gas fee to execute the transaction
- Wait for the transaction to confirm
Result: A Warp message is sent to the P-Chain to register the validator.
Phase 2: Complete Validator Registration
After the P-Chain processes the registration, you need to complete it:
Monitor P-Chain Status
Wait for the P-Chain to process the registration. This typically takes a few seconds to a minute.
Prepare Completion Transaction
In your Safe wallet:
- Navigate to "New Transaction" → "Transaction Builder"
- Set the target to your PoA Manager address
- Call the
completeValidatorRegistrationfunction - Provide the message index from the P-Chain response
Collect Approvals for Completion
Same process as Phase 1:
- Submit the transaction
- Coordinate with signers for approvals
- Reach the required threshold
Execute Completion
Execute the transaction to finalize the validator registration.
Result: The validator is now active and participating in consensus.
Verification
After completion, verify the validator was added:
- Query the validator set using the Query Validator Set tool
- Check that your new validator appears with the correct weight
- Monitor your validator node to ensure it's participating in consensus
Tips for Smooth Operations
Prepare Everything in Advance
Before proposing the transaction:
- Have all validator details ready
- Confirm signer availability
- Test with a smaller weight first if unsure
Communicate with Signers
- Share the transaction link or details
- Explain what's being proposed
- Set a deadline for approvals
Handle Timeouts
Remember: validator registrations expire after 24 hours. If the completion phase isn't executed in time:
- The registration becomes invalid
- You'll need to clean up the expired registration
- Start the process again with a new initiation
Is this guide helpful?


