Prhub

#26338 Signal CUDA coredumps to tracker issue

原始 PR 作者 hnyls2002 合并时间 2026-05-26 11:21 文件变更 2 提交数 8 评论 1 代码增减 +62 / -2

执行摘要

CUDA coredump 自动上报至追踪 issue

如 PR body 所述:“post a one-line comment (PR ref + run URL) to sgl-project/sglang-ci-stats#2 so we can query 30-day coredump history with a single API call instead of grepping job logs.” 关联 Issue sgl-project/sglang-ci-stats#2 也明确说明要自动收集 coredump 事件。

该 PR 设计简洁,通过在现有 action 中增加一个可选步骤实现了有价值的能力,值得推荐。建议关注其使用效果,未来可扩展为更丰富的告警机制。

讨论亮点

本 PR 未发生公开 review 讨论。但 8 次提交历史显示作者进行了多轮实际测试(包括强制注入 coredump 环境、从 gh CLI 改为 curl、调整 issue 编号等),最终在合并前清理了所有调试提交,保证了最终代码的干净。

实现拆解

  1. action.yml 改造.github/actions/upload-cuda-coredumps/action.yml):新增 Check for coredumps 步骤,输出 has_dumps 布尔值;修改上传步骤,移除 if-no-files-found: ignore,使其仅在上传前确定存在文件;新增 Signal coredump to tracker issue 步骤,使用 GitHub REST API 获取当前 job_id 并 POST 评论到 tracker issue。

  2. 工作流参数传递.github/workflows/_pr-test-stage.yml):在调用 upload-cuda-coredumps 的 if: failure() 分支下,添加 tracker-issue: "26340"bot-token: ${{ secrets.GH_PAT_FOR_PULL_REQUEST }} 两个参数。

  3. 信号步骤关键细节:通过 Jobs API 按 runner_namestatus: in_progress 筛选当前 job(兼容矩阵展开);构建 job 级 URL 作为首选,失败时回退到 run attempt URL;评论格式为 @hnyls2002 [Coredump Tracker] PR #<num> - <job_url>

文件 模块 状态 重要度
.github/actions/upload-cuda-coredumps/action.yml CI 动作 modified 5.59
.github/workflows/_pr-test-stage.yml 工作流 modified 2.55

分析完成后,这里会展示 LLM 生成的相对完整源码片段和详细注释。

评论区精华

没有提炼出高价值讨论线程

当前评论区没有形成足够清晰的争议点或结论,后续有更多讨论时会体现在这里。

风险与影响

主要风险在于信号步骤依赖 GitHub REST API 的可用性和 bot-token 的权限。若 API 失败,已做 fallback 处理;token 通过 GitHub Secrets 管理,泄露风险低。此外,信号步骤在复合 action 中仅在 coredump 存在且 token 配置时才执行,不会影响正常流程。

对开发者:coredump 事件自动记录到单一 issue,便于查询和追踪历史趋势。对 CI 系统:增加一次 curl 调用,开销极小。对团队:未来可基于 tracker issue 的评论构建自动化告警或 dashboard,提升调试效率。

新流程依赖 GitHub API 需管理 bot-token 权限 仅在 coredump 失败路径触发

关联 Issue

#2 CUDA Coredump Tracker

完整报告

参与讨论