fix(S6-FOLLOWUP): test:e2e:affected filtra de verdade — --no-deps desliga o closure de deps dos projects #76
Loading…
Reference in a new issue
No description provided.
Delete branch "S6-FOLLOWUP-e2e-cli-playwright-ignora-filtros-grep-posiciona"
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 #58
O que muda
pnpm test:e2e:affectedrodava a suíte completa silenciosamente em runs selecionados (ex.:-- tests/e2e/campaignHomeActions.e2e.spec.ts→ 173 testes). Causa raiz medida com o binário do repo (playwright 1.58.2, config real): o commander parseia posicionais corretamente e-g/--listfuncionam — o que arrastava a suíte era o closure de dependências dos projects no dev mode (setup ← campaign ← frontend ← adminemplaywright.config.ts):collectProjectsAndTestFilesfiltra os arquivos por project, masbuildProjectsClosurerepõe todos os arquivos de cada project-dependência. Filtrar um spec dofrontendpuxavacampaign(160) +setup(2) = 177;adminpuxava a suíte inteira. Em prod mode (CI=1) não há deps → o job selecionado do CI sempre funcionou.scripts/run-e2e-affected.mjs: geratest:e2e <passthrough verbatim> --no-deps -- <paths>via helpers puros novos (scripts/lib/playwright-e2e-args.mjs, unit-pinned emtests/unit/playwrightE2eArgs.unit.spec.ts).--no-depsdesliga o closure em runs filtrados (path de escopo, positional no passthrough ou flag de filtro--project/-g/--grep); suíte completa mantém a cadeia OPS34 de prewarm. Passthrough corrigido:pnpm test:e2e:affected -- tests/x.spec.tsdescartava o path (pnpm consome o--; agoraparsePassthroughArgssó remove um--líder e repassa o resto verbatim —-g gradeintacto).scripts/run-e2e-affected.mjsentrou emHIGH_RISK_EXACT(+ invariantciSkipInvariants) — era o espelho local do job e2e sem gate; um PR só de runner escaparia do e2e.playwright.config.ts(posicional exige--no-deps;--project=<família> --no-deps;-g/--listfuncionam), header do script, nota noAGENTS.md, changelogdocs/changelog/2026-08-18-s6-followup.md.Sem mudança de specs, CI (
--shard),gate:ciou runner.Verificação
--listdo binário com as formas finais: positional--no-deps→ 18 (spec exato),--project=campaign --no-deps→ 160 (família exata),-g agenda --no-deps→ 24 (título exato).playwright.config.tserun-e2e-affected.mjs, ambos high-risk).Impl plan:
docs/plans/s6-followup-playwright-filtros-cli-ignorados-impl.md(gate humano aprovado; causa raiz diverge da hipótese da intenção — evidenciado no plano).cbcbd1c071to8c915e59fc