Skip to content

[Bug] walletConnect createOfferForIds Incorrectly identifies CATs as NFTs when using Asset ID #2647

Open
@BrandtH22

Description

@BrandtH22

What happened?

When sending a create offer for ids request via walletConnect, cats are identified as NFTs rather than as CATs when using the CATs asset id (the standard CLI and RPC commands default to CATs and this behavior is different). This issue persists when the driver dict is added.

Current workaround is to first query the wallet with getWallets to identify the wallet ID associated with the CAT then run the createOfferForIds command using the wallet ID in place of the assetID. If the cat is not yet added to the wallet then one first needs to add it with the walletConnect command chia_addCATToken then run getWallets to get its wallet ID.

An example payload that was used with the example dApp to reproduce the user reported issue:
Offer:

{"1":1000,"0x0f921c8585d3fea928cab803d050a8b7252705859ba2e0661f15634cec1fd9ab":-1}

Workaround offer payload using walletID 5 as an example (this will correctly identify the cat at that walletID):

{"1":1000,"5":-1}

Driver Dict:

{
  "0x0f921c8585d3fea928cab803d050a8b7252705859ba2e0661f15634cec1fd9ab":
  {
    "type": "cat",
    "tail": "0x0f921c8585d3fea928cab803d050a8b7252705859ba2e0661f15634cec1fd9ab"
  }
}

Example full payload from user who initially reported the issue:

{
  "chainId": "chia:mainnet",
  "request": {
    "method": "chia_createOfferForIds",
    "params": {
      "offer": {
        "1": 329563080000,
        "79f6313fdb6ba66347a5bcad4af6878ac07bf5fafedeb384c3b350d913c8b6b6": -1830906
      },
      "fee": 0,
      "driverDict": {},
      "validateOnly": true,
      "disableJSONFormatting": true
    }
  }
}

Issue reported by palvit | DeFi Geeks in discord (https://discord.com/channels/1034523881404370984/1034870571864948777/1358929424522805469)

Version

2.5.3 but also occurs in earlier versions (earliest tested was 2.3.0)

What platform are you using?

Windows

What ui mode are you using?

GUI

Relevant log output or stacktrace

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions