Skip to main content
EVM 原生计算从链与区块上下文出发,消费状态或事件数据并生成派生结果。BlockX 通过 Call Builder、运行时读取和 Writer Plugin,将这些数据语义连接到函数执行。

链与区块上下文

根据计算目的对齐这些上下文。一个 bundle 包含多个高度;如果每行都需要读取历史状态,应从源数据中确定读取上下文。bundle 编号不能用作区块标识。

状态、事件与依赖

BlockDB 提供表数据,EVM 节点能力提供账户状态和合约查询。为函数中的每个问题选择对应的数据来源。

函数调用与合约调用

一个 BlockX Call 可以读取状态并发起多次合约调用。Python Executor 运行用户函数;节点能力执行 EVM 查询,再通过 Worker IO 路径返回结果。

沿数据流理解计算

  • 新区块处理选择一个触发区块及其输出上下文。
  • 历史回填选择源 bundle 和对应输出分区。
  • 调用方控制提交及后续就绪检查。

小结

  • 在输入、读取和输出中传递预期的链与区块上下文。
  • 区分 BlockX Call 与 EVM 合约调用。
  • 分别确认存储完成与函数执行完成。
继续阅读: