PrumoGrid

InícioAprendaRecursosVerificação

RECURSOS / 10

Verificação

Um comando seu que confere a etapa depois do turno do agente. Se ele reprovar, a etapa não fica pronta, mesmo que o agente diga que terminou.

Atualizado para o PrumoGrid 0.5.11

Para que serve

O agente avisar que terminou quer dizer que ele parou de falar. A verificação é um comando seu, como npm test, que o PrumoGrid roda depois do turno para conferir o trabalho. Quem decide é o código de saída: se o comando sai com o código esperado, a etapa fica aprovada; se não, ela fica reprovada e não libera a próxima. O comando roda no serviço, fora do terminal do agente, e o resultado mostra o comando, o código de saída, o tempo e o veredito.

Veja no vídeo

VÍDEO 10 · 2:35

Uma operação de correção com vários agentes. Um bug corrigido do começo ao fim por três agentes: análise, correção confirmada pelo npm test e revisão com a minha aprovação. Legendas e transcrição ↗

Quando usar e quando não usar

Use uma verificação nas etapas que mudam código e que alguém vai incorporar: uma correção, uma refatoração, um teste novo. Numa etapa que só analisa ou escreve um relatório, um comando raramente prova alguma coisa, e o aviso do agente ou a sua aprovação servem melhor.

Uma verificação só vale se puder reprovar. echo ok, ou um comando que sempre sai com zero, não confere nada. E um comando que já passa antes do trabalho também não confere o trabalho.

Passo a passo

A verificação do projeto

Cada projeto pode ter um comando de verificação, usado pelas etapas e pelas rotinas.

  1. Olhe o cartão da loja-api. A linha Verificação: npm test · detectado diz que o PrumoGrid achou o npm test no package.json.
  2. Para conferir ou mudar, abra o menu ··· do cartão e escolha Verificação do projeto…. A paleta de comandos (Ctrl+K) tem o mesmo comando.
  3. No diálogo Verificação · loja-api, confira Comando, Pasta e Tempo limite (min). A frase Passa quando o comando termina com 0. diz a regra.
  4. Clique em Testar agora. O PrumoGrid pergunta "Vai rodar npm test em C:\demo\loja-api. Rodar?". Clique em Rodar e veja o código de saída, o tempo e se passou.
  5. Clique em Salvar.

A detecção olha arquivos como package.json, pom.xml, go.mod e os manifestos .NET. Quando o comando vem de outro lugar, o cartão diz a origem: definido por você, do CLAUDE.md, do AGENTS.md ou sugerido. Sem comando, o cartão mostra Sem verificação.

Um critério que falha antes: o cupom PRIMEIRA

O cupom PRIMEIRA dá desconto em dobro quando o carrinho tem dois itens. A loja-api não tem teste de cupom, então npm test passa hoje, com o defeito lá. Usar npm test sozinho como critério aprovaria a etapa mesmo que o agente não corrigisse nada.

Um critério que pega o defeito: um carrinho com um item de R$ 100 e outro de R$ 50 deve ter R$ 15 de desconto (10 %), e hoje sai R$ 30.

text
node -e "const {descontoDoCupom}=require('./src/cupom.cjs');process.exit(descontoDoCupom([{preco:100,quantidade:1},{preco:50,quantidade:1}],'PRIMEIRA',{})===15?0:1)"
  1. Rode o comando no PowerShell da loja-api e confira o código: $LASTEXITCODE mostra 1. O critério reprova agora, que é o que se quer.
  2. Clique em + Nova etapa e escreva Corrija o cupom PRIMEIRA, que dá desconto em dobro com dois itens. Acrescente um teste que reproduz o caso e rode npm test.
  3. Em Mais opções, escolha Automática com verificação · o comando passa e a próxima começa sozinha.
  4. Em Conferir com um comando, cole o comando acima no lugar de npm test. Deixe aprova quando terminar com em sucesso (0) e o tempo em 120 segundos.
  5. Clique em Criar etapa.

Quando o agente termina o turno, o PrumoGrid roda o comando. Com o cupom corrigido, ele sai com 0, e o cartão da etapa diz que o comando passou, com aprovada ✓. Se o agente parou no meio, sai com 1, e a etapa fica reprovada, com Ver saída e corrigir no cartão.

O que aparece na tela

Verificação do projeto: o comando que confere as etapas da loja-api.
Na etapa, Conferir com um comando usa o do projeto ou um comando só desta etapa.
O resultado mostra o comando, o código de saída e o veredito da verificação.
Na telaO que significa
Verificação: npm test · detectadoO comando do projeto e de onde ele veio.
· do projeto: npm testA etapa usa o comando do projeto. Trocar o texto vale só para esta etapa; usar o do projeto volta.
aprova quando terminar com sucesso (0) / erro (1)O código de saída esperado. Alguns comandos de conferência saem com 1 quando acham o que procuram.
desiste depois de N segundosO tempo máximo da verificação da etapa, de 5 a 900 segundos.
comando rodou 23:50, reprovada: saída 1No cartão: a verificação rodou e reprovou com código 1.
critério reprovado há 1m06s: exit 1 (esperado 0)No topo do Fluxo: o último veredito, com Ir à etapa.

Conferir se algo mudou no código

Para exigir que a etapa mude alguma coisa, sem depender da linguagem, há Conferir se algo mudou no código desde que esta etapa recebeu a instrução. O PrumoGrid fotografa a pasta quando entrega a instrução e de novo na conferência, e aprova só se houver arquivo novo, modificado ou apagado entre as duas. Mudanças que já estavam pendentes antes não contam. Essa opção não confere se a alteração está certa; use junto de um teste quando der.

Quando a verificação reprova

  1. Leia o erro em Ver saída e corrigir ou em Ver saída da verificação, no resultado.
  2. Decida o que está errado: o código, as dependências ou o próprio critério.
  3. Se o código precisa de correção, peça ao agente na mesma conversa ou devolva a etapa.
  4. Se o critério estava errado, use Trocar critério e depois Verificar de novo… para rodar o novo agora.

Trocar o comando, a pasta ou a condição de aprovação invalida a evidência anterior. O resultado antigo continua no histórico, mas não aprova o critério novo.

Dicas

  • Antes de configurar, rode o comando no terminal com o trabalho por fazer. Se ele passar, ele não verifica o trabalho, e o PrumoGrid avisa quando reconhece esse caso.
  • Prefira testes que exercitam a mudança pedida. Uma suíte inteira que demora dez minutos atrasa cada etapa.
  • O comando roda pelo Windows (cmd.exe), na pasta da etapa. Se o agente está no WSL e o comando depende do Linux, envolva-o: wsl -e sh -lc "npm test".
  • Use Verificação e sua aprovação quando quiser que o comando passe e, além disso, ler o resultado antes de liberar a próxima etapa.

Limites conhecidos

  • O código de saída prova só o que o comando testou. Um npm test que passa não diz nada sobre o que nenhum teste cobre.
  • Comando de verificação: até 512 caracteres. Tempo da verificação da etapa: de 5 a 900 segundos.
  • Até 16 verificações cadastradas no serviço.
  • O resultado guarda até 200 caracteres da saída do comando.
  • A verificação roda no serviço, fora do terminal do agente: a saída dela não aparece naquele terminal.
  • A detecção sugere um comando; ela não instala ferramentas nem garante que as dependências estejam prontas.