Skip to content

Add cosmos CAIP-19 asset profile - #214

Open
okwme wants to merge 1 commit into
ChainAgnostic:mainfrom
okwme:add-cosmos-caip19
Open

okwme wants to merge 1 commit into
ChainAgnostic:mainfrom
okwme:add-cosmos-caip19

Conversation

@okwme

@okwme okwme commented Sep 14, 2026

Copy link
Copy Markdown

Adds a CAIP-19 asset profile to the existing cosmos namespace. The CAIP-2 profile is already ratified and is not touched.

Who wrote this

I do not represent the cosmos ecosystem. I maintain FAR, an open cross-reference between CAIP-19, CoinGecko and ISO 24165 (DTI) identifiers, which needs a way to name 299 assets on this chain. CASA's README invites profiles added to an existing namespace, so this documents how assets are addressed rather than claiming to speak for anyone. Offered for the cosmos community to correct, adopt or replace.

Asset namespaces

slip44, bank, ics20, factory, cw20, cw721, snip20, snip721

What this profile establishes

An IBC denom hash is chain-relative. The same underlying asset has a different ibc/… hash on every chain, because the hash covers the full trace path. So cosmos:osmosis-1/ics20:<hash> and cosmos:juno-1/ics20:<other hash> can be the same economic asset and neither identifier reveals it. The profile states plainly that it cannot express that relationship, and why: SHA-256 is one-way, the counterparty chain-id needs a channel→connection→client walk, and unwinding is not uniquely defined. Equivalence has to be curated metadata.

A measured design decision. The factory/ prefix is stripped rather than carried. Across a 2,000-denom live sample from Osmosis, 7 encode to 130 characters with the prefix retained — over CAIP-19's 128-char limit — and stripping brings every one of them under it.

slip44:118 is overloaded and made unrepresentable by restriction rather than discouraged by convention: chain-registry declares coin type 118 for Osmosis, Juno, Celestia, Archway, Neutron and Stargaze, so cosmos:osmosis-1/slip44:118 would be ambiguous between OSMO and ATOM-on-Osmosis.

Every example was verified against a live node or explorer; anything that could not be verified is marked as such in the document rather than asserted. discussions-to points at 0xcounting/FAR#1.

Adds an asset specification to the existing cosmos namespace, covering 299
assets that a cross-reference project needs to name. The CAIP-2 profile is
unchanged.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant