仓库地图
常见改动落在哪个仓库
本地开发
前置
构建与测试
三个 Go 仓库的 Makefile 目标一致:make all 和 go run ./build/ci.go ...),细节见其 AGENTS.md。
跑一条最小链路
不需要连生产基础设施也能验证多数改动。用 HTTP 模式把写节点和查询节点直连,跳过 Kafka 和 S3:提交规范
执行客户端分叉
沿用上游 go-ethereum 的约定:提交信息用<package(s)>: description,PR 标题同格式。完整的提交前清单在仓库 AGENTS.md。
两条硬性约束:改动小而聚焦(不顺手重构、不改无关命名),不随意增删依赖。分叉需要长期跟随上游发版,无关改动会放大合并冲突。
其他仓库
- 从
main切特性分支,PR 保持小而聚焦 - 提交前本地跑
make ci(或 Rust 的 fmt + clippy + test) - 新增行为要有测试;改动关键路径先读现有测试,例如 consistency-checker 的
check/critical_path_test.go
给 AI Agent 的上下文
如果你是在 Agent 里协助这几个仓库,这些是最省时间的入口:
几条容易踩的经验:
- 不要从单个仓库的 README 推断跨组件行为。 部分 README 与实现存在偏差(S3 键格式、方法命名、许可证声明),以代码为准,本站的接口契约按代码校对过。
- 改
Process或OnCommit这类关键路径前先读测试,它们编码了幂等和重试语义,靠读实现容易漏掉。 - etcd 键和 S3 键的拼接散落在多个仓库,搜索时用
fmt.Sprintf/format!加键名片段定位。
从哪里入手
文档与示例
文档与示例
补充组件仓库里缺失的配置说明、修正 README 与实现的偏差、为常见故障补排查步骤。改动风险低,但对使用者价值很高。
可观测性
可观测性
补齐链路上缺失的指标(例如 S3 拉取失败率、追赶进度),或为已有指标写 Grafana 面板。数据链路长,任何一环缺指标都会让排查变难。
新链支持
新链支持
读侧新增
EvmExecutor 是边界清晰、影响面可控的改动,参照 leafage-evm-chains 里已有的实现。见接入新链。性能
性能
leafage-evm 的存储层和执行热路径有明确的衡量方式:用
leafage-bench 对比改动前后的 eth_call 延迟分布。维护本文档站
本站基于 Mintlify,内容是 MDX,导航在docs.json。
docs.json 的 navigation.groups,否则不会出现在侧边栏。写作约定见仓库的 AGENTS.md 和 README.md。