Skip to content

ci: timeout-minutes en el job de CI - #43

Merged
gedera merged 6 commits into
mainfrom
ci/timeout-minutes
Aug 20, 2026
Merged

ci: timeout-minutes en el job de CI#43
gedera merged 6 commits into
mainfrom
ci/timeout-minutes

Conversation

@gedera

@gedera gedera commented Aug 20, 2026

Copy link
Copy Markdown
Collaborator

Part of sequre/ai_knowledge#1023

Agrega timeout-minutes: 15 al job de este workflow. Nada más — ver la corrección abajo.

Por qué

Un job sin timeout-minutes usa el default de GitHub Actions: 6 horas. El 2026-08-19 se agotaron
los minutos de Actions de la org y se cayó el CI de los repos privados, y la causa no fue el volumen
de corridas: fueron 5 jobs colgados de 361 min cada uno, contra una mediana de 1,6.

El diagnóstico completo está en sequre/box_manager_service#336: se colgaba el apt-get update
contra el mirror de Ubuntu, siempre en la misma línea, sin llegar nunca a correr un test.

15 sale de lo medido: el p90 del job más caro del fleet es 7,6 min — margen de 2×.

⚠️ Corrección: se revirtió la salida de rspec

La primera versión de este PR también sacaba bundle exec rspec de push/pull_request, como se
hizo en los repos de código privados. Estaba mal acá, y por una razón que no se había mirado: este
repo es PÚBLICO.

GitHub da minutos ilimitados de Actions en repos públicos. Confirmado por observación, no por la
documentación: mientras el CI de los 12 repos privados estaba bloqueado, el de este repo siguió
corriendo y pasando.

O sea que sacarle los tests no ahorraba un solo minuto y le quitaba el único gate automático que
tiene. El trade-off cambia de signo cuando el minuto es gratis.

Queda entonces: rspec y rubocop corriendo como siempre, más el timeout-minutes.

gedera added 4 commits August 20, 2026 11:10
Un job sin timeout usa el default de Actions: 6 HORAS. Cinco jobs colgados
asi agotaron los minutos de la org el 2026-08-19 (361 min cada uno, contra una
mediana de 1,6). Este valor sale de lo medido, no de una intuicion.

Part of sequre/ai_knowledge#1023
Un job sin timeout usa el default de Actions: 6 HORAS. Cinco jobs colgados
asi agotaron los minutos de la org el 2026-08-19 (361 min cada uno, contra una
mediana de 1,6). Este valor sale de lo medido, no de una intuicion.

Part of sequre/ai_knowledge#1023
El job que corre tests es lo mas caro del CI y la org agoto los minutos de
Actions (plan free, 2.000/mes, limite de gasto en $0: GitHub bloquea en vez
de cobrar). Los tests pasan a ser un gate LOCAL antes de mergear, con la
evidencia en el cuerpo del PR — la regla esta en el playbook, Fase 5.

build, vet y lint NO se tocan: cuestan segundos y cazan cosas reales.
El paso de tests queda disponible a mano con workflow_dispatch.

Part of sequre/ai_knowledge#1023
El job que corre tests es lo mas caro del CI y la org agoto los minutos de
Actions (plan free, 2.000/mes, limite de gasto en $0: bloquea en vez de
cobrar). Los tests pasan a ser un gate LOCAL antes de mergear, con la
evidencia en el PR — la regla esta en el playbook, Fase 5.

build, vet y lint NO se tocan: cuestan segundos y cazan cosas reales.
El paso de tests queda disponible a mano con workflow_dispatch.

Part of sequre/ai_knowledge#1023
@gedera gedera changed the title ci: timeout-minutes en los jobs que no lo declaraban ci: timeout-minutes + los tests salen de push/PR Aug 20, 2026
Se elimina, no se gatea: el paso seguia en git. Los tests se validan en
local antes de mergear, con la evidencia en el PR (playbook, Fase 5).

build, vet, lint y cross-compile NO se tocan.

Part of sequre/ai_knowledge#1023
@gedera gedera changed the title ci: timeout-minutes + los tests salen de push/PR ci: sacar los tests de Actions + timeout-minutes Aug 20, 2026
…son gratis

Queda solo el timeout-minutes. Sacar los tests de Actions se hizo para no quemar
los 2.000 min/mes del plan free, y eso aplica a repos PRIVADOS: en un repo publico
GitHub da minutos ilimitados. Confirmado por observacion: el CI de este repo siguio
corriendo y pasando mientras el de los 12 repos privados estaba bloqueado.

Asi que sacarle rspec no ahorraba nada y le quitaba el unico gate automatico que
tiene. El trade-off cambia de signo cuando el minuto es gratis.

Part of sequre/ai_knowledge#1023
@gedera gedera changed the title ci: sacar los tests de Actions + timeout-minutes ci: timeout-minutes en el job de CI Aug 20, 2026
@gedera
gedera merged commit e48255b into main Aug 20, 2026
1 check passed
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