|
Some checks failed
CI (PR) / scope (pull_request) Successful in 33s
CI (PR) / lint (pull_request) Successful in 44s
CI (PR) / docs-guards (pull_request) Successful in 7s
CI (PR) / plans-only-closes (pull_request) Successful in 7s
CI (PR) / format (pull_request) Successful in 55s
CI (PR) / typecheck (pull_request) Successful in 31s
CI (PR) / knip (pull_request) Successful in 36s
CI (PR) / cycles (pull_request) Successful in 39s
CI (PR) / unit (pull_request) Successful in 59s
CI (PR) / int (pull_request) Successful in 2m23s
CI (PR) / build (pull_request) Has been skipped
CI (PR) / e2e (1) (pull_request) Has been skipped
CI (PR) / e2e (2) (pull_request) Has been skipped
CI (PR) / checks (pull_request) Failing after 1s
PR Ready + auto-merge / ready-automerge (pull_request) Failing after 50m5s
O sintoma primário da Issue (deadlock do waitForChecks no próprio pending) já tinha sido entregue pelo OPS61; o OPS64 fecha o secundário, que estava vivo e medido: o Forgejo 9.0.3 reporta o resultado do ÚLTIMO shard como o resultado do parent de matrix no contexto `needs` (runs 604/607/610: e2e (1) vermelho + e2e (2) verde → checks verde), e o `needs.<job>.results` do GitHub não existe neste runner. Com isso o gate do servidor (branch protection) e o deploy do ci.yml podiam passar com um shard vermelho. O rollup `checks` (ci-pr.yml e ci.yml) agora lê os statuses do commit via API (scripts/ci-rollup-check.mjs + lib pura, zero-dep, plain Node) — a mesma fonte que o waitForChecks confia — filtrando pelo prefixo do workflow, excluindo o próprio contexto e os downstreams legítimos (deploy, pending enquanto o rollup roda), falhando fechado em failure/error/pending/vazio. Fork guard + FORGEJO_API_TOKEN no job checks do ci-pr.yml (sem o guard, fork rodaria o script do head com o PAT — RCE classe OPS61); PRs de fork ficam não-mergeáveis no servidor (hardening). ci.yml usa --allow-empty em workflow_dispatch (evento não posta commit status). Testes: 12 specs do veredito (run 607/716 pinados, próprio pending ignorado, safety net ignorado, deploy ignorado, vazio fail-closed) + waitForChecks lança com rollup verde + shard vermelho. Unit 2360 verdes; gates locais ok. |
||
|---|---|---|
| .. | ||
| consent-texts | ||
| lib | ||
| agent-claim.mjs | ||
| agent-file-miss.mjs | ||
| agent-pool.mjs | ||
| agent-prioritize.mjs | ||
| agent-promote-related-on-merge.mjs | ||
| agent-ready.mjs | ||
| agent-register.mjs | ||
| agent-status.mjs | ||
| assert-local-database.mjs | ||
| build-bahia-demographics.mjs | ||
| build-bahia-geometries.mjs | ||
| build-bahia-tse-city-codes.mjs | ||
| build-changelog.mjs | ||
| build-election-aggregates.mjs | ||
| build-municipality-zone-geometries.mjs | ||
| check-changelog-append-only.mjs | ||
| check-docs-conflict-markers.mjs | ||
| check-plans-only-pr-closes.mjs | ||
| check-push-chain.mjs | ||
| check-test-locations.mjs | ||
| ci-rollup-check.mjs | ||
| ci-scope.mjs | ||
| configure-branch-protection.mjs | ||
| db-doctor.mjs | ||
| db-pull.mjs | ||
| db-start.mjs | ||
| deploy-homeserver.sh | ||
| dev.mjs | ||
| e2e-affected.mjs | ||
| ensure-repo-deps.mjs | ||
| fill-image.mjs | ||
| forgejo-dispatch.mjs | ||
| forgejo-issue-transition.mjs | ||
| forgejo-pr-automerge.mjs | ||
| gate-ci.mjs | ||
| git-push.mjs | ||
| guard-dev-db.mjs | ||
| import-projecao.mjs | ||
| issue.mjs | ||
| recover-media.mjs | ||
| regenerate-municipality-catalog-snapshot.mjs | ||
| render-ui-draft.mjs | ||
| resize-images.mjs | ||
| run-e2e-affected.mjs | ||
| seed-consent.mjs | ||
| seed-loader.mjs | ||
| seed-minimal.mjs | ||
| seed-posts.mjs | ||
| seed-tse-results.mjs | ||
| test-affected.mjs | ||
| worktree.mjs | ||