fix(test): ci-unico localiza o gate por id, nao por posicao — main vermelho [INFRA-67721] #28

Merged
tarcisio merged 1 commit from fix/INFRA-67721-teste-gate-por-id into main 2026-10-01 11:08:01 -03:00
Owner

O quê

Os testes de tests/ci-unico/test_ci.py passam a localizar o passo gate pelo id (helper passos_depois_do_gate) em vez de assumir que ele é o primeiro passo (steps[1:]).

Por quê — corrida de merges, e main está vermelho

  • PR #25 (merge 07:31) adicionou testes que iteram steps[1:] assumindo o gate como passo 0.
  • PR #26 (INFRA-67721, merge 07:56) inseriu a guarda "changes passou?" antes do gate.
  • Cada um passava isolado. Juntos, 3 testes falham em main: test_backend_e_frontend_nao_se_aplicam (backend e frontend) e test_gates_nada_se_aplica.
  • O pr-checks do #27 roda tests/ em PR, então todo PR para main fica vermelho até isto entrar.

Como testar

Na imagem real de CI (tmf-ci-python:3.12, amd64):

  • main limpo: ci-unico = 3 falhas.
  • Esta branch: ci-unico 39 OK e as 5 suítes (198 testes) rc=0.

O contrato testado não muda: tudo depois do gate depende de steps.gate.outputs.*. A guarda, que precede o gate de propósito, fica fora da regra.

Não verificado

Execução do pr-checks no act_runner com este conserto (rodará neste próprio PR).

Refs: INFRA-67721

🤖 Generated with Claude Code

https://claude.ai/code/session_01G2e3V17tRc4mAZ4ea1XX1e

## O quê Os testes de `tests/ci-unico/test_ci.py` passam a localizar o passo `gate` pelo `id` (helper `passos_depois_do_gate`) em vez de assumir que ele é o primeiro passo (`steps[1:]`). ## Por quê — corrida de merges, e `main` está vermelho - PR #25 (merge 07:31) adicionou testes que iteram `steps[1:]` assumindo o `gate` como passo 0. - PR #26 (INFRA-67721, merge 07:56) inseriu a guarda "changes passou?" **antes** do `gate`. - Cada um passava isolado. Juntos, **3 testes falham em `main`**: `test_backend_e_frontend_nao_se_aplicam` (backend e frontend) e `test_gates_nada_se_aplica`. - O `pr-checks` do #27 roda `tests/` em PR, então **todo PR para `main` fica vermelho** até isto entrar. ## Como testar Na imagem real de CI (`tmf-ci-python:3.12`, amd64): - `main` limpo: `ci-unico` = **3 falhas**. - Esta branch: `ci-unico` 39 OK e as 5 suítes (198 testes) `rc=0`. O contrato testado não muda: tudo **depois** do `gate` depende de `steps.gate.outputs.*`. A guarda, que precede o `gate` de propósito, fica fora da regra. ## Não verificado Execução do `pr-checks` no `act_runner` com este conserto (rodará neste próprio PR). Refs: INFRA-67721 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01G2e3V17tRc4mAZ4ea1XX1e
fix(test): ci-unico localiza o gate por id, nao por posicao [INFRA-67721]
All checks were successful
PR checks (ci-shared) / testes (pull_request) Successful in 2m10s
e629780067
Corrida de merges: o PR #25 (07:31) adicionou testes que assumem o gate como 1o passo
(steps[1:]); o PR #26 (07:56, INFRA-67721) inseriu a guarda 'changes passou?' ANTES do
gate. Cada um passava isolado; juntos, 3 testes de ci-unico falham em main
(test_backend_e_frontend_nao_se_aplicam x2, test_gates_nada_se_aplica) e o pr-checks
(#27) passa a deixar vermelho todo PR para main.

Os testes passam a olhar os passos DEPOIS do passo com id 'gate' (helper
passos_depois_do_gate). O contrato 'tudo depois do gate depende dele' e mantido; a
guarda, que precede o gate de proposito, fica fora da regra.

Prova (imagem tmf-ci-python:3.12): antes, em origin/main limpo, ci-unico = 3 falhas;
depois, ci-unico 39 OK e as 5 suites (198 testes) rc=0.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01G2e3V17tRc4mAZ4ea1XX1e
tarcisio deleted branch fix/INFRA-67721-teste-gate-por-id 2026-10-01 11:08:01 -03:00
Sign in to join this conversation.
No reviewers
No labels
seguranca
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
TMF/ci-shared!28
No description provided.