---
# System prepended metadata

title: CAIP-25 vis-a-vis all the new EIPs and Capabilities/RPCs

---

# CAIP-25 vis-a-vis all the new EIPs and Capabilities/RPCs

## Top-Level issues

- Capabilities can be scoped to:
    1. universal (wallet-scope) --> chainId 0x0 in EIPs
    2. chain-scope
    3. batch-scope
    4. call-scope
- dapp/wallet dynamic
    - which scopes can a dapp request, for each capability
    - can wallet reply at a different scope?
- do all "chainId 0x0" scopes go in:
    1.`sessionProprties` or
    2.`scopeProperties[eip155:...].0x0` or
    3. either depending on context? Postel's law?
- scopedProperties
    - keys ignored if they don't match a namespace of that connection


## Example CAIP-25 messages

```
{ 
    `eip155:1` {
        methods: ...
    },
    `eip155:10`:{
        methods: ...
    },
    `solana`: {
        scopes: [`mainnet`, testnet``]
    }
    scopedProperties:{
        "eip155" : { flowControl: ... } //not allowed, doesn't match a specified 
        "solana" : {} //allowed, because matches a declared scopeObject
        "eip155:1": {} //all good
        "eip155:10": {} //all good
        "eip155:100": {} //not valid because 100 not requested by dapp
    }
    sessionProperties:{
        "flowControl"
    }
}

```

## Tactical Consideration

- what order to add a CAIP-25 section to "Implementation Considerations" to each EIP?
    1. batch (5792) is going to last call soon!
    2. flowControl (7811) also needs to be done soon for 
    3. namespaces/eip155-caip25.md .sessionProperties the canonical place
    4. informational "CAIP-25 for dummies" EIP (normrefs all specifics)

## Specific notes on specific EIPs or CAIPs