Files
proxmox/docs/04-configuration/EXPLORER_TOKENS_GRU_POLICY.md
defiQUG b3a8fe4496
Some checks failed
Deploy to Phoenix / deploy (push) Has been cancelled
chore: sync all changes to Gitea
- Config, docs, scripts, and backup manifests
- Submodule refs unchanged (m = modified content in submodules)

Made-with: Cursor
2026-03-02 11:37:34 -08:00

43 lines
2.8 KiB
Markdown

# Explorer tokens and GRU policy
**Purpose:** All compliant (c*) tokens listed on [https://explorer.d-bis.org/tokens](https://explorer.d-bis.org/tokens) must be part of the GRU (Global Reserve Unit) — i.e. registered in `UniversalAssetRegistry` as `AssetType.GRU`.
## Policy
1. **Token lists**
The canonical Chain 138 token list (`token-lists/lists/dbis-138.tokenlist.json`) and the explorer/MetaMask list (`explorer-monorepo/backend/config/metamask/DUAL_CHAIN_TOKEN_LIST.tokenlist.json`) include only c* tokens that are **registered as GRU** on Chain 138.
2. **When adding a new c* token**
- Deploy the token (or confirm address).
- Register it as GRU: set the token address in `smom-dbis-138/.env` (e.g. `CEURT_ADDRESS_138`, `CGBPC_ADDRESS_138`; see `ENV_EXAMPLE_CONTENT.md`), then run:
```bash
./scripts/deployment/set-dotenv-c-tokens-and-register-gru.sh
```
- Add the token to the token lists (dbis-138 and DUAL_CHAIN for Chain 138) **after** it is registered as GRU.
3. **All c* registered as GRU**
The script `set-dotenv-c-tokens-and-register-gru.sh` sets and registers the following c* (addresses from DeployCompliantFiatTokens / ENV_EXAMPLE_CONTENT):
- **cUSDT** — `0x93E66202A11B1772E55407B32B44e5Cd8eda7f22`
- **cUSDC** — `0xf22258f57794CC8E06237084b353Ab30fFfa640b`
- **cEURC** — `0x8085961F9cF02b4d800A3c6d386D31da4B34266a`
- **cEURT** — `0xdf4b71c61E5912712C1Bdd451416B9aC26949d72`
- **cGBPC** — `0x003960f16D9d34F2e98d62723B6721Fb92074aD2`
- **cGBPT** — `0x350f54e4D23795f86A9c03988c7135357CCaD97c`
- **cAUDC** — `0xD51482e567c03899eecE3CAe8a058161FD56069D`
- **cJPYC** — `0xEe269e1226a334182aace90056EE4ee5Cc8A6770`
- **cCHFC** — `0x873990849DDa5117d7C644f0aF24370797C03885`
- **cCADC** — `0x54dBd40cF05e15906A2C21f600937e96787f5679`
- **cXAUC** — `0x290E52a8819A4fbD0714E517225429aA2B70EC6b`
- **cXAUT** — `0x94e408E26c6FD8F4ee00b54dF19082FDA07dC96E`
Token lists (dbis-138, DUAL_CHAIN for 138) include at least cUSDT, cUSDC, cEURC; add others to lists after they are deployed and verified on explorer.
4. **Explorer /tokens page**
The explorer loads tokens from the Blockscout API (`/v2/tokens`). Curated lists (e.g. for MetaMask or display) must only include c* that are GRU-registered. When adding new c* to any list that can surface on the explorer, register them as GRU first (see step 2).
## References
- [DEPLOYMENT_ORDER_OF_OPERATIONS](../03-deployment/DEPLOYMENT_ORDER_OF_OPERATIONS.md) § Phase 2.4 (Register c* as GRU)
- [set-dotenv-c-tokens-and-register-gru.sh](../../scripts/deployment/set-dotenv-c-tokens-and-register-gru.sh)
- [RegisterGRUCompliantTokens.s.sol](../../smom-dbis-138/script/deploy/RegisterGRUCompliantTokens.s.sol)
- [C_TO_CW_MAPPER_MAPPING.md](C_TO_CW_MAPPER_MAPPING.md) — c* to cW* mapping for mapper on other chains