docs(fleet): gate honesto sobre lint (§6 + cr-fleet-ops §4) - #13
Conversation
O gate mandava rodar `pnpm lint`, mas o repo não tem `.eslintrc` (nem `eslintConfig` no package.json) e a CI roda só typecheck+build. Sem config, `next lint` abre o setup interativo e falha em shell headless — logo o passo nunca "passa" e todo Resolvedor/PR Doctor gastava tokens redescobrindo isso e escrevendo o disclaimer "lint N/A" (ver PR #8). Deixa o núcleo do gate = `typecheck && build` (exatamente a CI) e documenta que lint só volta a ser obrigatório quando existir config ESLint. Não afrouxa nada: a prohibição de desabilitar typecheck/build/scripts/teste (§8) fica intacta. Espelha as edições diretas já feitas nos prompts coderacer-resolvedor e coderacer-pr-doctor nesta retro (2026-W28). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
@caioross is attempting to deploy a commit to the caioross' projects team on Vercel, but is not a member of this team. To resolve this issue, you can:
To read more about collaboration on Vercel, click here. |
There was a problem hiding this comment.
Code Review
This pull request removes the 'pnpm lint' command from the validation gate instructions in both SKILL.md and HANDBOOK.md, as the repository lacks an ESLint configuration, causing headless CI builds to fail. The review feedback suggests a minor correction in HANDBOOK.md to replace the reference to 'scripts/teste' with 'scripts de validação' to accurately reflect the repository's structure.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
| Os dois scripts são baratos; na dúvida rode ambos. Vermelho sem correção honesta dentro do | ||
| escopo = PR **DRAFT** explicando o bloqueio. Nunca enfraqueça validação para "passar". | ||
| escopo = PR **DRAFT** explicando o bloqueio. Nunca enfraqueça validação para "passar" — deixar | ||
| honesto um passo que não existe (lint sem config) não é afrouxar; desabilitar typecheck/build/scripts/teste é. |
There was a problem hiding this comment.
O repositório não possui um script de teste (pnpm test ou similar) configurado no package.json, mas sim scripts de validação (scripts/validate-metrics.mjs e scripts/validate-persistence.mjs). Para evitar ambiguidade ou a impressão de que existe um script ou diretório chamado scripts/teste, sugere-se alterar a menção para scripts de validação ou apenas scripts.
| honesto um passo que não existe (lint sem config) não é afrouxar; desabilitar typecheck/build/scripts/teste é. | |
| honesto um passo que não existe (lint sem config) não é afrouxar; desabilitar typecheck/build/scripts de validação é. |
Parecer — PR Doctor ✅ MERGEDocs-only (HANDBOOK §6 + cr-fleet-ops §4). Diff lido inteiro: torna honesto que Classificação §7.3 (normal). CI Squash-merge. |
Contexto
Retro Meta da Semana 2026-W28. O gate de validação (HANDBOOK §6 e cr-fleet-ops §4) mandava rodar
pnpm lint, mas:.eslintrc(nemeslintConfignopackage.json);next lintsem config abre o setup interativo e falha em shell headless;.github/workflows/ci.yml) roda sóinstall + typecheck + build— nunca lint.Resultado recorrente: todo Resolvedor/PR Doctor gasta tokens redescobrindo "lint N/A" e escrevendo disclaimer no PR (ver PR #8), além de ambiguidade sobre "o gate passou de verdade?".
O que mudou e por quê
pnpm typecheck && pnpm build(= exatamente o que a CI roda).pnpm lintdocumentado como N/A até existir config ESLint: não é um passo que se possa "passar", não precisa de disclaimer, e não se deve adicionar config só para o gate. Se um dia houver.eslintrc, o lint volta a ser obrigatório.Espelha as edições já aplicadas diretamente nos prompts das rotinas
coderacer-resolvedor(§6.E) ecoderacer-pr-doctor(§5.C) nesta mesma retro.Validação
Docs-only (2 arquivos
.md,docs/**+.claude/skills/**) — HANDBOOK §7.3 (normal). Sem impacto em código/gate executável.