Skip to content

fix: Ethereum receipt-local log collection and compatible PTC verification - #7

Draft
fengjy73 wants to merge 3 commits into
feat/add-monitor-module-and-monitor-system-simulatorfrom
fix/ethereum-receipt-log-index
Draft

fix: Ethereum receipt-local log collection and compatible PTC verification#7
fengjy73 wants to merge 3 commits into
feat/add-monitor-module-and-monitor-system-simulatorfrom
fix/ethereum-receipt-log-index

Conversation

@fengjy73

@fengjy73 fengjy73 commented Sep 4, 2026

Copy link
Copy Markdown

修复范围

Ethereum2/3把RPC区块级logIndex写入ledger,HCDVS却按单笔receipt.logs数组位置读取,导致同块后续交易证明越界。
过滤采集还存在N²事件重复与正文/ledger错配。

  • 新采集明确receipt-local的logIndex/receiptLogIndex,保留原RPC日志全局索引。
  • 一条过滤日志只输出一条对应消息;两种采集模式共享收据日志定位。
  • PTC先验证原MPT证明和可信共识根,再核对交易索引、AM地址、完整topics/data及正文。
  • 明确局部索引失败不回退;旧格式只在已证明的收据内唯一匹配完整事件,拒绝歧义和非法索引。
  • 不重发源交易、不改写旧UCP证明、不降低门限;不更改合约/账户/公共API/前端。

验证与上线

  • Java21:Ethereum2/3各19项定向测试通过(合计38);构建通过。完整RPC采集、原共识/收据证明及篡改/歧义拒绝均覆盖。
  • 代码0840fbd已部署至Plugin Server及三个普通PTC、一个监管PTC的Ethereum插件;主程序和Dioxide ISN插件SHA不变。
  • 原普通3×32消息96/96完成,原93条PENDING自然恢复;96条raw_message指纹全部不变,正文各一次、PTC100%。
  • 原93条的目标ISN全部唯一/FINALIZED,分配窗口48.075秒、首分配至最后归档73.377秒。
  • Mychain监管96条、跨插件竞争32条、Dioxide双向样本和Ethereum→FISCO SDP V1/V2/V3样本回归正常。
  • 新同块普通2条、监管2条均SUCCESS,PTC100%、监管四阶段完整。第二条普通RPC全局索引2→显式局部0;监管全局4→局部1。
  • 独立FISCO SDK确认两个新监管目标receipt状态0、业务正文精确一致且各执行一次;没有改变Ethereum最终性策略。
  • 共享协调记录229条/229个唯一ISN(181–409)全部FINALIZED;公共查询、隧道、原端口保持正常。

完整说明:docs/ETHEREUM_RECEIPT_LOG_INDEX_FIX_ZH.md。旧包及root-only配置备份保留;回滚不清理协调记录、不回退ISN。

本PR独立于ISN PR #6,通用Ethereum2部分另提交上游PR #84
未执行的Mychain普通/原生Dioxide SDP V2/V3组合不计入本PR验收;当前链上配置与全局监管策略未修改。

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