Skip to content

fix(renovate): pin storefront-template to the beta channel - #1297

Merged
leomp12 merged 1 commit into
masterfrom
fix/renovate-template-beta-channel
Jul 28, 2026
Merged

fix(renovate): pin storefront-template to the beta channel#1297
leomp12 merged 1 commit into
masterfrom
fix/renovate-template-beta-channel

Conversation

@leomp12

@leomp12 leomp12 commented Jul 28, 2026

Copy link
Copy Markdown
Member

Contexto

O @ecomplus/storefront-template@2.0.0-beta.299 foi tagueado em 24/07 e publicado no GitHub Packages, mas o workflow Publish (que espelha GH Packages → npm) vinha falhando desde junho com 403 ... requires two-factor authentication or granular access token with bypass 2fa. O secret NPM_TOKEN já foi rotacionado e o run 30130972741 rodou verde — a beta.299 está no npm e o latest voltou ao lugar.

O que este PR resolve

Enquanto a versão existia em tag mas não no registry público, o range ^2.0.0-beta.299 passou a resolver para 2.0.0-next.3 — uma versão de abril/2020, já deprecada no npm:

^2.0.0-beta.298  ->  2.0.0-beta.298   (ok)
^2.0.0-beta.299  ->  2.0.0-next.3     (!!)

O motivo é semver puro: identificadores de pre-release são comparados alfanumericamente, então next > beta. Normalmente o npm esconde isso porque prefere a versão do dist-tag latest quando ela satisfaz o range — mas quando o latest não satisfaz, ele cai para a maior versão existente. Foi assim que o #1294 chegou a propor ^2.0.0-beta.299^2.0.0-next.3.

A publicação da beta.299 já fechou o buraco atual. Este PR é o cinto de segurança: qualquer nova janela entre "tagueado" e "publicado no npm" reabriria exatamente o mesmo cenário.

Nota

O renovate-config-validator aprova a config (Config validated successfully), mas emite um WARN: Config migration necessary pré-existente — os excludePackagePatterns e o config:base estão deprecados em favor de matchPackageNames com negação ! e config:recommended. O Renovate migra em runtime, então não quebra nada; fica a nota para uma limpeza à parte.

🤖 Generated with Claude Code

2.0.0-next.0..3 are leftovers from Feb-Apr/2020, deprecated on npm, but
semver ranks them above every beta because prerelease ids compare
alphanumerically (next > beta). npm normally hides this by preferring the
`latest` dist-tag, so it only surfaces when a tagged version has not
reached the public registry yet -- exactly what happened while
2.0.0-beta.299 was stuck in GitHub Packages.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@leomp12
leomp12 merged commit 251fb6f into master Jul 28, 2026
5 checks passed
@leomp12
leomp12 deleted the fix/renovate-template-beta-channel branch July 28, 2026 07:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant