From 1019122f1655757a883e3f670dbe0ef392c7d070 Mon Sep 17 00:00:00 2001 From: zakir <80246097+zakir-web3@users.noreply.github.com> Date: Wed, 22 Apr 2026 10:48:39 +0800 Subject: [PATCH] docs: add maintenance notice, in-repo validator exit guide Made-with: Cursor --- README.md | 15 ++++++++ docs/README.md | 1 + docs/validator-exit-guide.md | 74 ++++++++++++++++++++++++++++++++++++ 3 files changed, 90 insertions(+) create mode 100644 docs/validator-exit-guide.md diff --git a/README.md b/README.md index 046a887c2..2ee23ac2e 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,21 @@ **Pundi AIFX** is a blockchain built using Cosmos SDK and Cometbft. +## Maintenance status (read this first) + +**Official maintenance of this repository and the reference `fxcored` binaries ended on March 1, 2026.** There will be no guaranteed security fixes, upgrade coordination, or release support from the core team after that date. A small number of validators may still be online; if you operate one, treat the network as **community-run / at your own risk**. + +For a step-by-step **validator exit** walkthrough (unbonding, keys, and shutting down the node), see [docs/validator-exit-guide.md](docs/validator-exit-guide.md). + +### If you still run a validator — quick checklist + +1. **Decide whether to keep operating.** Without official maintenance, you are responsible for incident response, chain halts, and any emergency patches yourself (or via a community fork). +2. **Plan key and funds safety.** Ensure operator keys, consensus keys, and key backups are stored offline and access-controlled. If you stop validating, follow the normal Cosmos SDK flow for **unbonding** / **undelegation** and respect unbonding time on **mainnet `fxcore`** or **testnet `dhobyghaut`** as applicable. +3. **Stop the node cleanly when you exit.** Disable orchestration (systemd, Kubernetes, cosmovisor, etc.), then shut down `fxcored` so the validator does not keep signing while you intend to leave the active set. +4. **Archive what you need.** Export or retain any accounting, logs, or state snapshots required for your records before decommissioning hardware. +5. **Use tagged releases only — never `main`.** Historical builds and upgrade heights are described in [Releases](https://github.com/pundiai/fx-core/releases); `main` is not a supported production branch. +6. **Docs may be stale.** The former documentation site is [Pundi AIFX Docs](https://pundi.gitbook.io); verify any procedure against on-chain parameters and your own node version. + [![Version](https://img.shields.io/github/v/release/pundiai/fx-core.svg)](https://github.com/pundiai/fx-core/releases/latest) [![License](https://img.shields.io/github/license/pundiai/fx-core.svg)](https://github.com/pundiai/fx-core/blob/main/LICENSE) [![API Reference](https://pkg.go.dev/badge/github.com/pundiai/fx-core.svg)](https://pkg.go.dev/github.com/pundiai/fx-core/v8) diff --git a/docs/README.md b/docs/README.md index 13d7d1a43..265012583 100644 --- a/docs/README.md +++ b/docs/README.md @@ -13,6 +13,7 @@ * [PundiScan](https://pundiscan.io) * [Ping.Pub](https://ping.pub/fxcore) * [Develop Tools](tools) +* [Validator exit guide](validator-exit-guide.md) # Pundi AIFX SDK diff --git a/docs/validator-exit-guide.md b/docs/validator-exit-guide.md new file mode 100644 index 000000000..128921704 --- /dev/null +++ b/docs/validator-exit-guide.md @@ -0,0 +1,74 @@ +# Validator exit guide + +This guide explains how to exit as a validator on the **Pundi AIFX** chain by unbonding your self-delegation. When a validator's self-delegation falls below the minimum self-delegation threshold, the validator will automatically go offline. **Importantly, the validator will not be penalized** in this process. + +--- + +## Method 1: Via command line + +### Step 1: Query self-delegation + +Before unbonding, check your current self-delegation. Use your **account address** (the same key you used to self-delegate) and your **validator operator address** (`fxvaloper...`): + +```bash +fxcored query staking delegation [your-account-address] [your-validator-valoper] --node https://fx-json.functionx.io:26657 +``` + +To list **all** delegations to your validator (including self-delegation): + +```bash +fxcored query staking delegations-to [your-validator-valoper] --node https://fx-json.functionx.io:26657 +``` + +### Step 2: Query validator information (optional) + +To view general validator details: + +```bash +fxcored query staking validator [your-validator-valoper] --node https://fx-json.functionx.io:26657 +``` + +### Step 3: Unbond (cancel self-delegation) + +Execute the unbond transaction: + +```bash +fxcored tx staking unbond [validator-valoper] [amount] --from mywallet --gas auto --gas-adjustment 1.5 --gas-prices 5000000000apundiai --chain-id fxcore --node https://fx-json.functionx.io:26657 +``` + +Replace: + +- `[validator-valoper]` — Your validator operator address (`fxvaloper...`) +- `[amount]` — Amount to unbond (e.g. `1000000000000000000apundiai`) +- `mywallet` — Your wallet key name (list keys with `fxcored keys list`) + +--- + +## Method 2: Via block explorer + +1. Open the block explorer: [https://pundiscan.io/pundiaifx/validators](https://pundiscan.io/pundiaifx/validators) +2. Connect your wallet +3. Click the **Delegate** button +4. Select the **Unbonding** tab +5. View your delegation list and select the delegation you wish to unbond +6. Click the **Undelegate** button +7. Enter the amount to undelegate +8. Click **Submit** and wait for the transaction to complete + +--- + +## Shutting down the node + +After your validator has left the active set (or you no longer intend to run the binary): + +1. Stop process supervision (systemd, cosmovisor, Kubernetes, etc.). +2. Stop `fxcored` cleanly so it does not keep trying to sign. +3. Keep a secure backup of keys and any on-disk data you need before decommissioning hardware. + +--- + +## Important notes + +- **No penalty**: When your self-delegation drops below the minimum self-delegation threshold, the validator will automatically go offline. You will **not** be slashed or penalized. +- **Unbonding period**: After unbonding, tokens enter an unbonding period before they become fully transferable. Check the chain parameters for the exact unbonding duration. +- **Minimum threshold**: Ensure you understand the minimum self-delegation requirement for validators on the network before proceeding.