Application Stake Transfer

1

Check the application unstake session end height

Query the application to get the unstake session end height:

pocketd query application show-application <app_address> | yq .application.unstake_session_end_height

# OR more specifically, using jq or yq (JSON output)
pocketd query application show-application <app_address> -o json | jq .application.unstake_session_end_height
2

Wait for the application unbonding period to elapse

The application unbonding period is a governance parameter expressed in sessions after the end height of the session in which the application was unstaked. Query its value:

pocketd query shared params

# OR more specifically, using jq or yq
pocketd query shared params | yq .params.application_unbonding_period_sessions
pocketd query shared params -o json | jq .params.application_unbonding_period_sessions

Query the current block height:

pocketd query block

# OR more specifically, using jq or yq
pocketd query block | yq .header.height
pocketd query block -o json | tail -n -1 | jq .header.height

Wait until the current height has advanced past the unstake session end height plus the application unbonding period (as applicable).

3

Re-stake applications

Re-stake the destination application with its original or expected configuration and stake:

pocketd tx application stake <app_address> --config <wrong_destination_restore_config_path> --from <key_name>

Stake the correct/intended destination application with the transferred sources configuration and stake:

pocketd tx application stake <app_address> --config <intended_destination_config_path> --from <key_name>

Was this helpful?