Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

fix(ci): check-changed-skills.sh fails a stale branch on skills only main changed

已关闭 适合新手
#7,014 3 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

已经有一个关联 PR 被合并了。

  • #7083 来自 @kyle-sexton —— 已合并

评估

难度
2/5
预计耗时
1-3 小时
新手友好度
72/100
Issue 类型
缺陷
描述清晰度
描述清楚
活跃度
活跃
技术栈
bash, git
领域
build-system

调研方向

缺陷位于 scripts/check-changed-skills.sh:变更文件集合来自 changed_files::into changed_paths "$BASE"(约第 123 行),逐个 skill 的检查则运行 git diff --name-only "$BASE" -- "$skill_dir/SKILL.md"(约第 175 行)。复现方法是:在落后于 main 的分支上,针对 origin/main 运行该脚本,然后在两次调用之前用 git merge-base "$BASE" HEAD 解析 BASE。完成标准是:落后于其基线的分支不再报告只有 main 修改了 skill,并且新增的测试覆盖落后于其基线的分支。

由索引模型根据 Issue 内容生成。

描述

good first issue needs-triage priority: medium

Problem

Run locally as scripts/check-changed-skills.sh origin/main on a branch behind main, the script also checks skills that only main changed and fails on them.

Seen on 2026-10-10 on feat/agent-tool-spawn-effort (#6913), 44 commits behind main. It failed on plugins/harness-config/skills/audit/scripts/fix-plugin-drift.test.sh, which the branch never touched. Against the merge base (e971f640b3) it passed: "6 skill(s) checked, 0 failed."

Cause: the changed set and the per-skill diff are taken against the base ref as given. The changed set comes from changed_files::into changed_paths "$BASE" and the per-skill check from git diff --name-only "$BASE" -- "$skill_dir/SKILL.md" (scripts/check-changed-skills.sh:123, :175). That is a two-dot comparison against the working tree, so it includes main's own changes since the branch point.

Proposed next step

Resolve $BASE to git merge-base "$BASE" HEAD before computing the changed set, so the script checks only what the branch changed. Keep CHECK_SKILL_BASE_REF semantics unchanged unless they have the same problem. Add a test with a branch behind its base.

主要语言
Shell
星标
22
派生
2
平均合并
8 小时 27 分钟
30 天内合并 PR
957

环境准备

  • 没有 Dockerfile 或 Docker Compose 文件
  • 没有 Pull Request 模板
  • 阅读贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

melodic-software/claude-code-plugins 的其他 Issue

查看 melodic-software/claude-code-plugins 的全部 Issue

相似的 Issue

更多 Shell/Bash Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。