# Pulsar-3 (Secret Network testnet) chain snapshot

| | |
|---|---|
| **Chain** | `pulsar-3` |
| **Height** | `3241158` |
| **Created (UTC)** | `20260807T190813Z` |
| **File** | [`pulsar-3-3241158-20260807T190813Z.tar.gz`](https://pulsar-snapshots.secret3.dev/pulsar-3-3241158-20260807T190813Z.tar.gz) |
| **Latest** | [latest.tar.gz](https://pulsar-snapshots.secret3.dev/latest.tar.gz) |
| **SHA-256** | `432a484ee076eaa71dfa26ae56ea75d13f8c2584993bb6823656ac7d35ab8eb5` |
| **Size** | 12GiB |

Hosted at **https://pulsar-snapshots.secret3.dev**

## What is included

- `data/` — application, blockstore, state, tx index, etc. (see exclusions below)
- `config/genesis.json`
- `config/addrbook.json` — known peers (speeds up P2P join)
- `.compute/` — Secret local wasm/compute cache

## What is **not** included (on purpose)

- `config/node_key.json` / `config/priv_validator_key.json` (your identity keys)
- `data/priv_validator_state.json` (local signing height/round — you get a fresh one)
- `data/upgrade-info.json` (host-local upgrade marker)
- `config.toml` / `app.toml` (your local node settings)
- Keyring / wallets
- SGX sealed secrets (`/opt/secret/.sgx_secrets`) — machine-local; re-join via normal Secret node setup

---

## Quick start: fresh testnet node from this snapshot

Run on Ubuntu 22.04/24.04 with SGX capable of running Secret. Requires `sudo`.

```bash
#!/usr/bin/env bash
# Restore a pulsar-3 full node from https://pulsar-snapshots.secret3.dev
set -euo pipefail

DOMAIN="pulsar-snapshots.secret3.dev"
SERVICE="${SERVICE:-secret-node}"
HOME_DIR="${HOME}"
SECRETD_HOME="${SECRETD_HOME:-$HOME_DIR/.secretd}"
INSTALL_URL="https://raw.githubusercontent.com/Secret3dev/SecretNetwork/v1.26.0-community-continuance/scripts/install-testnet.sh"

echo "==> 1/5  Install / upgrade secretd (Continuance testnet binary)"
curl -fsSL -o /tmp/install-testnet.sh "$INSTALL_URL"
chmod +x /tmp/install-testnet.sh
# If the node service does not exist yet, the install script may fail on
# systemctl stop/start — that is OK for brand-new hosts. Install the .deb
# manually from the same release if needed, or re-run after creating the unit.
sudo SERVICE="$SERVICE" /tmp/install-testnet.sh || {
  echo "install script reported an error (common on brand-new hosts)."
  echo "Ensure secretd is on PATH: secretd version"
}

echo "==> 2/5  Init home (skip if you already have genesis + config)"
if [[ ! -f "$SECRETD_HOME/config/genesis.json" ]]; then
  secretd init "${MONIKER:-pulsar-snap-$(hostname -s)}" --chain-id pulsar-3 --home "$SECRETD_HOME"
fi

echo "==> 3/5  Stop node and clear old chain data (keeps your keys)"
sudo systemctl stop "$SERVICE" 2>/dev/null || true
# Backup keys if present
mkdir -p /tmp/secretd-key-backup
for f in node_key.json priv_validator_key.json; do
  [[ -f "$SECRETD_HOME/config/$f" ]] && cp -a "$SECRETD_HOME/config/$f" /tmp/secretd-key-backup/
done
[[ -f "$SECRETD_HOME/data/priv_validator_state.json" ]] \
  && cp -a "$SECRETD_HOME/data/priv_validator_state.json" /tmp/secretd-key-backup/ || true

# Remove only chain data; do not touch config keys
rm -rf "$SECRETD_HOME/data"
mkdir -p "$SECRETD_HOME"

echo "==> 4/5  Download + verify + extract snapshot"
cd /tmp
curl -fL --retry 3 -o latest.tar.gz "https://${DOMAIN}/latest.tar.gz"
curl -fL --retry 3 -o latest.sha256 "https://${DOMAIN}/latest.sha256"
sha256sum -c latest.sha256

tar -xzf latest.tar.gz -C "$SECRETD_HOME"
# Restore identity keys if we backed them up
for f in node_key.json priv_validator_key.json; do
  [[ -f /tmp/secretd-key-backup/$f ]] && cp -a /tmp/secretd-key-backup/$f "$SECRETD_HOME/config/$f"
done
# Fresh non-validator state if none
if [[ ! -f "$SECRETD_HOME/data/priv_validator_state.json" ]]; then
  cat > "$SECRETD_HOME/data/priv_validator_state.json" <<'STATE'
{
  "height": "0",
  "round": 0,
  "step": 0
}
STATE
fi

echo "==> 5/5  Start node"
# Point peers / seeds as needed in $SECRETD_HOME/config/config.toml, then:
sudo systemctl start "$SERVICE" 2>/dev/null || secretd start --home "$SECRETD_HOME"

echo "Done. Check sync:"
echo "  secretd status | jq '.sync_info'"
echo "  journalctl -u $SERVICE -f"
```

### Notes

1. **Validators:** never overwrite your `priv_validator_key.json`. This snapshot does not contain ours; still, always keep offline backups of your own keys before any data reset.
2. **SGX:** Secret nodes need a working enclave / registration path. Snapshot restore does not replace enclave registration or sealed consensus seed migration.
3. **Binary:** the Continuance testnet install script lives at:
   `https://raw.githubusercontent.com/Secret3dev/SecretNetwork/v1.26.0-community-continuance/scripts/install-testnet.sh`
4. **Browse files:** https://pulsar-snapshots.secret3.dev/
5. **Metadata:** https://pulsar-snapshots.secret3.dev/latest.json

---

*Generated by `setup-pulsar-snapshot.sh` on 2026-08-07T19:12:52Z.*
