RRuna

贡献指南

内部约定与治理

本章是开发者视角,面向 Runa 内核、官方能力块、驱动块和第三方扩展作者。普通应用开发者不需要先读这一章。

本地开发怎么启动

Runa 使用多模块 Monorepo。建议在仓库根目录使用 go.work 开发:

git clone https://github.com/duxweb/runa.git
cd runa
go work sync
go test ./...

嵌套模块需要单独测试,见 测试

贡献代码要遵守什么

  • 内核只处理加载、DI、命令、Host、配置和生命周期
  • 传输、能力、驱动都通过 Provider 接入
  • 能独立 New() 的对象,才应该注册进 DI
  • 默认不 import 的模块,不应该进入用户依赖图
  • 子包不要反向依赖 runtime

提交前要检查什么

  • 每个 PR 聚焦一个主题
  • 改 API 必须同步示例和文档
  • 新能力必须包含独立 New() 示例和 Provider 示例
  • 新驱动必须说明依赖边界和关闭逻辑
  • 新传输必须说明 Host 与生命周期接入方式
编辑此页