Golang 代码审查

设计与多媒体 社区
解读按原文结构重写,命令、链接、术语均保留;右侧可核对作者原始 SKILL.md

方法与流程

  • Core Workflow:Analyze scope — Review only the modules, interfaces, and concurrency paths touched by the task Choose the simplest design — Create small interfaces only when multiple real implementations or tests need them Implement — Write idiomatic Go with explicit error…

适用与边界

  • 当前原文没有单列适用场景。
  • 当前原文没有单列不适用场景或限制。

原文中的明确线索

  • 要点:「Analyze scope」、「Choose the simplest design」、「Implement」、「Validate」、「Optimize when measured」、「Install」
  • 文件与命令go testgo vetreferences/concurrency.mdreferences/interfaces.mdreferences/generics.mdreferences/testing.mdreferences/project-structure.mdctx

流狐整理:以上内容来自当前 SKILL.md 的章节与原词;未补写作者没有声明的工具、兼容性或能力。

流狐档案 作者与许可取自来源;运行、权限和网络为流狐检测或估算
流狐分类
设计与多媒体
作者声明 Agent
未找到明确声明;不据此推断已兼容或已测试
静态检查
88 / 100 · 启发式扫描,不代表运行安全
作者 / 版本 / 许可
@tomevault-io · 未声明 license
流狐 Token 估算
低消耗
流狐接入估算
即装即用
是否需要外部 API Key
未发现要求
检测到的系统要求
macOS · Linux · Windows
底层运行要求
未声明
检测到的文件与系统行为
  • 只读
  • 允许写入 / 修改
  • 读取环境变量
检测到的网络行为
仅限本地
安装命令数
无(仅作为资料)

档案由构建时根据 SKILL.md 与安装命令自动衍生,可能与作者实际意图存在差异。

需要注意: 未限定 allowed-tools,默认拥有全部工具权限。

输出预览 golang-pro.preview
# Core Pattern Example

// worker runs until ctx is cancelled or an error occurs.
// Errors are returned via the errCh channel; the caller must drain it.
func worker(ctx context.Context, jobs <-chan Job, errCh chan<- error) {
    for {
        select {
        case <-ctx.Done():
            errCh <- fmt.Errorf("worker cancelled: %w", ctx.Err())
            return
        case job, ok := <-jobs:
            if !ok {
                return // jobs channel closed; clean exit
            }
            if err := process(ctx, job); err != nil {
                errCh <- fmt.Errorf("process job %v: %w", job.ID, err)
                return
            }
        }
    }
}

func runPipeline(ctx context.Context, jobs []Job) error {
    ctx, cancel := context.WithTimeout(ctx, 30*time.Second)
    defer cancel()

    jobCh := make(chan Job, len(jobs))
    errCh := make(chan error, 1)

    go worker(ctx, jobCh, errCh)

    for _, j := range jobs {
        jobCh <- j
    }
    close(jobCh)

    select {
    case err := <-errCh:
        return err
    case <-ctx.Done():
        return fmt.Errorf("pipeline timed out: %w", ctx.Err())
    }
}

讨论

基于 GitHub Discussions。登录 GitHub 即可参与讨论、点赞、订阅更新。