Review e correções de conformidade do plugin (P0–P2 + deep review)#7
Conversation
Move plugin.json para .claude-plugin/ (local exigido pela especificação do Claude Code), unifica o name do plugin para laravel-toolkit, define a version 5.0.0 e remove o array skills redundante do marketplace (a auto-descoberta assume).
Os 24 command wrappers colidiam com as skills no namespace /laravel-toolkit:, sobrepondo a skill completa pelo wrapper fino. Skills de plugin são auto-descobertas, então os wrappers eram desnecessários.
Adiciona hooks/hooks.json e 8 scripts shell defensivos (parse de stdin via jq; exit 2 bloqueia). Move as descrições .md para hooks/docs/ como referência.
Substitui nomes obsoletos (laravel-architecture, spec-creation, github-pr-review, etc.) pelos nomes flat reais nas seções de skills relacionadas.
testing: remove pacote inexistente e usa pest --parallel/php artisan test. exceptions: handler em bootstrap/app.php (Laravel 11+) e Log via import. models: remove chave duplicada. enums: Rule::enum desde 9.23. Padroniza compatibility e generaliza a estrutura específica de SaaS para placeholders.
Corrige namespace de invocação (/laravel-toolkit:), instruções de instalação, versão 5.0.0 e strict:false. Cria CLAUDE.md. INTEGRATION-MAP com nomes flat. RESTRUCTURE-PLAN marcado como histórico (não adotado).
Adiciona name explícito aos 5 agents e alinha as contagens de skills orquestradas ao conteúdo real de cada agente.
Remove prompts.md (dump auto-gerado de outro projeto, ~545KB) e scripts/migrate-skills.sh (stub sem implementação). Adiciona prompts.md ao .gitignore.
REVIEW.md com o diagnóstico completo (conformidade com a spec, qualidade das skills, hooks, documentação) e o plano de correções aplicado.
Incluído via git add -f por estar no .gitignore_global do usuário; neste repo o CLAUDE.md é documentação do plugin (referenciada pelo README), não config pessoal.
|
Warning Review limit reached
Next review available in: 7 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (10)
WalkthroughO PR renomeia o plugin para ChangesRestruturação do plugin laravel-toolkit
Estimated code review effort: 4 (Complex) | ~60 minutes Sequence Diagram(s)sequenceDiagram
participant ClaudeCodeCli
participant hooks.json
participant ai-attribution-scrubber.sh
participant pre-push-quality-gate.sh
ClaudeCodeCli->>hooks.json: dispara PreToolUse / PostToolUse / pre-push
hooks.json->>ai-attribution-scrubber.sh: envia payload JSON do git commit
ai-attribution-scrubber.sh-->>ClaudeCodeCli: exit 2 se detectar atribuição de IA
hooks.json->>pre-push-quality-gate.sh: envia payload JSON do git push
pre-push-quality-gate.sh-->>ClaudeCodeCli: executa Pint, PHPStan e Pest quando aplicável
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Atualiza metadata.version das 24 skills de 1.0.0 para 5.0.0, alinhando ao release do plugin.
Histórico de versões no formato Keep a Changelog, documentando o release 5.0.0 e as versões anteriores.
GitHub Actions valida JSON dos manifests, coerência de nome plugin/marketplace, presença de SKILL.md, ausência de cross-references obsoletas e sintaxe/shellcheck dos hooks.
Registra a decisão de manter as skills flat (não adotar namespaces) e de não reintegrar filament-check-pro (Filament via skill nativa do Laravel Boost).
There was a problem hiding this comment.
Actionable comments posted: 11
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
CLAUDE.md (1)
42-47: 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick winCorrija acentuação em português.
Várias palavras estão sem acento: "Nao" → "Não" (2x), "Apos" → "Após", "mudanca" → "mudança", "Instalacao" → "Instalação". Mantenha a qualidade do PT-BR no documento.
- - Nao versionar dumps externos ou artefatos gerados por outros projetos (ex.: `prompts.md` de projetos-alvo). - - Nao modificar `phpstan.neon` (regra global do workspace). - - Apos qualquer mudanca estrutural, manter **README.md**, **IMPLEMENTATION.md** e **CHECKPOINT.md** sincronizados com a realidade. - - Hooks vivem em `hooks/hooks.json` + scripts — nao apenas como markdown descritivo. - - Instalacao do plugin: `/plugin marketplace add aronpc/ai` seguido de `/plugin install laravel-toolkit@aronpc-skills`. + - Não versionar dumps externos ou artefatos gerados por outros projetos (ex.: `prompts.md` de projetos-alvo). + - Não modificar `phpstan.neon` (regra global do workspace). + - Após qualquer mudança estrutural, manter **README.md**, **IMPLEMENTATION.md** e **CHECKPOINT.md** sincronizados com a realidade. + - Hooks vivem em `hooks/hooks.json` + scripts — não apenas como markdown descritivo. + - Instalação do plugin: `/plugin marketplace add aronpc/ai` seguido de `/plugin install laravel-toolkit@aronpc-skills`.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@CLAUDE.md` around lines 42 - 47, Corrija a acentuação em português no documento CLAUDE.md, ajustando as ocorrências de “Nao” para “Não” (duas vezes), “Apos” para “Após”, “mudanca” para “mudança” e “Instalacao” para “Instalação”; revise o trecho com as diretrizes de manutenção do workspace e a instrução de instalação do plugin para garantir que o texto fique consistente em PT-BR sem alterar o conteúdo.
🧹 Nitpick comments (10)
REVIEW.md (6)
9-25: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winContextualize o diagnóstico no tempo para evitar confusão com o estado pós-correção.
O veredicto afirma que "O plugin NÃO instala/funciona corretamente como está" e lista 3 bloqueantes (P0.1–P0.3), mas o próprio PR já corrige esses problemas (move
plugin.jsonpara.claude-plugin/, criahooks/hooks.json, unifica identidade). Sem uma nota introdutória indicando que este documento registra o estado pré-correção ou baseline do review, leitores futuros podem achar que o plugin ainda está quebrado após o merge.Adicione uma nota no início esclarecendo que este é o diagnóstico do estado encontrado, e que as correções correspondentes são aplicadas no próprio PR.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@REVIEW.md` around lines 9 - 25, Add a brief note at the start of REVIEW.md in the section that begins with “Veredicto” to clearly state this is a pre-fix baseline of the review state, not the post-merge status. Mention that the listed blockers and inconsistencies reflect the state found during review and that the corresponding fixes are being applied in this PR, so future readers do not mistake the diagnosis for the current plugin state.
66-70: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winA nota factual sobre Filament 5 precisa de atualização.
O REVIEW.md afirma que "a única versão a confirmar manualmente é Filament 5" (linha 67), mas as coding guidelines do projeto estabelecem explicitamente "referenciar Filament 4.x (não Filament 5)". O PR já adota Filament 4.x conforme as guidelines. O REVIEW.md deveria refletir essa decisão tomada, não deixar como pendente de verificação.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@REVIEW.md` around lines 66 - 70, The REVIEW.md note about Filament 5 is outdated and still leaves the version as something to confirm manually, but the project guidelines already lock this to Filament 4.x. Update the P1.7 note to match the established decision in the repo, removing the “verify Filament 5” wording and aligning the README guidance with the existing Filament 4.x references so the document is internally consistent.Source: Coding guidelines
69-69: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low valueCorrija a grafia de "auto-contradição" para "autocontradição" (sem hífen).
Conforme o Vocabulário Ortográfico da Língua Portuguesa, os prefixos "auto-" perdem o hífen quando seguidos de vogal. Aplica-se também a "autogerado" (linha 98) e "autodescobertas" (linha 107) se desejar padronizar.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@REVIEW.md` at line 69, The REVIEW.md text has a spelling/orthography issue: “auto-contradição” should be written as “autocontradição” without a hyphen. Update the affected sentence and, if you are normalizing the same prefix usage in this document, also align related terms such as “autogerado” and “autodescobertas” to the same no-hyphen convention.
103-138: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winO roadmap de execução está desatualizado em relação ao que o PR já entrega.
A Fase 1 (P0) e boa parte da Fase 2 (P1) já foram executadas neste PR:
plugin.jsonmovido, identidade unificada,hooks/hooks.jsoncriado, cross-references corrigidas, agents comname,CLAUDE.mdcriado. Manter o roadmap como "plano futuro" sem notar o que já foi feito cria duplicidade de trabalho e confusão sobre o que resta.Atualize o roadmap para refletir o estado real: marque itens já entregues neste PR como "✅ Feito" ou mova para um "Resumo de Alterações Aplicadas".
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@REVIEW.md` around lines 103 - 138, O roadmap ainda lista como pendentes itens que este PR já entregou, como a movimentação de plugin.json, a unificação da identidade, a criação de hooks/hooks.json, a correção de cross-references, os agents com name e a adição de CLAUDE.md. Atualize a seção de roadmap em REVIEW.md para refletir o estado real, marcando esses itens como concluídos ou movendo-os para um resumo de alterações aplicadas, mantendo apenas o que realmente falta. Use os símbolos já citados no diff (plugin.json, hooks/hooks.json, CLAUDE.md, agents, cross-references, Fase 1/Fase 2) para localizar e revisar os blocos correspondentes.
58-70: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winAtualize o status dos itens P1 que já foram corrigidos no PR.
P1.1 (
CLAUDE.mdcriado), P1.2 (versão unificada em 5.0.0), P1.5 (cross-references corrigidas em massa), P1.6 (compatibilidade padronizada) e P1.8 (nameadicionado aos agents) já têm correções no PR. O REVIEW.md perpetua o diagnóstico sem refletir as resoluções, o que desatualiza o documento no momento do merge.Adicione uma coluna "Status no PR" à tabela do P1 ou uma seção de "Resoluções Aplicadas".
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@REVIEW.md` around lines 58 - 70, O REVIEW.md ainda lista como abertas correções que já foram aplicadas no PR, então o documento precisa refletir o estado real antes do merge. Atualize a tabela P1 adicionando uma coluna “Status no PR” ou crie uma seção de “Resoluções Aplicadas” e marque como corrigidos os itens P1.1, P1.2, P1.5, P1.6 e P1.8. Use os identificadores CLAUDE.md, marketplace.json, IMPLEMENTATION.md, architecture/qa/models e os agents bugfix/refactor-safe/sprint-executor/pr-guard para localizar os pontos citados e manter o restante dos itens ainda pendentes corretamente descritos.
46-53: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winP0.3 descreve a opção (a) que o PR implementou, mas o diagnóstico não reflete a correção aplicada.
A opção (a) — "criar
hooks/hooks.jsoncomtype: 'command'apontando para scripts shell reais" — é exatamente o que o PR entrega (conformehooks/hooks.jsonno contexto). O REVIEW.md deveria marcar P0.3 como "corrigido no PR" ou mover para uma seção de "Resolução", caso contrário perpetua a impressão de que os hooks ainda são inertes.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@REVIEW.md` around lines 46 - 53, A seção P0.3 still describes the hooks as inert even though the PR has already implemented the real wiring via hooks/hooks.json. Update the REVIEW.md diagnosis to reflect that the option (a) fix is now present, using the hooks.json configuration and the related hook names (for example, pre-push-quality-gate and laravel-convention-guard) as the reference point. Mark P0.3 as corrected in the PR or move it into a resolution/verified section so the document no longer implies the hooks are still only decorative.hooks/scripts/laravel-convention-guard.sh (1)
32-33: 🎯 Functional Correctness | 🔵 Trivial | 💤 Low valueEdits parciais podem escapar da detecção.
Para a ferramenta
Edit, apenasnew_stringé inspecionado (linha 33). Um anti-pattern dividido entreold_string/contexto enew_string(ex.:env(parcialmente já presente) pode não ser detectado. Trade-off aceitável para um guard heurístico, mas vale registrar a limitação.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@hooks/scripts/laravel-convention-guard.sh` around lines 32 - 33, The guard logic in the content extraction step only inspects tool_input.new_string for Edit operations, so partial anti-patterns split across old_string/context and new_string can be missed. Update the heuristic in the shell script around the CONTENT assignment to either document this limitation explicitly or broaden the Edit handling so the guard checks enough surrounding context to catch split patterns, while keeping the behavior localized to the content parsing path.CLAUDE.md (1)
11-21: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low valueAdicione linguagem ao bloco de código.
O bloco de código na estrutura do projeto está sem especificação de linguagem, o que quebra a regra MD040 do markdownlint.
+.claude-plugin/
<details> <summary>🤖 Prompt for AI Agents</summary>Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.In
@CLAUDE.mdaround lines 11 - 21, The project structure code block in
CLAUDE.md is missing a language tag, which violates markdownlint MD040. Update
the code fence that contains the directory tree so it declares an appropriate
language (for example, a plain-text/tree-style fence) and keep the existing
content unchanged. Locate the block near the documented.claude-plugin/
structure and ensure the fenced block is consistently labeled throughout the
file.</details> <!-- cr-comment:v1:4144c92f217fec741ea165af --> </blockquote></details> <details> <summary>README.md (1)</summary><blockquote> `159-169`: _📐 Maintainability & Code Quality_ | _🔵 Trivial_ | _💤 Low value_ **Adicione linguagem ao bloco de código de exemplos.** O bloco de código na linha 167 está sem especificação de linguagem. ```diff+/laravel-toolkit:architecture # Arquitetura Laravel
<details> <summary>🤖 Prompt for AI Agents</summary>Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.In
@README.mdaround lines 159 - 169, O bloco de exemplos em README está sem
linguagem declarada, então ajuste a marcação do trecho de comandos para incluir
a linguagem apropriada no code fence. Localize o bloco que mostra os comandos em
/laravel-toolkit:architecture e /laravel-toolkit:spec e atualize a abertura do
bloco para um identificador de linguagem consistente com esse conteúdo.</details> <!-- cr-comment:v1:a8ed8be8969da68061c0beab --> </blockquote></details> <details> <summary>skills/cicd/SKILL.md (1)</summary><blockquote> `63-63`: _📐 Maintainability & Code Quality_ | _🔵 Trivial_ | _💤 Low value_ **Verificar se PHP 8.3 é a versão intencional para CI/CD.** As demais skills declaram compatibilidade `PHP 8.2+`. A mudança `8.5 → 8.3` está correta (remove a versão inexistente), mas considere alinhar para `8.2` se o objetivo é documentar a versão mínima compatível, ou mantenha `8.3` se for a versão específica usada nos workflows de CI/CD do projeto. ```diff - php-version: '8.3' + php-version: '8.2' # ou '8.3' se for versão fixa do projetoAlso applies to: 79-79, 271-271
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@skills/cicd/SKILL.md` at line 63, The PHP runtime version mentioned in the CI/CD skill should be aligned with the intended compatibility policy: verify whether `Setup PHP 8.3` in `SKILL.md` is meant to document the minimum supported version or the exact CI runtime. Update the wording consistently with the rest of the skills that reference `PHP 8.2+`, using the relevant sections around the setup and runtime guidance so the version choice is consistent across the document.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@hooks/scripts/ai-attribution-scrubber.sh`:
- Around line 1-6: Os comentários do cabeçalho do script
ai-attribution-scrubber.sh estão em inglês, mas todo o conteúdo de hooks/**
precisa ficar em PT-BR. Atualize os comentários iniciais do script para
português, mantendo a mesma informação sobre o evento, bloqueio de git commit,
critérios de detecção e comportamento defensivo; use os símbolos identificáveis
do próprio arquivo, como o cabeçalho do script e a seção de comentários
explicativos, para localizar e padronizar o texto.
In `@hooks/scripts/laravel-convention-guard.sh`:
- Around line 1-8: O cabeçalho do script está com comentários em inglês e
precisa seguir o padrão dos demais hooks, com comentários em PT-BR e mensagens
ao usuário também em PT-BR. Atualize os comentários iniciais de
laravel-convention-guard.sh para português, mantendo a mesma informação sobre o
comportamento do hook e suas regras de bloqueio.
In `@hooks/scripts/post-commit-doc-check.sh`:
- Around line 1-7: Os comentários de cabeçalho em post-commit-doc-check.sh estão
em inglês e devem ser traduzidos para PT-BR conforme as diretrizes do projeto.
Atualize os comentários iniciais do script, mantendo a identificação do hook e o
comportamento descrito, mas reescrevendo o texto de documentação com linguagem
em português brasileiro de forma clara e consistente.
In `@hooks/scripts/pre-push-quality-gate.sh`:
- Around line 1-7: Os comentários do cabeçalho em pre-push-quality-gate.sh ainda
estão em inglês; ajuste apenas a documentação comentada para PT-BR, mantendo a
lógica do hook intacta. Atualize os comentários no topo do script (incluindo a
descrição do evento e do comportamento) para português brasileiro, preservando
os símbolos existentes como pre-push-quality-gate.sh e a verificação de
./artisan e vendor/bin.
- Around line 23-38: The pre-push quality gate in run_check is blocking
indefinitely because Pint/PHPStan/Pest run synchronously without any execution
limit. Update run_check in pre-push-quality-gate.sh to enforce a timeout around
each tool invocation, and make the timeout configurable or use a sensible
default so a hung check fails fast instead of freezing the PreToolUse hook. Keep
the existing run_check flow and the Pint, PHPStan, and Pest call sites intact
while adding the timeout behavior.
In `@hooks/scripts/skill-auto-suggest.sh`:
- Around line 1-6: Os comentários de cabeçalho em skill-auto-suggest.sh estão em
inglês, mas os hooks devem seguir o padrão em PT-BR. Atualize apenas os
comentários do topo do script para português brasileiro, mantendo o propósito
descrito por skill-auto-suggest.sh e o contexto de UserPromptSubmit sem alterar
a lógica do hook.
In `@hooks/scripts/sprint-auto-update.sh`:
- Around line 1-5: The header comments in sprint-auto-update.sh are still in
English; update the script’s top comments (including the reminder and event
description) to PT-BR to match the hooks coding guideline, keeping the script
behavior unchanged and preserving the existing structure around the shebang and
header.
In `@hooks/scripts/sprint-context-loader.sh`:
- Around line 1-6: O cabeçalho do script sprint-context-loader.sh está em
inglês, mas os hooks devem seguir PT-BR. Atualize os comentários iniciais do
script para português brasileiro, mantendo o mesmo conteúdo funcional e o
comportamento do SessionStart sem alterar a lógica do arquivo.
In `@IMPLEMENTATION.md`:
- Around line 201-231: The skill counts documented for the bugfix,
refactor-safe, and sprint-executor agents are inconsistent with CHECKPOINT.md.
Update the agent summaries in IMPLEMENTATION.md so the counts match the actual
orchestrated skills, and verify the corresponding agent sections and checklist
items stay aligned with CHECKPOINT.md for these named agents.
In `@INTEGRATION-MAP.md`:
- Around line 72-115: The tables in INTEGRATION-MAP.md use the header
“Referencia Para” without the accent; update the affected table header text in
the sections for roadmap/codebase/ui-ux, spec/sprint/planner, and
testing/qa/mcp/pr-review to “Referência Para” consistently, keeping the rest of
the table structure unchanged.
In `@skills/sprint/references/prompts-avancados.md`:
- Around line 327-343: The skill path check in the integration checklist is
using the wrong location; update the file existence test to match where the
plugin actually stores skills. In the prompt section that references
architecture and the surrounding skill list, verify whether the intended path
should be under skills/ rather than .ai/skills/, and make the path consistent
with the documented installation layout so the checklist checks the correct
SKILL.md file.
---
Outside diff comments:
In `@CLAUDE.md`:
- Around line 42-47: Corrija a acentuação em português no documento CLAUDE.md,
ajustando as ocorrências de “Nao” para “Não” (duas vezes), “Apos” para “Após”,
“mudanca” para “mudança” e “Instalacao” para “Instalação”; revise o trecho com
as diretrizes de manutenção do workspace e a instrução de instalação do plugin
para garantir que o texto fique consistente em PT-BR sem alterar o conteúdo.
---
Nitpick comments:
In `@CLAUDE.md`:
- Around line 11-21: The project structure code block in CLAUDE.md is missing a
language tag, which violates markdownlint MD040. Update the code fence that
contains the directory tree so it declares an appropriate language (for example,
a plain-text/tree-style fence) and keep the existing content unchanged. Locate
the block near the documented `.claude-plugin/` structure and ensure the fenced
block is consistently labeled throughout the file.
In `@hooks/scripts/laravel-convention-guard.sh`:
- Around line 32-33: The guard logic in the content extraction step only
inspects tool_input.new_string for Edit operations, so partial anti-patterns
split across old_string/context and new_string can be missed. Update the
heuristic in the shell script around the CONTENT assignment to either document
this limitation explicitly or broaden the Edit handling so the guard checks
enough surrounding context to catch split patterns, while keeping the behavior
localized to the content parsing path.
In `@README.md`:
- Around line 159-169: O bloco de exemplos em README está sem linguagem
declarada, então ajuste a marcação do trecho de comandos para incluir a
linguagem apropriada no code fence. Localize o bloco que mostra os comandos em
/laravel-toolkit:architecture e /laravel-toolkit:spec e atualize a abertura do
bloco para um identificador de linguagem consistente com esse conteúdo.
In `@REVIEW.md`:
- Around line 9-25: Add a brief note at the start of REVIEW.md in the section
that begins with “Veredicto” to clearly state this is a pre-fix baseline of the
review state, not the post-merge status. Mention that the listed blockers and
inconsistencies reflect the state found during review and that the corresponding
fixes are being applied in this PR, so future readers do not mistake the
diagnosis for the current plugin state.
- Around line 66-70: The REVIEW.md note about Filament 5 is outdated and still
leaves the version as something to confirm manually, but the project guidelines
already lock this to Filament 4.x. Update the P1.7 note to match the established
decision in the repo, removing the “verify Filament 5” wording and aligning the
README guidance with the existing Filament 4.x references so the document is
internally consistent.
- Line 69: The REVIEW.md text has a spelling/orthography issue:
“auto-contradição” should be written as “autocontradição” without a hyphen.
Update the affected sentence and, if you are normalizing the same prefix usage
in this document, also align related terms such as “autogerado” and
“autodescobertas” to the same no-hyphen convention.
- Around line 103-138: O roadmap ainda lista como pendentes itens que este PR já
entregou, como a movimentação de plugin.json, a unificação da identidade, a
criação de hooks/hooks.json, a correção de cross-references, os agents com name
e a adição de CLAUDE.md. Atualize a seção de roadmap em REVIEW.md para refletir
o estado real, marcando esses itens como concluídos ou movendo-os para um resumo
de alterações aplicadas, mantendo apenas o que realmente falta. Use os símbolos
já citados no diff (plugin.json, hooks/hooks.json, CLAUDE.md, agents,
cross-references, Fase 1/Fase 2) para localizar e revisar os blocos
correspondentes.
- Around line 58-70: O REVIEW.md ainda lista como abertas correções que já foram
aplicadas no PR, então o documento precisa refletir o estado real antes do
merge. Atualize a tabela P1 adicionando uma coluna “Status no PR” ou crie uma
seção de “Resoluções Aplicadas” e marque como corrigidos os itens P1.1, P1.2,
P1.5, P1.6 e P1.8. Use os identificadores CLAUDE.md, marketplace.json,
IMPLEMENTATION.md, architecture/qa/models e os agents
bugfix/refactor-safe/sprint-executor/pr-guard para localizar os pontos citados e
manter o restante dos itens ainda pendentes corretamente descritos.
- Around line 46-53: A seção P0.3 still describes the hooks as inert even though
the PR has already implemented the real wiring via hooks/hooks.json. Update the
REVIEW.md diagnosis to reflect that the option (a) fix is now present, using the
hooks.json configuration and the related hook names (for example,
pre-push-quality-gate and laravel-convention-guard) as the reference point. Mark
P0.3 as corrected in the PR or move it into a resolution/verified section so the
document no longer implies the hooks are still only decorative.
In `@skills/cicd/SKILL.md`:
- Line 63: The PHP runtime version mentioned in the CI/CD skill should be
aligned with the intended compatibility policy: verify whether `Setup PHP 8.3`
in `SKILL.md` is meant to document the minimum supported version or the exact CI
runtime. Update the wording consistently with the rest of the skills that
reference `PHP 8.2+`, using the relevant sections around the setup and runtime
guidance so the version choice is consistent across the document.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 409fb110-ce2d-4de0-bc3b-bd18ba929934
📒 Files selected for processing (83)
.claude-plugin/marketplace.json.claude-plugin/plugin.json.gitignoreCHECKPOINT.mdCLAUDE.mdIMPLEMENTATION.mdINTEGRATION-MAP.mdREADME.mdRESTRUCTURE-PLAN.mdREVIEW.mdagents/bugfix.mdagents/feature-lifecycle.mdagents/pr-guard.mdagents/refactor-safe.mdagents/sprint-executor.mdcommands/actions.mdcommands/architecture.mdcommands/cicd.mdcommands/codebase.mdcommands/coder.mdcommands/docs.mdcommands/enums.mdcommands/exceptions.mdcommands/i18n.mdcommands/issues.mdcommands/mcp.mdcommands/models.mdcommands/planner.mdcommands/pr-review.mdcommands/qa.mdcommands/realtime.mdcommands/roadmap.mdcommands/spec.mdcommands/sprint.mdcommands/standards.mdcommands/testing.mdcommands/ui-ux.mdcommands/ux.mdcommands/workflow.mdhooks/docs/ai-attribution-scrubber.mdhooks/docs/laravel-convention-guard.mdhooks/docs/post-commit-doc-check.mdhooks/docs/pre-push-quality-gate.mdhooks/docs/skill-auto-suggest.mdhooks/docs/sprint-auto-update.mdhooks/docs/sprint-context-loader.mdhooks/docs/tenancy-safety-check.mdhooks/hooks.jsonhooks/scripts/ai-attribution-scrubber.shhooks/scripts/laravel-convention-guard.shhooks/scripts/post-commit-doc-check.shhooks/scripts/pre-push-quality-gate.shhooks/scripts/skill-auto-suggest.shhooks/scripts/sprint-auto-update.shhooks/scripts/sprint-context-loader.shhooks/scripts/tenancy-safety-check.shplugin.jsonprompts.mdscripts/migrate-skills.shskills/actions/SKILL.mdskills/architecture/SKILL.mdskills/cicd/SKILL.mdskills/codebase/SKILL.mdskills/docs/SKILL.mdskills/enums/SKILL.mdskills/exceptions/SKILL.mdskills/i18n/SKILL.mdskills/issues/SKILL.mdskills/mcp/SKILL.mdskills/models/SKILL.mdskills/planner/SKILL.mdskills/pr-review/SKILL.mdskills/qa/SKILL.mdskills/realtime/SKILL.mdskills/roadmap/SKILL.mdskills/spec/SKILL.mdskills/sprint/SKILL.mdskills/sprint/references/prompts-avancados.mdskills/standards/SKILL.mdskills/testing/SKILL.mdskills/ui-ux/SKILL.mdskills/ux/SKILL.mdskills/workflow/SKILL.md
💤 Files with no reviewable changes (26)
- commands/planner.md
- commands/workflow.md
- commands/ui-ux.md
- commands/spec.md
- commands/enums.md
- commands/pr-review.md
- commands/architecture.md
- commands/actions.md
- commands/cicd.md
- commands/roadmap.md
- commands/mcp.md
- commands/standards.md
- commands/qa.md
- commands/issues.md
- commands/exceptions.md
- commands/coder.md
- commands/sprint.md
- commands/i18n.md
- commands/realtime.md
- commands/models.md
- commands/testing.md
- scripts/migrate-skills.sh
- commands/codebase.md
- commands/ux.md
- plugin.json
- commands/docs.md
- hooks: traduz cabeçalhos dos 8 scripts para PT-BR e adiciona timeout 120 no run_check do pre-push-quality-gate (evita congelar a sessão se a suíte travar) - hooks: documenta limitação de detecção em Edit no laravel-convention-guard - docs: alinha contagens de skills por agente em IMPLEMENTATION.md e CHECKPOINT.md com a realidade dos agents (14/8/5/6/3) - docs: corrige acentuação (INTEGRATION-MAP, CLAUDE) e markdownlint MD040 (CLAUDE, README); corrige caminho de skill em prompts-avancados (.ai/skills -> skills) - docs: alinha versão do PHP para 8.2 em cicd - review: adiciona nota de baseline pré-correção, marca P0.3/P1 resolvidos, atualiza roadmap e unifica Filament 4.x em REVIEW.md Claude-Session: https://claude.ai/code/session_01UsiMnaxv65rQyAzgB6X3FU
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (2)
CLAUDE.md (1)
34-38: 📐 Maintainability & Code Quality | 🟠 Major | ⚡ Quick winCorrija as instruções de criação de skill.
Os passos 3 e 4 ainda mandam editar
marketplace.jsone criar wrapper emcommands/, mas este PR mudou o pacote para auto-descoberta e removeu esses wrappers. Como está, a seção orienta um fluxo que já não existe e reintroduz a colisão de namespace.♻️ Ajuste sugerido
- 3. Adicionar `"./skills/<nome>"` à lista `skills` em `.claude-plugin/marketplace.json`. - 4. Criar o command wrapper em `commands/` referenciando o SKILL.md. - 5. A auto-descoberta do marketplace reconhece a skill na próxima instalação. + 3. Criar `skills/<nome>/SKILL.md` com `name` + `description`. + 4. Não registrar a skill manualmente no marketplace nem criar wrapper; a descoberta é automática.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@CLAUDE.md` around lines 34 - 38, A seção de criação de skill ainda descreve um fluxo antigo que edita marketplace.json e cria wrappers em commands/, mas esse caminho foi removido com a auto-descoberta. Atualize as instruções em CLAUDE.md para refletir o novo fluxo usando apenas skills/<nome>/SKILL.md com frontmatter name/description e conteúdo da skill, removendo qualquer menção a adicionar entradas em .claude-plugin/marketplace.json ou criar command wrappers. Referencie explicitamente os passos de criação de skill e a auto-descoberta do marketplace para manter o guia consistente com o pacote atual.CHECKPOINT.md (1)
52-54: 📐 Maintainability & Code Quality | 🟠 Major | ⚡ Quick winRemova a menção aos 24 wrappers de commands.
Este bloco ainda trata
commands/como infraestrutura ativa, mas o PR removeu esses wrappers. Manter essa contagem aqui faz o checkpoint divergir do estado final do plugin e da documentação de release.♻️ Ajuste sugerido
- - Command wrappers para autocomplete (24 commands) + - Skills autodescobertas pelo marketplace; `commands/` removida🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@CHECKPOINT.md` around lines 52 - 54, Remove the outdated mention of the “24 command wrappers” from the CHECKPOINT.md summary so the checkpoint matches the PR state. Update the relevant bullet near the plugin configuration and hooks notes to describe only the active plugin infrastructure, and ensure any reference to commands/ wrappers is deleted rather than reworded. Keep the wording aligned with the current plugin.json, marketplace.json, and hooks/hooks.json state.
🧹 Nitpick comments (1)
.github/workflows/ci.yml (1)
13-13: 🔒 Security & Privacy | 🔵 Trivial | ⚡ Quick winDefina
persist-credentials: falseno checkout.O
actions/checkout@v4persiste o token doGITHUB_TOKENpor padrão. Como este job só faz leitura/validação (jq, grep, shellcheck), não há necessidade de manter credenciais persistidas nos passos subsequentes.🔒 Fix sugerido
- uses: actions/checkout@v4 + with: + persist-credentials: false🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In @.github/workflows/ci.yml at line 13, The checkout step currently uses actions/checkout@v4 without disabling persisted credentials, so update the checkout configuration to set persist-credentials to false. Keep the change in the workflow job that only runs read/validation steps, and ensure the actions/checkout reference is updated directly where it is used.Source: Linters/SAST tools
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Outside diff comments:
In `@CHECKPOINT.md`:
- Around line 52-54: Remove the outdated mention of the “24 command wrappers”
from the CHECKPOINT.md summary so the checkpoint matches the PR state. Update
the relevant bullet near the plugin configuration and hooks notes to describe
only the active plugin infrastructure, and ensure any reference to commands/
wrappers is deleted rather than reworded. Keep the wording aligned with the
current plugin.json, marketplace.json, and hooks/hooks.json state.
In `@CLAUDE.md`:
- Around line 34-38: A seção de criação de skill ainda descreve um fluxo antigo
que edita marketplace.json e cria wrappers em commands/, mas esse caminho foi
removido com a auto-descoberta. Atualize as instruções em CLAUDE.md para
refletir o novo fluxo usando apenas skills/<nome>/SKILL.md com frontmatter
name/description e conteúdo da skill, removendo qualquer menção a adicionar
entradas em .claude-plugin/marketplace.json ou criar command wrappers.
Referencie explicitamente os passos de criação de skill e a auto-descoberta do
marketplace para manter o guia consistente com o pacote atual.
---
Nitpick comments:
In @.github/workflows/ci.yml:
- Line 13: The checkout step currently uses actions/checkout@v4 without
disabling persisted credentials, so update the checkout configuration to set
persist-credentials to false. Keep the change in the workflow job that only runs
read/validation steps, and ensure the actions/checkout reference is updated
directly where it is used.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: ffe3912e-e9b9-46b5-986d-af937a2fac32
📒 Files selected for processing (41)
.github/workflows/ci.ymlCHANGELOG.mdCHECKPOINT.mdCLAUDE.mdIMPLEMENTATION.mdINTEGRATION-MAP.mdREADME.mdREVIEW.mdhooks/scripts/ai-attribution-scrubber.shhooks/scripts/laravel-convention-guard.shhooks/scripts/post-commit-doc-check.shhooks/scripts/pre-push-quality-gate.shhooks/scripts/skill-auto-suggest.shhooks/scripts/sprint-auto-update.shhooks/scripts/sprint-context-loader.shhooks/scripts/tenancy-safety-check.shskills/actions/SKILL.mdskills/architecture/SKILL.mdskills/cicd/SKILL.mdskills/codebase/SKILL.mdskills/coder/SKILL.mdskills/docs/SKILL.mdskills/enums/SKILL.mdskills/exceptions/SKILL.mdskills/i18n/SKILL.mdskills/issues/SKILL.mdskills/mcp/SKILL.mdskills/models/SKILL.mdskills/planner/SKILL.mdskills/pr-review/SKILL.mdskills/qa/SKILL.mdskills/realtime/SKILL.mdskills/roadmap/SKILL.mdskills/spec/SKILL.mdskills/sprint/SKILL.mdskills/sprint/references/prompts-avancados.mdskills/standards/SKILL.mdskills/testing/SKILL.mdskills/ui-ux/SKILL.mdskills/ux/SKILL.mdskills/workflow/SKILL.md
✅ Files skipped from review due to trivial changes (16)
- skills/coder/SKILL.md
- skills/pr-review/SKILL.md
- skills/codebase/SKILL.md
- skills/ui-ux/SKILL.md
- skills/enums/SKILL.md
- skills/standards/SKILL.md
- skills/actions/SKILL.md
- skills/ux/SKILL.md
- skills/docs/SKILL.md
- skills/spec/SKILL.md
- skills/issues/SKILL.md
- skills/testing/SKILL.md
- skills/workflow/SKILL.md
- skills/roadmap/SKILL.md
- skills/models/SKILL.md
- README.md
🚧 Files skipped from review as they are similar to previous changes (13)
- skills/planner/SKILL.md
- hooks/scripts/sprint-auto-update.sh
- hooks/scripts/sprint-context-loader.sh
- hooks/scripts/tenancy-safety-check.sh
- skills/i18n/SKILL.md
- hooks/scripts/pre-push-quality-gate.sh
- hooks/scripts/post-commit-doc-check.sh
- hooks/scripts/ai-attribution-scrubber.sh
- skills/sprint/references/prompts-avancados.md
- skills/exceptions/SKILL.md
- hooks/scripts/skill-auto-suggest.sh
- hooks/scripts/laravel-convention-guard.sh
- INTEGRATION-MAP.md
Correções verificadas do deep review multi-perspectiva: - skills/exceptions: `use Illuminate\Log\LogLevel` (classe inexistente, usada em LogLevel::WARNING) -> `use Psr\Log\LogLevel` - skills/ux: substitui middleware Precognition fabricado (trait e métodos inexistentes) pelo nativo HandlePrecognitiveRequests + $request->isPrecognitive() - hooks/sprint-auto-update: corrige contagem off-by-one (wc -l -> grep -c) - docs: remove referências ao diretório commands/ (removido no v5.0.0) em CLAUDE/README/IMPLEMENTATION/CHECKPOINT - skills/spec, sprint/refs: remove referências a skills inexistentes (quick-spec, filament-check-pro, laravel-performance-*) - ci: gate de cross-references passa a cobrir esses tres tokens Verificado: bash -n nos hooks + teste do off-by-one, steps do CI locais verdes, e re-review dos dois exemplos criticos por verifier contra a doc oficial do Laravel 11.x. Claude-Session: https://claude.ai/code/session_01UsiMnaxv65rQyAzgB6X3FU
Os exemplos React de Precognition usavam a API fabricada
precognition(url, method, data). Reescritos para a API real:
- vanilla: useForm('post', url, data) de laravel-precognition-react
- inertia: useForm de laravel-precognition-react-inertia (pacote separado)
+ form.submit() com visit options do Inertia
- opção throttle inexistente -> form.setValidationTimeout(ms)
- multi-step: if(form.valid) -> form.validate({ onSuccess })
- generic useForm<FormType> -> useForm<ProductForm> (tipo realmente declarado)
Validado por verifier contra a doc oficial do Laravel 11.x: PASS nos 4 exemplos.
Claude-Session: https://claude.ai/code/session_01UsiMnaxv65rQyAzgB6X3FU
Resumo
Review completo do plugin
laravel-toolkit(conformidade com a spec do Claude Code, qualidade das skills, hooks e documentação) seguido das correções P0–P2 e de um deep review multi-perspectiva (crítico / qualidade / arquitetura). O plugin estava não instalável por 3 problemas estruturais; agora está conforme e funcional.Mudanças (10 commits atômicos)
Bloqueantes (P0)
plugin.jsonmovido para.claude-plugin/, identidade unificada paralaravel-toolkit,version5.0.0, arrayskillsredundante removido do marketplace (auto-descoberta assume).hooks/hooks.json+ 8 scripts shell defensivos e testados; as descrições foram movidas parahooks/docs/.Consistência e conteúdo (P1/P2)
/laravel-toolkit:(o wrapper sobrepunha a skill completa).lorisleiva/laravel-actions.testing(pacote inexistente +php artisan test),exceptions(handler embootstrap/app.phpdo Laravel 11+),models(chave duplicada),enums(Rule::enumdesde 9.23); versões padronizadas; exemplos de SaaS generalizados.nameexplícito nos 5 agents + contagens de skills alinhadas ao conteúdo real.strict:false);CLAUDE.mdcriado;INTEGRATION-MAPcom nomes flat;RESTRUCTURE-PLANmarcado como histórico.prompts.md(dump auto-gerado de outro projeto, ~545 KB) escripts/migrate-skills.sh(stub sem implementação).Verificação
plugin.json,marketplace.json,hooks.json).bash -nOK; hooks testados (oai-attribution-scrubberbloqueia atribuição AI e libera mensagens legítimas; oskill-auto-suggestdispara as keywords).REVIEW.md.P3 — também resolvido nesta rodada
CHANGELOG.mdadicionado (formato Keep a Changelog)..github/workflows/ci.yml): JSON dos manifests, coerência de nome plugin/marketplace, presença deSKILL.md, ausência de cross-references obsoletas e sintaxe/shellcheck dos hooks.metadata.versiondas 24 skills alinhada a 5.0.0.filament-check-pro(não reintegrar — Filament via skill nativa do Laravel Boost).Summary by CodeRabbit
New Features
Bug Fixes
Chores