OPS64 — pin do waitForChecks contra rollup mentiroso + docs (secundário eliminado estruturalmente pelo OPS62) #79
Loading…
Reference in a new issue
No description provided.
Delete branch "OPS64-ops64-forgejo-pr-automerge-waitforchecks-conta-o-propr"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #62
OPS64 — waitForChecks/rollup honestos. O sintoma primário da Issue (deadlock do
waitForChecksno próprio statuspending→ timeout 30min) já tinha sido entregue pelo OPS61 (filtro do próprio contexto + gate do rollup + PAT + timeouts 45/55 — provado vivo: runs 710/712 doready-automergemergearam os PRs #67/#70).O secundário foi eliminado estruturalmente pelo OPS62. A Issue documentava o bug de agregação de matrix: 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 →checksverde), e oneeds.<job>.resultsdo GitHub não existe neste runner (act expõe sóOutputs/Result). Enquanto este item rodava, o OPS62 mergeou em main e reescreveu ci-pr.yml e ci.yml como jobs únicos sequenciais (sem matrix, sem shards) — o status do jobchecksagora É o veredito honesto da cascata inteira, e o bug de agregação deixou de existir por construção. O scriptci-rollup-check.mjse os edits de workflow planejados foram descartados no gate (redundantes pós-OPS62 — decisão com o humano; os workflows em main são os do OPS62, intocados).O que este PR entrega:
waitForChecks(tests/unit/forgejoApi.unit.spec.ts, cenário run 607): rollupCI (PR) / checksverde comCI (PR) / e2e (1)vermelho → o CLI lança "Checks falharam". Invariante de defesa: o CLI nunca confia no rollup sozinho — varre os statuses individuais e falha em qualquerfailure/error. Vale para sempre e pegaria qualquer matrix que volte a existir..agents/rules/agent-pr-workflow.mdc,docs/AGENT-OPS.md): a narrativa do parent de matrix (runs 604/607/610), a eliminação estrutural pelo OPS62 e a regra de "nunca agregar vianeedsnum matrix futuro".docs/changelog/2026-08-18-ops64.md+ agregado regenerado.Sem migration/access/Consent/UI/schema. Verificação: unit 2405 verdes; lint/format/typecheck/knip/cycles no gate local; a própria PR prova o ciclo (o
ready-automergemergea no fim).Impl plan:
docs/plans/ops64-forgejo-pr-automerge-waitforchecks-impl.md10c1eeaedato292369b2b0292369b2b0toccfa60c1f2OPS64 — rollup checks honesto por statuses do commit (Forgejo não agrega shards no parent de matrix)to OPS64 — pin do waitForChecks contra rollup mentiroso + docs (secundário eliminado estruturalmente pelo OPS62)