Terp Docs

IBC Workflows

Validate IBC paths, inspect channels and clients, and generate verifiable IBC metadata checksums on Terp Network

import { Callout } from 'fumadocs-ui/components/callout';

IBC Workflows

IBC lets Terp Network move tokens and packets across connected chains. This page is the operator/developer entry for inspecting and validating IBC state — not a full relayer runbook.

Chain information

Chain registry and metadata

ResourceUse
Public endpoints / S3 chain fileschain.json, assetlist.json, genesis, peers
cosmos.directoryAggregated RPC/REST for many chains including Terp
GitHub network reposGenesis and network params (mainnet / testnet)

Always confirm chain ID (morocco-1 mainnet, 90u-4 testnet) before opening channels or sending packets.

IBC paths and assets

Path metadata (channels, ports, counterparty chain) should be checked on-chain:

# List channels
terpd query ibc channel channels \
  --node https://rpc.cosmos.directory/terpnetwork \
  -o json | jq '.channels[:5]'

# Client states
terpd query ibc client states \
  --node https://rpc.cosmos.directory/terpnetwork \
  -o json | jq '.client_states | length'

Asset denom traces (IBC vouchers):

terpd query ibc-transfer denom-traces \
  --node https://rpc.cosmos.directory/terpnetwork \
  -o json | jq '.denom_traces[:5]'

IBC path validation

Channel verification

# Replace with a real channel id from the list above
CHANNEL=channel-0
PORT=transfer

terpd query ibc channel end "$PORT" "$CHANNEL" \
  --node https://rpc.cosmos.directory/terpnetwork \
  -o json | jq .

Confirm:

  • Channel state is STATE_OPEN
  • Counterparty port/channel match what you expect
  • Connection hops point at a live connection

Client state

CLIENT_ID=07-tendermint-0   # example — use your channel's client

terpd query ibc client state "$CLIENT_ID" \
  --node https://rpc.cosmos.directory/terpnetwork \
  -o json | jq .

Stale clients are a common failure mode for expired paths — see Expired client when that guide is populated.

Connection status

terpd query ibc connection connections \
  --node https://rpc.cosmos.directory/terpnetwork \
  -o json | jq '.connections[:3]'

Generate verifiable IBC checksums

For integrity of exported IBC metadata (channels, clients, connections):

  1. Export JSON from chain queries
  2. sha256sum the artifacts
  3. Compare against independently published checksums

Full scripted workflow: IBC Info checksums.

Transfers and relaying

TaskGuide
Token transfer CLI shapeTransfers
Run a relayerRelaying intro
Self-relay conceptsSelf-relay
Wasm light clientsWasm light client

Example transfer (fill channel and addresses carefully):

terpd tx ibc-transfer transfer transfer <src-channel> <receiver-on-dst> <amount> \
  --from <key> \
  --chain-id morocco-1 \
  --node https://rpc.cosmos.directory/terpnetwork \
  --gas auto \
  --gas-adjustment 1.5 \
  -y

Static content and deployment

Some teams generate static HTML or JSON from chain registry + on-chain queries for frontends. Patterns:

  1. Query live IBC state (or registry) in CI
  2. Hash outputs for release attestations
  3. Host as static assets with integrity metadata

Verification of hosted pages: Verify website.
Concept background: IBC concept.

Further reading

On this page