fix(ci): check-changed-skills.sh fails a stale branch on skills only main changed
Los mantenedores suelen responder en 1 día
Ya se ha fusionado un pull request relacionado.
- #7083 de @kyle-sexton — fusionado
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 72/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- bash, git
- Área
- build-system
Línea de trabajo
El error está en scripts/check-changed-skills.sh: el conjunto de archivos modificados proviene de changed_files::into changed_paths "$BASE" (alrededor de la línea 123), y la comprobación por skill ejecuta git diff --name-only "$BASE" -- "$skill_dir/SKILL.md" (alrededor de la línea 175). Para reproducirlo, ejecuta el script contra origin/main en una rama que esté por detrás de main, y luego resuelve BASE con git merge-base "$BASE" HEAD antes de ambas llamadas. Está terminado cuando una rama que va por detrás de su base ya no informa de que solo main cambió skills, y una nueva prueba cubre una rama que va por detrás de su base.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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.
- Lenguaje dominante
- Shell
- Estrellas
- 22
- Forks
- 2
- Merge medio
- 7 h 42 min
- PR fusionados (30 d)
- 923
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de melodic-software/claude-code-plugins
-
priority: medium
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
melodic-software/claude-code-plugins#7351 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
priority: high
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
melodic-software/claude-code-plugins#7312 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
priority: medium
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
melodic-software/claude-code-plugins#7288 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
knowledge: docpage-digest dual verification defines no verdict vocabulary or pass/fail thresholdAbiertoneeds-human
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
melodic-software/claude-code-plugins#7286 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
priority: low
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
melodic-software/claude-code-plugins#7282 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
Todos los issues de melodic-software/claude-code-plugins
Issues similares
-
Laptop display stays disabled after unplugging external monitor: FALLBACK output counted as externalAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 79/100
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100
-
[Bug]: Three default prefs with JSON values are never set (override.sh escapes their quotes twice)Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Floorp-Projects/Floorp#2913 ·
Los mantenedores suelen responder en 1 día
-
agent-butler-finding agent-research-recommend bug ready-for-agent
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
jordansmall/spindrift#5258 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Copy as CLI command writes words.json with a heredoc that silently overwrites an existing fileAbiertoenhancement good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día