CI: "Validate changelog diffs" job fails on every fork-sourced pull request
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 84/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- git, github-actions
- Área
- ci-cd
Línea de trabajo
Lee .github/workflows/lint-build-test.yml y .github/actions/check-merge-queue-changelogs; después, inspecciona el paso Validate changelog diffs y el contexto de eventos de su pull request. Verifica que los pull requests originados en forks puedan completar la validación de las diferencias del changelog, y que el comportamiento de merge_group y las comprobaciones del changelog por paquete sigan pasando.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Bug
"Lint, build, and test / Validate changelog diffs" fails on every fork-sourced pull request, independent of the PR's content.
Root cause
The validate-changelog-diffs job (.github/workflows/lint-build-test.yml) runs the composite action .github/actions/check-merge-queue-changelogs, whose "Check changelog changes" step computes:
TARGET_REF=$(git merge-base "origin/$BASE_REF" "origin/$PR_BRANCH")
For a PR whose head lives on a fork, origin/$PR_BRANCH does not exist in the job's checkout (fork head branches are fetched as refs/pull/N/merge, not as remote branches under origin), so the job dies before validating anything:
fatal: Not a valid object name origin/feature/use-memory-see-this-sp0
##[error]Process completed with exit code 128.
The job has no skip condition beyond the event type, so this affects every fork-sourced PR.
Evidence
- PR #10535 (fork branch
feature/use-memory-see-this-sp0) — job run: https://github.com/MetaMask/core/actions/runs/36560718378/job/109380743283- The job failed on every commit the PR has ever had — including its very first commit
ca6a523772— i.e., the failure is independent of the PR's changes and occurs before any changelog diff is computed (the per-packageValidate changelog (24.x, @metamask/assets-controller)job passes for the same commits).
- The job failed on every commit the PR has ever had — including its very first commit
- PR #10229 (fork branch
feat/assets-transient-loading-state) — the same job showsFAILUREon its head commits (db682a870f,47b7803dfd).
Impact
- Every fork-sourced PR shows a red "Validate changelog diffs" check (and the "All jobs pass" aggregate) for a reason unrelated to the PR, making genuinely failing checks harder to spot and fork PRs appear blocked.
Suggested fix direction
In the "Check changelog changes" step, when origin/$PR_BRANCH is unavailable (fork PRs), fetch the PR head ref before computing the merge base, e.g.:
git fetch origin "+refs/pull/${PR_NUMBER}/head:refs/remotes/origin/${PR_BRANCH}"
(or resolve the merge base against refs/pull/${PR_NUMBER}/merge directly, which the checkout already has).
Note: for merge_group events the current logic works, because merge-queue branches do exist under origin.
- Lenguaje dominante
- TypeScript
- Estrellas
- 414
- Forks
- 309
- Merge medio
- 1 d 4 h
- PR fusionados (30 d)
- 388
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Sin 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 MetaMask/core
-
platform-api-docs: `scan` strategy misses ESM-only packages, which ship `.d.ts` rather than `.d.cts`Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
[utils] Replace the `uuid` dependency with `crypto.randomUUID()`Posiblemente ocupada @avantikonde la tomó hace 5 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
MetaMask/core#10210 · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
Los mantenedores suelen responder en 1 día
-
eth-json-rpc-middleware: `TransactionParamsStruct` rejects numeric `chainId`, breaking dapp transactionsPosiblemente ocupada @truehazker la tomó hace 48 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
MetaMask/core#9964 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
[eth-block-tracker]: `json-rpc-engine` should be a production dependencyPosiblemente ocupada @SnowingFox la tomó hace 62 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
MetaMask/core#6864 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de MetaMask/core
Issues similares
-
Dificultad 1/5 1-3 horas Aptitud para principiantes 70/100
siyuan-note/siyuan#20517 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
NaturalIntelligence/fast-xml-parser#890 · 1 comentario ·
Los mantenedores suelen responder en 3 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
zsviczian/obsidian-excalidraw-plugin#3000 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
pnpm/get.pnpm.io#68 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
nuxt-modules/better-auth#578 · 2 comentarios ·
Los mantenedores suelen responder en 1 día