graphprotocol / graphprotocol/graph-node

[Bug] Decode the input data of tx

未关闭
#5,643 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

bug Stale
主要语言
Rust
星标
3.2k
派生
1.1k
平均合并
4 天 1 小时
30 天内合并 PR
1

描述

Bug report

I am trying to debug the input data from tx https://arbiscan.io/tx/0x005bc2cc2715a77d8ac20524789a99bc05ca4048a3c9d78c5ad525c7139df9cf

This is my input data which I am using to decode
00000000000000000000000000000000000000000000000000000000000065f40000000000000000000000000000000000000000000000000000000000000276000000000000000000000000000000000000000000000000000000000000010016e3850080805d39bdb096fc08bf0041480292473fadfb4c72009291f11eb15f00000000000000000000000000000000000000000000000000000000000001202beda7a630edebbcad1bc24cd1f90a077ec6cda82c3771a387de0a7d903198da0000000000000000000000000000000000000000000000000000000066e0863d00000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000603d4f93a04a08ef38ccafd24c35084ecd0007810c986f677c6631b39c871ff0284c3ce5c5e58d837242f1bac4ad70fc63a378a98b69d24aadf3f44b4fc3dabcfd1b00000000000000000000000000000000000000000000000000000000000000

let decoded = ethereum.decode(
        "(uint256,uint256,uint256[],bytes32,address[],bytes32,uint64,bytes)",
        tx.input
      );

And here is the abi of function

{
    "inputs": [
      { "internalType": "uint256", "name": "remoteChainId", "type": "uint256" },
      { "internalType": "uint256", "name": "blockNonce", "type": "uint256" },
      {
        "internalType": "uint256[]",
        "name": "invalidBlockNonces",
        "type": "uint256[]"
      },
      {
        "internalType": "bytes32",
        "name": "finalizersHash",
        "type": "bytes32"
      },
      {
        "internalType": "address[]",
        "name": "finalizers",
        "type": "address[]"
      },
      { "internalType": "bytes32", "name": "salt", "type": "bytes32" },
      { "internalType": "uint64", "name": "expiry", "type": "uint64" },
      { "internalType": "bytes", "name": "multiSignature", "type": "bytes" }
    ],
    "name": "finalize",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  }

It seems decoding is not working.

Relevant log output

No response

IPFS hash

0x005bc2cc2715a77d8ac20524789a99bc05ca4048a3c9d78c5ad525c7139df9cf

Subgraph name or link to explorer

https://api.studio.thegraph.com/query/79955/test/v0.0.61

Some information to help us out
  • Tick this box if this bug is caused by a regression found in the latest release.
  • Tick this box if this bug is specific to the hosted service.
  • I have searched the issue tracker to make sure this issue is not a duplicate.
OS information

macOS

### Tasks

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

首先,使用 issue 中提供的交易输入和 ABI 重现 ethereum.decode 调用,并记录确切的失败信息或输出。将提供的交易数据与 finalize ABI 进行比较,并调查托管服务的行为。当解码问题得到解释,并且已记录经过验证的修复方案或明确的限制时,即视为完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
blockchain
领域
api, blockchain
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
需要澄清
新手友好度
25/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。