[DX-586] migrate release to fin-releases composite action#44
Merged
Conversation
Reemplaza el trigger `pull_request closed` con head `release/*` por un `workflow_dispatch` manual que delega bump + tag + GitHub Release a la composite action `fin-releases` de hermes: release/prepare → npm publish → release/finalize Conserva los mismos checks (lint, typecheck, build, test) y los flags de publish (`--access public --provenance` con trusted publishing via id-token). Adiós al patrón de PR `release/*` con bump manual de package.json: ahora el bump lo hace el bot via el dropdown del dispatch. La actualización de la fórmula de Homebrew se separa a su propio workflow en un commit siguiente. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
23b91c6 to
d87f550
Compare
daleal
approved these changes
May 15, 2026
Member
daleal
left a comment
There was a problem hiding this comment.
Se ve bien. Dejo unas sugerencias eso sí, para no tener tantos comentarios innecesarios. Aparte de eso lo veo gucci
| echo "Found @fintoc/cli@$VERSION on npm" | ||
| exit 0 | ||
| fi | ||
| echo "Attempt $i/30 - waiting 10s..." |
Member
There was a problem hiding this comment.
Este 30 podría ser una constante definida arriba en el archivo con un buen nombre, igual que el 10 del sleep, sería más descriptivo que el comentario de arriba que dice times out after 30 attempts creo. Podría ser MAX_ATTEMPTS = 30 y de ahí es obvio
FranciscaOtero
approved these changes
May 15, 2026
Saca la actualización de la fórmula de `release.yml` y la pone en su propio workflow `update-homebrew.yml`, gatillado por `release: published` (automático) y `workflow_dispatch` con input opcional de versión (manual, para re-sincronizar). Beneficios: - Falla aislada: si Homebrew falla, npm + tag + GitHub Release siguen consistentes. Re-correr Homebrew solo no requiere re-publish. - Recovery via workflow_dispatch con `version` input, para forzar la sincronización de cualquier release. - Reemplaza el PAT `HOMEBREW_TAP_GITHUB_TOKEN` por un token de la App `fin-releases` minteado con `repositories: homebrew-tap`. Cero PATs personales en el path. El secret viejo queda inerte para limpieza posterior. - Identidad del commit en homebrew-tap pasa a ser `fin-releases[bot]`. El workflow es declarativo: cada step llama un script en `.github/scripts/update-homebrew/` con `env:`. La heredoc Ruby de la fórmula vive en `update-formula.sh`, no en el YAML. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
77a65f3 to
9099d5b
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Migra el flow de release de fintoc-cli al patrón compartido de hermes (
release/prepare→npm publish→release/finalize) y separa la actualización de Homebrew a su propio workflow.Commits
bfeee8f— Migrarelease.yml: trigger pasa depull_request closedcon headrelease/*aworkflow_dispatchmanual. Preserva los mismos checks (lint/typecheck/build/test) y elnpm publish --access public --provenancecon trusted publishing. Bump, tag y GitHub Release los hace la composite action de hermes.23b91c6— Saca Homebrew aupdate-homebrew.yml, gatillado porrelease: published(auto) yworkflow_dispatchcon input opcional de versión (manual). Reemplaza el PATHOMEBREW_TAP_GITHUB_TOKENpor un token de la Appfin-releasesscopeado ahomebrew-tap. Scripts en.github/scripts/update-homebrew/.Diferencias vs hoy
release/*mergeadogithub-actions[bot])fin-releases[bot](App)HOMEBREW_TAP_GITHUB_TOKENFailure recovery
release.ymlantes delnpm publishnpm publishfinalize(push o release create)git push --follow-tags+gh release createupdate-homebrewworkflow_dispatchcon inputversionRequirements
fin-releasesinstalada en este repo y enfintoc-com/homebrew-tap:check:Additional changes
None.