SuperAPI AI 工具集

fp-go-pr-review

测试与质量

查看项目

更新于 10-15 22:16

技能介绍

用途:该技能用于审查使用 fp-go 库(github.com/IBM/fp-go/v2)的拉取请求,验证代码变更是否符合 fp-go 最佳实践与函数式编程约定。需要 Go 1.24+ 以支持泛型类型别名。

主要能力:按清单检查导入路径必须为 v2(github.com/IBM/fp-go/v2/...,v1 与 v2 不兼容,属 Critical);所有操作遵循 data-last 原则;优先使用 Flow/Pipe 的 point-free 组合而非内联匿名函数;错误类型为 Go error 时用 Result 而非 Either;IO 值惰性,需以 () 执行;按需选择最简 monad(Option → Result → IOResult → ReaderIOResult → Effect);有类型依赖时用 Effect 而非把依赖塞进 context.Context;用 Eitherize1..N 提升返回 (T, error) 的 Go 函数;do-notation 配合 lens 与 Bind/ApS;用 TraverseArray 处理切片;用 ChainFirstIOK 与 IO.Logf 记录日志;避免 Map/Chain 闭包与 lens setter 中的隐藏可变状态。

使用方式:先获取差异(git diff main...HEAD,或 gh pr checkout <PR-number> 后执行),在分支上运行 go build ./... 与 go vet ./...,构建或 vet 失败按 Critical 报告;再逐文件检查上述各项;最后用 gh pr review <PR-number> --comment 提交审查意见,或用 gh api 对具体行做内联注释。

适用场景:审查 fp-go 代码的 PR、验证函数式组合与 monad 用法、排查常见反模式。

限制:资料未提供该技能的安装方式、收费与平台信息;严重级别分为 Critical、High、Medium、Low,具体判定以资料清单为准。