Validar a especificação
SkillDev toolsUse quando o usuário pede para validar, revisar, auditar ou checar se `specs/{id}-{slug}/spec.md` segue o formato rígido Specsfy/2.0 e está pronto para planejar. Use também quando uma transição automática pedir prova do Definition Gate ou nova validação após correção. Use antes do Ato II. Registre gates na seção 13 do mesmo arquivo; não crie checklist, relatório, plan.md ou outro artefato.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Validar a especificação skill
What this skill tells your AI
The instructions your AI receives, as published by promovaweb/specsfy in skills/specsfy-04-validate/SKILL.md and read by ahel’s review.
Preparação obrigatória
Antes de executar esta skill, carregue obrigatoriamente $specsfy-setup na
raiz do projeto. Em handoff automático, carregue-o de novo antes desta etapa.
Reutilize a raiz confirmada na conversa e não prossiga se o setup apontar uma
pendência.
Modo de interação
Modo de interação: perguntas.
Antes de formular qualquer pergunta, leia e aplique o
Contrato de perguntas numeradas de .specsfy/Spec.md.
Trate spec.md como a única fonte da verdade e como código em linguagem natural: verifique primeiro o formato rígido, depois clareza, completude, consistência e testabilidade semanticamente.
Orquestrar a conversa
Ao concluir esta etapa ou detectar trabalho de outra etapa, anuncie
Pendência detectada: <descrição> — ação: resolvendo nesta etapa e resolva-a
quando pertencer ao próprio escopo. Quando houver troca de responsabilidade,
anuncie Transição automática: $specsfy-04-validate → $<destino> — motivo: <motivo> — resultado esperado: <resultado> e carregue imediatamente a skill de
destino, sem pedir confirmação nem repetir o comando. Continue na mesma
conversa. Depois de uma correção necessária a esta etapa, anuncie Retomada automática: $<destino> → $specsfy-04-validate — pendência resolvida: <resultado> e retome-a imediatamente. Reavalie o estado após cada handoff para
evitar ciclos. Não peça confirmação para o handoff; ações sensíveis continuam
exigindo autorização específica.
Executar a validação
- Resolva
specs/<estado>/<NNNN>-<slug>/spec.mdpelo caminho informado; se houver várias specs e nenhum slug, pergunte qual validar. - Confirme
Formato: Specsfy/2.0, os três atos na ordem, slug igual ao diretório e pacote restrito aspec.mde ao diretório opcionalresearch/. - Para toda API ou documentação externa consultada, confirme uma evidência local em
research/e seu índice emArtefatos de pesquisa armazenados; esse material é informativo, nunca uma segunda fonte normativa. - Enquanto
StatusouDefinition Gateainda estiverem pendentes, execute:
node .agents/skills/specsfy-04-validate/scripts/validate_spec.mjs specs/<estado>/<NNNN>-<slug>/spec.md --allow-draft
- Leia
references/quality-gates.mde faça a revisão semântica. - Confira o campo
Interface para pessoas. Se forSim, exija na seção 10 stack e convenções observadas, telas e responsabilidades, fluxo de informação e navegação, menus e navegação principal, formulários e ações, composição e disposição, estados e acessibilidade. Confira se a tecnologia proposta segue as fontes da stack ou se a lacuna foi registrada para a pessoa. Um CRUD sem telas e formulário éBLOCKER; retorne automaticamente ao$specsfy-02-backlogpara esclarecer a lacuna. - Compare research, requisitos, BDD, plano técnico, modelo de dados, contratos,
TDD, matriz e tarefas. Confirme no mínimo três
ACdistintos para a feature inteira e para cadaUS,FReNFR; não confunda “arquivo bem formatado” com “especificação correta”. - Quando produto, arquitetura ou segurança forem materiais, leia
references/review-lenses.md, registre findings na seção 13 e executescripts/review_findings.mjs.P1 Openmantém o gate pendente. - Se a definição alterar stack ou persistência, exija que a Definition of Done
cite respectivamente
.specsfy/STACK.mdou.specsfy/DATABASE.md. Para mudança material de finalidade ou capacidade, exija revisão dePROJECT.md; para regra nova confirmada, exija.specsfy/RULES.md. - No aceite final, procure tarefas
[MIGRATION]e executeverify_evidence.mjs --deliverypara cada uma. Mantenha o Delivery Gate pendente quando a tarefa estiver aberta ou quando o arquivo, o comando de aplicação ou a consulta de estado estiver ausente.
Classificar achados
BLOCKER: impede tarefa ou teste correto; requisito contraditório, sem comportamento observável, decisão de alto impacto ausente ou cenário principal não coberto.WARNING: aumenta retrabalho ou risco, mas admite implementação segura.NOTE: melhoria editorial sem efeito material.
Para cada achado, cite seção ou ID, explique o impacto e proponha uma correção concreta.
Gate
Retorne exatamente um resultado:
READY: nenhuma falha de formato e nenhumBLOCKERsem resolução.NOT READY: qualquer falha estrutural ouBLOCKER.
Inclua contagens, cobertura mínima US/FR/NFR ↔ 3 ACs e os três achados mais
importantes e a transição automática:
READY→$specsfy-05-taskspara planejar a seção 14;NOT READY→ retorno a$specsfy-02-backlogquando faltar decisão; a o refinamento do backlog executa seu ciclo completo e esta validação só é retomada depois de fechar as lacunas ou registrar a saída explícitaavançar; após essa saída, registreNOT READYe não reabra o mesmo ciclo nesta retomada; quando a correção já estiver decidida, use$specsfy-update-specpara uma spec anteriormente aprovada e$specsfy-03-specifypara a definição inicial.
Anuncie o motivo e carregue imediatamente a skill escolhida.
Registrar no arquivo único
Sem alterar requisitos automaticamente:
- atualize
Gate do Ato I — Definiçãona seção 13 com resultado, data e achados; - em
READY, definaDefinition Gate: PassedeStatus: Defined; - em
NOT READY, definaDefinition Gate: Failed,Plan Gate: Pending,Delivery Gate: Pendinge mantenhaStatus: Draft; - execute novamente
validate_spec.mjs specs/<estado>/<NNNN>-<slug>/spec.mdsem--allow-draftquando o gate passar; - relate o resultado no chat.
Quando o Definition Gate passar, execute specsfy transition <id> defined.
Em review, use a mesma análise para o aceite final. Com Delivery Gate passado,
Status Complete e a DoD comprovada, execute specsfy transition <id> completed.
Antes disso, chame $specsfy-interviewer quando uma resposta puder mudar a
entrega ou o Effort.
Se o usuário pedir correções, edite as seções de origem, preserve IDs e revalide. Nunca crie outro arquivo de especificação ou validação.
Enforcement do repositório
Use o mesmo runner localmente e no CI:
node .agents/skills/specsfy-04-validate/scripts/verify_repo.mjs . \
--boundary local --timeout-seconds 300 --max-output-bytes 65536
As fronteiras local, git e ci não mudam a política. --attestation PATH
é a única forma de persistir uma atestação; --self-test executa canários em
diretório temporário e nunca produz binding probatório. A atestação schema 2
liga commit, digest executável, checks aprovados, tarefas e hashes de arquivos.
O digest cobre comandos, limites e os arquivos da política. Não aceite um gate
que passa em apenas uma fronteira, excede limites ou trunca diagnóstico sem
marcar truncated.
O contrato do catálogo exige as quatorze skills base, specsfy-setup,
specsfy-documentator e
as três specsfy-aux-*; também valida cada specsfy-specialist-* instalada,
sem impor um total máximo de especialistas.
O Gherkin BDD é referência exclusiva da spec.md: o enforcement nunca executa
.feature. Ele executa os testes derivados com Pest em projetos PHP, inclusive
PHP + Node. Em projeto Node sem PHP, exige um script test:tdd; quando ausente,
falha orientando a skill a perguntar ao usuário e sugerir Vitest.
Especialistas sob demanda
Leia references/specialists.md quando um gate depender de revisão técnica específica. Instalação é recomendação explícita, nunca efeito colateral da validação.
Signals
- GitHub stars
- 79
- Forks
- 37
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
specsfy-04-validate- Source
- github.com/promovaweb/specsfy