用途
该技能用于建立确定性的本地 EVM 开发循环,结合固定分叉、合成夹具与受限的 Alchemy 用量。其目标是在任何真实副作用发生之前,产出一份可审查的工件以及负路径证据。适用于添加本地链测试或进行回归验证等场景。
主要能力
- 固定链、区块号、依赖版本与夹具状态,使远程主网分叉具备可复现性。
- 通过既有的本地密钥机制注入仅限开发的 Alchemy 端点,并在缺失时让配置明确失败。
- 使用合成账户与确定性模拟或注资夹具,避免导入真实用户或生产签名者。
- 运行最小分叉测试、洁净室重跑以及离线/单元回退,并记录请求量与墙钟时间(不宣称通用基准)。
- 记录如何推进分叉区块、刷新夹具、区分提供方漂移与代码失败,以及恢复先前区块。
使用方式
- 盘点项目当前的 Hardhat、Foundry、Anvil 或其他 EVM 测试运行器,并保留其现有命令。
- 确认目标链与历史方法支持,选择并记录一个稳定的分叉区块,并说明更改它的业务理由。
- 通过既有的本地密钥机制注入开发用 Alchemy 端点,确保配置在缺失时明确失败。
- 使用合成账户与确定性模拟或注资夹具;绝不导入真实用户或生产签名者。
- 运行最小分叉测试、洁净室重跑与离线/单元回退;记录请求量与墙钟时间,不宣称通用基准。
- 记录推进分叉区块、刷新夹具、区分提供方漂移与代码失败、恢复先前区块的方法。
工具纪律:使用 Read、Glob、Grep 检查当前文档、配置、代码、夹具与证据;Write 与 Edit 仅用于获批的仓库工件。仅调用技能本身不授权网络访问、凭证、钱包地址、客户数据、计划变更、支出、密钥创建或轮换、webhook 变更、部署、重放、交易构造、签名、广播或删除。
审批边界:测试负责人批准固定状态与夹具刷新;安全团队批准密钥注入;分叉生产状态、使用客户地址或为测试签名者注资需要数据/安全审批。
适用场景
- 将 Ethereum 分叉固定到合约回归所需的区块,并在两次洁净运行中证明结果一致。
- 在记录测试所需的状态变更与追踪行为之后,将分叉测试与 Alchemy Sandbox 进行比较。
- 添加本地链测试或回归验证。
限制与注意事项
- 远程主网分叉只有在链、区块号、依赖版本与夹具状态均被固定时才可复现;它仍会消耗账户级吞吐量,并可能因历史访问、方法支持或上游状态不可用而发生偏离。
- Alchemy Sandbox 是独立的模拟选项,必须针对所需测试语义进行评估。
- 使用来自本地密钥注入的仅限开发的应用密钥;绝不将生产密钥或部署者私钥复制到 .env、任务输出、shell 历史、夹具或提交的分叉 URL 中。
- 最新区块分叉通过一次不构成确定性证据。
- 若历史区块或方法不可用,应停止并分类提供方/测试假设,而非静默更换区块。
- 端点泄露即凭证事件,即使密钥仅限开发。
- 应将观察到的账户、应用、网络、索引器、链或提供方行为视为环境特定证据,而非通用保证。
输出
返回固定的链/区块/依赖矩阵、脱敏本地配置、确定性夹具、正向与洁净室测试回执、用量观察、漂移流程与回滚。明确标注假设、观察、来源日期、环境特定行为、负责人与未解决缺口。
验证
针对以下情形演练并记录预期结果与实际结果:缺失端点、错误的链 ID、未固定区块被拒绝、夹具重置、提供方超时、离线/单元回退。
资源
当前第一方证据地图——执行前重新核对带日期的 Alchemy 来源。