Files
proxmox/docs/04-configuration/GRU_V2_IPFS_METADATA_RUNBOOK.md
defiQUG dbd517b279 Sync workspace: config, docs, scripts, CI, operator rules, and submodule pointers.
- Update dbis_core, cross-chain-pmm-lps, explorer-monorepo, metamask-integration, pr-workspace/chains
- Omit embedded publish git dirs and empty placeholders from index

Made-with: Cursor
2026-04-12 06:12:20 -07:00

1.6 KiB

GRU V2 IPFS Metadata Runbook

Purpose: Keep GRU v2 presentation metadata decentralized while storing only URIs on-chain.

Architecture

CompliantFiatTokenV2.tokenURI()
  -> ipfs://<cid>/cusdt-v2/metadata.json
  -> metadata.json
  -> logo/image ipfs://<logo-cid>

Each GRU v2 token also carries:

  • regulatoryDisclosureURI
  • reportingURI

Those URIs can point at separate IPFS JSON documents so governance and reporting can evolve without storing large blobs on-chain.

Repo source of truth

Metadata bundle source files live under:

  • config/gru-v2-metadata/chain138/cusdt-v2/
  • config/gru-v2-metadata/chain138/cusdc-v2/

Publish to IPFS

bash scripts/deployment/publish-gru-v2-chain138-metadata-to-ipfs.sh

Default IPFS API:

http://192.168.11.35:5001

The script:

  1. uploads the metadata/disclosure/reporting bundle
  2. writes config/gru-v2-metadata/chain138/ipfs-manifest.latest.json
  3. prints exportable env vars for deployment

Deploy with metadata

eval "$(
  bash scripts/deployment/publish-gru-v2-chain138-metadata-to-ipfs.sh \
    | awk '/^export / { print }'
)"

bash scripts/deployment/deploy-gru-v2-chain138.sh

The deploy path consumes:

  • CUSDT_V2_TOKEN_URI
  • CUSDT_V2_REGULATORY_DISCLOSURE_URI
  • CUSDT_V2_REPORTING_URI
  • CUSDC_V2_TOKEN_URI
  • CUSDC_V2_REGULATORY_DISCLOSURE_URI
  • CUSDC_V2_REPORTING_URI

Operational note

Wallets and explorers may cache logos and metadata. Updating the IPFS content will not refresh every client immediately, so treat metadata changes as gradual propagation events.