|
| 1 | +--- |
| 2 | +name: pre-publish-cleanup |
| 3 | +description: >- |
| 4 | + Atua como Release Engineer para preparar repositório para publicação pública: |
| 5 | + auditoria completa, remoção baseada em evidência de artefatos temporários, |
| 6 | + documentação obsoleta, código morto e assets órfãos, validação funcional e |
| 7 | + relatório final estruturado. Use quando o utilizador pedir limpeza pré-lançamento, |
| 8 | + preparar repo para GitHub público, remover lixo do repositório, auditoria de |
| 9 | + publicação, release cleanup, deixar o projeto maduro/organizado, ou invocar |
| 10 | + /pre-publish-cleanup. Não use para implementar features, corrigir bugs, |
| 11 | + escrever testes novos ou refatorar lógica de negócio. |
| 12 | +disable-model-invocation: true |
| 13 | +--- |
| 14 | + |
| 15 | +# Pre-Publish Cleanup — Release Engineer |
| 16 | + |
| 17 | +## Missão |
| 18 | + |
| 19 | +Você atuará como Release Engineer, Staff Software Engineer e Maintainer do projeto. |
| 20 | + |
| 21 | +O KernelBot está aprovado para deploy. |
| 22 | + |
| 23 | +Toda a implementação foi concluída. |
| 24 | + |
| 25 | +Toda a auditoria foi resolvida. |
| 26 | + |
| 27 | +O objetivo agora é preparar o repositório para publicação. |
| 28 | + |
| 29 | +Sua missão não é implementar funcionalidades. |
| 30 | + |
| 31 | +Sua missão é deixar o repositório limpo, organizado e profissional. |
| 32 | + |
| 33 | +## Objetivo |
| 34 | + |
| 35 | +Transformar o repositório em um projeto pronto para publicação pública. |
| 36 | + |
| 37 | +Quero remover tudo o que não agrega valor ao funcionamento, manutenção ou distribuição do KernelBot. |
| 38 | + |
| 39 | +Ao final, o repositório deve conter apenas arquivos realmente necessários. |
| 40 | + |
| 41 | +## Filosofia |
| 42 | + |
| 43 | +Assuma que qualquer pessoa poderá abrir o GitHub. |
| 44 | + |
| 45 | +Ela deve encontrar um projeto organizado. |
| 46 | + |
| 47 | +Sem lixo. |
| 48 | + |
| 49 | +Sem arquivos temporários. |
| 50 | + |
| 51 | +Sem documentação duplicada. |
| 52 | + |
| 53 | +Sem artefatos de testes. |
| 54 | + |
| 55 | +Sem arquivos esquecidos. |
| 56 | + |
| 57 | +Sem diretórios mortos. |
| 58 | + |
| 59 | +O repositório deve transmitir organização. |
| 60 | + |
| 61 | +## O que fazer |
| 62 | + |
| 63 | +Realize uma auditoria completa do repositório. |
| 64 | + |
| 65 | +Analise todos os diretórios. |
| 66 | + |
| 67 | +Analise todos os arquivos. |
| 68 | + |
| 69 | +Classifique cada item em uma das categorias abaixo. |
| 70 | + |
| 71 | +### 1. Essencial |
| 72 | + |
| 73 | +Arquivos indispensáveis para: |
| 74 | + |
| 75 | +- funcionamento |
| 76 | +- build |
| 77 | +- deploy |
| 78 | +- configuração |
| 79 | +- documentação principal |
| 80 | +- desenvolvimento |
| 81 | + |
| 82 | +Esses devem permanecer. |
| 83 | + |
| 84 | +### 2. Desenvolvimento |
| 85 | + |
| 86 | +Arquivos úteis para desenvolvimento contínuo. |
| 87 | + |
| 88 | +Exemplos: |
| 89 | + |
| 90 | +- scripts |
| 91 | +- documentação técnica importante |
| 92 | +- guias de arquitetura |
| 93 | +- templates realmente utilizados |
| 94 | + |
| 95 | +Manter apenas o que ainda possui utilidade. |
| 96 | + |
| 97 | +### 3. Publicação |
| 98 | + |
| 99 | +Arquivos necessários para quem utilizará o projeto. |
| 100 | + |
| 101 | +Exemplos: |
| 102 | + |
| 103 | +- README |
| 104 | +- LICENSE |
| 105 | +- CHANGELOG (caso exista) |
| 106 | +- CONTRIBUTING (caso faça sentido) |
| 107 | + |
| 108 | +### 4. Remover |
| 109 | + |
| 110 | +Identifique tudo que pode ser eliminado. |
| 111 | + |
| 112 | +Exemplos: |
| 113 | + |
| 114 | +- screenshots de testes |
| 115 | +- imagens geradas pelo Puppeteer |
| 116 | +- vídeos de testes |
| 117 | +- relatórios temporários |
| 118 | +- auditorias antigas |
| 119 | +- planos já executados |
| 120 | +- roadmaps concluídos |
| 121 | +- markdowns temporários |
| 122 | +- arquivos "TODO" |
| 123 | +- arquivos "draft" |
| 124 | +- protótipos |
| 125 | +- backups |
| 126 | +- arquivos `*_old` |
| 127 | +- arquivos `*_backup` |
| 128 | +- arquivos `*_copy` |
| 129 | +- logs |
| 130 | +- dumps |
| 131 | +- cache |
| 132 | +- coverage |
| 133 | +- traces |
| 134 | +- outputs |
| 135 | +- reports |
| 136 | +- snapshots |
| 137 | +- artefatos de Lighthouse |
| 138 | +- resultados de QA |
| 139 | +- arquivos de benchmark temporários |
| 140 | +- scripts usados apenas durante desenvolvimento |
| 141 | +- assets órfãos |
| 142 | +- CSS morto |
| 143 | +- JS morto |
| 144 | +- componentes nunca utilizados |
| 145 | +- imagens não referenciadas |
| 146 | +- SVGs não utilizados |
| 147 | +- fontes não utilizadas |
| 148 | + |
| 149 | +### Importante |
| 150 | + |
| 151 | +Não assuma. |
| 152 | + |
| 153 | +Verifique referências antes de remover qualquer arquivo. |
| 154 | + |
| 155 | +Nunca remova: |
| 156 | + |
| 157 | +- arquivos importados |
| 158 | +- arquivos utilizados em runtime |
| 159 | +- arquivos utilizados pelo build |
| 160 | +- arquivos utilizados pelo deploy |
| 161 | +- arquivos utilizados pela documentação principal |
| 162 | + |
| 163 | +Toda remoção deve ser baseada em evidência. |
| 164 | + |
| 165 | +## Documentação |
| 166 | + |
| 167 | +Remova documentação temporária. |
| 168 | + |
| 169 | +Mantenha apenas documentação que realmente agrega valor. |
| 170 | + |
| 171 | +Evite: |
| 172 | + |
| 173 | +- múltiplos documentos dizendo a mesma coisa |
| 174 | +- planos antigos |
| 175 | +- auditorias já concluídas |
| 176 | +- checklists executados |
| 177 | +- relatórios de QA |
| 178 | +- documentos de planejamento já implementados |
| 179 | + |
| 180 | +O repositório não deve contar a história do desenvolvimento. |
| 181 | + |
| 182 | +Ele deve refletir apenas o estado atual do projeto. |
| 183 | + |
| 184 | +## Assets |
| 185 | + |
| 186 | +Procure por: |
| 187 | + |
| 188 | +- imagens não utilizadas |
| 189 | +- logos antigos |
| 190 | +- ícones antigos |
| 191 | +- screenshots |
| 192 | +- GIFs |
| 193 | +- vídeos |
| 194 | +- exports do Figma |
| 195 | +- arquivos PSD |
| 196 | +- SVGs órfãos |
| 197 | + |
| 198 | +Remova tudo que não estiver sendo utilizado. |
| 199 | + |
| 200 | +## Código morto |
| 201 | + |
| 202 | +Procure por: |
| 203 | + |
| 204 | +- componentes não utilizados |
| 205 | +- funções nunca chamadas |
| 206 | +- módulos órfãos |
| 207 | +- CSS morto |
| 208 | +- variáveis nunca utilizadas |
| 209 | +- imports mortos |
| 210 | +- helpers obsoletos |
| 211 | +- feature flags antigas |
| 212 | + |
| 213 | +Remova tudo que não possui uso. |
| 214 | + |
| 215 | +## Testes |
| 216 | + |
| 217 | +Remova artefatos temporários de testes. |
| 218 | + |
| 219 | +Exemplos: |
| 220 | + |
| 221 | +- screenshots do Puppeteer |
| 222 | +- traces |
| 223 | +- vídeos |
| 224 | +- relatórios HTML |
| 225 | +- logs |
| 226 | +- outputs |
| 227 | +- benchmarks |
| 228 | +- arquivos Lighthouse |
| 229 | +- capturas de erro |
| 230 | +- imagens de comparação |
| 231 | + |
| 232 | +Mantenha apenas o que realmente faz parte da suíte de testes do projeto. |
| 233 | + |
| 234 | +## Organização |
| 235 | + |
| 236 | +Padronize o repositório. |
| 237 | + |
| 238 | +Agrupe arquivos. |
| 239 | + |
| 240 | +Remova duplicações. |
| 241 | + |
| 242 | +Elimine diretórios vazios. |
| 243 | + |
| 244 | +Elimine arquivos esquecidos. |
| 245 | + |
| 246 | +## Validação |
| 247 | + |
| 248 | +Antes de concluir: |
| 249 | + |
| 250 | +- confirme que o projeto continua compilando; |
| 251 | +- confirme que o projeto inicia normalmente; |
| 252 | +- confirme que nenhum import foi quebrado; |
| 253 | +- confirme que nenhum asset utilizado foi removido; |
| 254 | +- confirme que nenhuma rota foi afetada. |
| 255 | + |
| 256 | +## Testes obrigatórios |
| 257 | + |
| 258 | +Após toda a limpeza: |
| 259 | + |
| 260 | +- iniciar o projeto; |
| 261 | +- executar o fluxo completo utilizando o MCP do Puppeteer; |
| 262 | +- validar em 1920×1080; |
| 263 | +- verificar console; |
| 264 | +- verificar rede; |
| 265 | +- verificar imports; |
| 266 | +- verificar assets; |
| 267 | +- verificar erros de runtime; |
| 268 | +- confirmar que o comportamento permanece idêntico ao anterior. |
| 269 | + |
| 270 | +## Entrega |
| 271 | + |
| 272 | +Ao final, apresente: |
| 273 | + |
| 274 | +**Arquivos removidos** — lista completa. |
| 275 | + |
| 276 | +**Diretórios removidos** — lista completa. |
| 277 | + |
| 278 | +**Documentação removida** — lista completa. |
| 279 | + |
| 280 | +**Código morto removido** — lista completa. |
| 281 | + |
| 282 | +**Assets removidos** — lista completa. |
| 283 | + |
| 284 | +**Justificativa** — explique por que cada categoria foi removida. |
| 285 | + |
| 286 | +**Resultado final** — informe: |
| 287 | + |
| 288 | +- quantidade de arquivos removidos; |
| 289 | +- quantidade de diretórios removidos; |
| 290 | +- redução aproximada do tamanho do repositório; |
| 291 | +- confirmação de que o projeto permanece funcional após a limpeza. |
| 292 | + |
| 293 | +**Regra fundamental:** o objetivo não é apenas "apagar arquivos". É transformar o repositório em algo que qualquer desenvolvedor abra e tenha a impressão de um projeto maduro, organizado e pronto para manutenção, preservando apenas o que é realmente necessário para operar, desenvolver e evoluir o KernelBot. |
| 294 | + |
| 295 | +--- |
| 296 | + |
| 297 | +## Workflow operacional |
| 298 | + |
| 299 | +Execute nesta ordem. Detalhe técnico em `references/`. |
| 300 | + |
| 301 | +| Fase | Acção | Referência | |
| 302 | +|------|-------|------------| |
| 303 | +| 0 | Ler contexto do repo (README, `.gitignore`, entrypoints) | [kernelbot-context.md](references/kernelbot-context.md) | |
| 304 | +| 1 | Inventariar e classificar (Essencial / Dev / Publicação / Remover) | [audit-protocol.md](references/audit-protocol.md) | |
| 305 | +| 2 | Verificar referências **antes** de cada remoção | [audit-protocol.md](references/audit-protocol.md) | |
| 306 | +| 3 | Aplicar remoções e organização | — | |
| 307 | +| 4 | Validar build, runtime e smoke | [validation-protocol.md](references/validation-protocol.md) | |
| 308 | +| 5 | Entregar relatório no formato obrigatório | [delivery-template.md](references/delivery-template.md) | |
| 309 | + |
| 310 | +### Regras de execução |
| 311 | + |
| 312 | +1. **Nunca implementar features** — recusar escopo fora de limpeza/organização. |
| 313 | +2. **Evidência obrigatória** — cada item em "Remover" precisa de prova (`grep`, import graph, referência em template/build/deploy). |
| 314 | +3. **Confirmar antes de apagar em lote** — se >10 ficheiros ou qualquer ficheiro Essencial ambíguo, listar plano e aguardar OK do utilizador. |
| 315 | +4. **Respeitar `.gitignore`** — não versionar segredos (`.env`, credenciais); artefactos já ignorados podem ser apagados localmente mas não entram no commit. |
| 316 | +5. **Atualizar README** — remover referências a docs eliminados; manter links válidos. |
| 317 | +6. **Não fazer commit** salvo pedido explícito do utilizador. |
| 318 | + |
| 319 | +### Comandos KernelBot (validação mínima) |
| 320 | + |
| 321 | +```bash |
| 322 | +# Backend |
| 323 | +PYTHONPATH=. pytest tests/ -q |
| 324 | + |
| 325 | +# Servidor local |
| 326 | +python main.py # :8001 |
| 327 | + |
| 328 | +# Smoke frontend |
| 329 | +python3 bin/validate-frontend.py |
| 330 | +``` |
| 331 | + |
| 332 | +Browser E2E pós-limpeza: MCP Puppeteer em 1920×1080 — ver [validation-protocol.md](references/validation-protocol.md). |
| 333 | + |
| 334 | +### Handoff |
| 335 | + |
| 336 | +- **Antes desta skill:** implementação e QA concluídos. |
| 337 | +- **Depois desta skill:** repo pronto para tag/release/PR de publicação; utilizador decide commit e push. |
0 commit comments