我在Boreas更新里盯到一个很容易让索引器“看错账”的细节:合约执行回滚后,某些event仍可能被archive保存。看到记录,不代表状态真的生效。

Boreas主网规则在6月10日协调重启时启用,对应区块4,414,095和Rusk 1.7。之后,被回滚的event会留在归档数据里,并带reverted标记;但它不会进入规范区块用于检索的事件过滤结构,被回滚的质押事件也不会改变共识参与者状态。把流程拆开其实是三层:执行过程中曾产生事件→执行结果回滚→归档为审计和历史重放保留痕迹,但最终有效状态不承认这次变化。ETH开发者更习惯按event做索引,这里尤其不能只按事件名更新余额、质押或业务状态。$ETH

BTC用户通常看一笔资产是否最终被花费,应用事件不是主要判断入口;到了Dusk合约环境,前端和数据服务多了一层“记录是否等于有效状态”的校验。实际读取时,至少要检查reverted并结合执行结果。$BTC

这条规则对普通用户的影响,不在于必须学会读索引器,而在于钱包、浏览器和数据面板不能把“归档里存在”显示成“已经完成”。@Dusk_Foundation 这次把历史可追溯和当前状态明确分开。我接下来更想看第三方数据服务是否统一处理这个标记,因为一旦漏掉,展示错误往往比链上错误更容易误导人。这不是显示层的小差异,而是状态语义的底线。$DUSK
#dusk