Validar a especificação
Modo de interação
Modo de interação:
.
Antes de formular qualquer pergunta, leia e aplique o
Contrato de perguntas numeradas
de
.
Trate
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.md
pelo caminho informado; se houver várias specs e nenhum slug, pergunte qual validar.
- Confirme , os três atos na ordem, slug igual ao diretório e pacote restrito a e ao diretório opcional .
- Para toda API ou documentação externa consultada, confirme uma evidência local em e seu índice em
Artefatos de pesquisa armazenados
; esse material é informativo, nunca uma segunda fonte normativa.
- Enquanto ou ainda estiverem pendentes, execute:
bash
node .agents/skills/specsfy-04-validate/scripts/validate_spec.mjs specs/<estado>/<NNNN>-<slug>/spec.md --allow-draft
- Leia
references/quality-gates.md
e faça a revisão semântica.
- Compare research, requisitos, BDD, plano técnico, modelo de dados, contratos,
TDD, matriz e tarefas. Confirme no mínimo três distintos para a feature
inteira e para cada , e ; 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 execute
scripts/review_findings.mjs
. mantém o gate pendente.
- Se a definição alterar stack ou persistência, exija que a Definition of Done
cite respectivamente ou . Para
mudança material de finalidade ou capacidade, exija revisão de ;
para regra nova confirmada, exija .
Classificar achados
- : 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.
- : aumenta retrabalho ou risco, mas admite implementação segura.
- : 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:
- : nenhuma falha de formato e nenhum sem resolução.
- : qualquer falha estrutural ou .
Inclua contagens, cobertura mínima
e os três achados mais
importantes e a transição automática:
- → para planejar a seção 14;
- → retorno a quando 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ícita ; após essa
saída, registre e não reabra o mesmo ciclo nesta retomada;
quando a correção já estiver decidida, use para
uma spec anteriormente aprovada e para 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ção
na seção 13 com resultado, data e achados;
- em , defina e ;
- em , defina , ,
e mantenha ;
- execute novamente
validate_spec.mjs specs/<estado>/<NNNN>-<slug>/spec.md
sem quando o gate passar;
- relate o resultado no chat.
Quando o Definition Gate passar, execute
specsfy transition <id> defined
.
Em
, use a mesma análise para o aceite final. Com Delivery Gate passado,
Status
e a DoD comprovada, execute
specsfy transition <id> completed
.
Antes disso, chame
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:
bash
node .agents/skills/specsfy-04-validate/scripts/verify_repo.mjs . \
--boundary local --timeout-seconds 300 --max-output-bytes 65536
As fronteiras
,
e
não mudam a política.
é a única forma de persistir uma atestação;
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
.
O contrato do catálogo exige as treze skills base,
,
e
as três
; também valida cada
instalada,
sem impor um total máximo de especialistas.
O Gherkin BDD é referência exclusiva da
: o enforcement nunca executa
. Ele executa os testes derivados com Pest em projetos PHP, inclusive
PHP + Node. Em projeto Node sem PHP, exige um script
; 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.