Skip to main content

Recovering Morse Accounts

Authority-gated

The recovery process is authority-gated and requires proper authorization.

Ensure the destination Shannon address is correct.

Quickstart

Recovering a lost Morse account to a misc Shannon address on Beta:

pocketd tx migration recover-account A7BEC93013FA51339DE2F62CB0466550C67092F2 pokt132y5nzs4xahqy6cmzankn8mn4ec897j50wuzhr --from=pnf_beta --network=beta
# pokt132 is a misc account address

Recovering the Morse DAO module account to Shannon's PNF address on Beta:

pocketd tx migration recover-account DAO pokt1f0c9y7mahf2ya8tymy8g4rr75ezh3pkklu4c3e --from=pnf_beta --network=beta
# pokt1f0... is the pnf_beta account address

For other options and configurations, run:

pocketd tx migration recover-account --help

Table of Contents

Overview

This guide covers how to recover Morse accounts that:

  1. Are in the recovery allowlist
  2. Are unclaimable due to some reason (lost private key, unclaimable, etc)
  3. Can only be claimed by an onchain authority (i.e. Pocket Network Foundation)

Step 1: Verify the account balance and details

pocketd configs

You may need to update --home=... --keyring-backend=... to fit your pocketd environment

Using A7BEC93013FA51339DE2F62CB0466550C67092F2 as an example on Beta TestNet.

  1. Visit shannon-beta.trustsoothe.io/migration?address=A7..F2
  2. Look for A7..F2 in recovery_allowlist.go.
  3. Verify A7..F2 is in state export from Morse.

Optional Verification Steps

Adding and verifying authority address

Add pnf_beta to your keyring:

pocketd keys import-hex pnf_beta <private-key-hex-for-pnf-beta> --key-type secp256k1 --keyring-backend=os

Get the address of pnf_beta:

pocketd keys show pnf_beta -a --keyring-backend=os
# The following address corresponds to the pnf_beta address:
# pokt1f0c9y7mahf2ya8tymy8g4rr75ezh3pkklu4c3e

Verify that pnf_beta has the proper authorization:

pocketd q authz grants-by-grantee pokt1f0c9y7mahf2ya8tymy8g4rr75ezh3pkklu4c3e -o json --network=beta | jq '.grants[] | select(.authorization.value.msg == "/pocket.migration.MsgRecoverMorseAccount")'

Step 2: Recover the Account

pocketd tx migration recover-account A7BEC93013FA51339DE2F62CB0466550C67092F2 pokt132y5nzs4xahqy6cmzankn8mn4ec897j50wuzhr --from=pnf_beta --network=beta --keyring-backend=os --gas=auto --gas-adjustment=1.5 --fees=1000upokt

You can check the status of the transaction using:

pocketd q tx --type=hash <transaction-hash> --network=beta

Step 3: Verify the balance on the recovered account

pocketd q bank balances pokt132y5nzs4xahqy6cmzankn8mn4ec897j50wuzhr --network=beta