智能账户活动:交易笔数不等于用户数
智能账户活动有多层单位:基础层交易、打包操作、智能账户,以及背后的人或组织。比较应用采用之前,应先定义统计哪一层。一笔交易可以承载多个操作,一个账户也能执行很多动作,但这些都不自动等于很多用户。
ERC-4337介绍UserOperation、打包者与EntryPoint处理机制,为区分这些对象提供依据,却不是自然人用户普查。工作表只把机制用于统计,不假设每条链或钱包采用相同账户架构。
定义活动单位
固定网络、EntryPoint部署、区块区间与操作版本,说明数据包括已提交请求、已接受操作,还是执行成功结果。失败请求可以有运营意义,但不能悄悄计为完成的应用动作。统计标准必须在计算前确定。
建立交易哈希、操作标识、发送账户与执行结果的连接。若问题涉及应用内部调用,再把它保留为另一层。一个操作可以执行多个调用,但没有应用证据时,不能把它直接算作一次具有经济意义的购买。
区分打包者和它承载的行动账户。统计基础交易发送方,可能测到打包基础设施而非终端账户。费用赞助者也未必是账户受益人或控制者,应分别保存角色,避免把所有地址放进同一个用户字段。
假设案例:交易减少,操作增加
假设虚构溪流应用一天观察到十笔基础交易,其中含六十个已接受操作,来自四十五个不同智能账户。五十四个操作完成预定执行,六个失败。数据支持多个有效指标,但没有一个自动证明有六十名用户。
若前一天有二十笔交易、四十个操作,那么交易笔数下降而操作数量上升。只看交易图会得到相反活动故事。如果所有基础交易都由同一打包者发送,仅按发送方去重还会把受众缩成一个基础设施地址。
再假设四十五个账户中有五个按明确规则识别为测试账户。可以报告原始四十五与排除后四十,并附规则;不能声称四十名不同自然人,因为一人可能多账户,一个组织也可能共用账户。本例数字全为假设。
多层计数桥
| 层次 | 例子 | 含义 |
|---|---|---|
| 基础交易 | 10 | 打包提交活动 |
| 已接受操作 | 60 | 被纳入的操作集合 |
| 成功操作 | 54 | 定义明确的执行结果 |
| 不同发送账户 | 45 | 链上账户活动 |
| 调整账户 | 40 | 特定测试排除规则结果 |
| 不同自然人 | 未知 | 需要额外身份依据 |
复访指标还需定义账户按天、按应用还是整个区间去重。日活之和不等于月度不同账户数,必须保留集合定义,不能简单相加。如果同一账户使用多个应用,也要说明是否跨应用去重。
保持跨期可比
检查EntryPoint覆盖范围或索引支持是否改变测量总体。刚被索引的旧操作,可能看起来像新采用,实际行为早已存在。按部署与版本保存覆盖区间,并明确数据缺口,才能区分统计改善与真实增长。
还要区分补贴活动与支付意愿。赞助费用可以支持真实使用,但仅凭操作数量,不能证明用户愿意按无补贴成本继续使用。备忘录应报告活动账户、成功标准、赞助范围与未知身份重叠,而不是直接写成自然人采用或价格判断。
如果无法还原内部执行结果,可以保留已接受操作统计,并明确成功层未核验。不要用基础交易成功状态替代所有内部动作成功,这会抹掉账户抽象带来的层级差异。
常见问题
一个UserOperation就是一个用户吗?
不是。它是与账户关联的操作,同一主体可以重复操作或控制多个账户。
基础交易发送方可以直接算智能账户用户吗?
需要先区分打包者交易与其中代表的行动账户,不能直接替代。