Agora junta tudo numa execução de verdade: pasta, goal nível 3, testes congelados, o modo de rodar, vigiar sem interromper, saber quando parar e fechar com medição. O piloto do kit, de 01/10/2026, serve de referência passo a passo. No fim, o mapa do curso e o seu plano com datas.
Objetivo: conduzir uma execução real do goal.md ao fechamento medido, com portões humanos e regras de parada, e sair com o plano datado.
01 · Seis etapas, de ponta a ponta
Cada etapa usa uma aula do curso. Clique para ver o que fazer.
Clique em cada bloco do diagrama para ver o que ele faz.
A maior parte do trabalho está nas etapas 1 e 2. No piloto, com elas bem feitas, a execução terminou no primeiro ciclo.
02 · O piloto do kit, minuto a minuto (01/10/2026)
longrun/2026-10-01-medir-sessao/: construir o medir-sessao.py da aula 7 com um loop headless.
1. Antes
Goal com especificação completa do formato de saída, 12 testes rápidos e 2 com sessões reais de até 1,8 GB, congelados (hash 3ae1ba7975508cba).
loop.env: 6 ciclos de 20 min, 8G de memória, estagnação 3; protegidos tests/, pytest.ini e tools/medicao/.
2. 14:19 → 14:22
14:19:41 início com 0 passed. O agente saiu com rc=0 em 178 s, sem tocar nos protegidos.
14:22:39 rápido = 12 passed; checkpoint commitado. 14:22:48 CONCLUÍDO: teste final 14 passed.
loop.log real2026-10-01 14:22:48 CONCLUÍDO no ciclo 1: teste final passou (14 passed)
3. 14:30
Verificação independente: hash dos testes inalterado, sem valores fixos no código, 14 passed reproduzido e uma sessão nunca vista (de agosto) conferida contra o script antigo.
Medição: 332.791 de entrada, 304.000 de cache lido, 4.296 de saída (cache 91,3%), 0 compactações.
4. Lições
Com testes congelados e especificação precisa, 1 ciclo. O teste que decide é do loop, não do agente.
Hook de compactação só fala com longrun ativo: execução já concluída sem aviso é o comportamento certo, não falha.
03 · Ensaio: o agente quer continuar
Uma execução no ciclo 4. Você decide se ela segue. As regras de parada são as do kit.
Agente da execuçãoloop headless, ciclo 4
Escolha a sua resposta. O comentário aparece logo depois e a conversa segue conforme a escolha.
04 · O prompt de ciclo e o fechamento
O prompt.md é o que o loop manda ao agente em cada ciclo. Generalizado do piloto.
longrun/[pasta]/prompt.md (modo headless)
Você está num ciclo de uma execução longa no repo <caminho do projeto>.
RESULTADO: <o resultado do goal.md em uma frase>.
ANTES DE AGIR: leia goal.md → state.md → plan.md → últimas linhas de progress.md e failures.md (todos em longrun/<pasta>/).
NESTE CICLO: escolha a próxima ação útil, implemente, rode <teste rápido>. Se os rápidos passarem, rode <teste completo>.
AO TERMINAR O CICLO (obrigatório):
- reescreva state.md (Funciona / Falta / Como retomar) e plan.md (próximos 3 passos);
- acrescente 1 linha em progress.md: data-hora, o que mudou, resultado do teste (N passed / N failed);
- se algo deu errado, 1 linha em failures.md: erro → tentativa → resultado;
- decisões de design em decisions.md.
- Quando o teste completo passar inteiro, escreva "concluído" na primeira linha de "## Funciona" do state.md.
RESTRIÇÕES: não altere <protegidos>. Nenhuma API, nenhuma rede. Não faça commit (o loop externo faz).
Terminal · fechar com verificação independente
cd ~/projetos/<seu-projeto>
head -5 longrun/<pasta>/state.md # diz concluído?
<teste completo> # rode você, não leia o log
git diff --exit-code <commit-base> -- tests/ pytest.ini; echo "protegidos: $?"
git diff --stat <commit-base> # só o que o goal permitia?
grep -rn "<valor esperado de um teste>" <pasta do código> # valor fixo no código?
python3 ~/projetos/execucao-longa/tools/medir-sessao.py <sessão.jsonl>
05 · Prática final
Uma execução sua, de verdade. Comece pequena: 1 a 3 horas.
E19 · Uma execução do começo ao fim
1–3 h
Na pasta das aulas 1 e 2, congele os testes, escolha o modo (/goal ou loop-longrun.sh ensaiado com agente falso) e deixe rodar com o hook e o vigia ligados. Intervenha só nas regras de parada.
Pronto quando: a primeira linha de "## Funciona" do state.md diz concluído e o loop.log (no headless) termina em CONCLUÍDO no ciclo N, ou a execução parou por uma regra do kit com o motivo em failures.md.
E20 · Fechar e medir
30 min
Feche com o bloco de verificação independente e meça a sessão. Escreva a linha final no progress.md e, se houve falha, a menor correção no FALHAS.md do projeto.
Pronto quando: o teste completo, rodado por você, passa; git diff --exit-code [commit-base] -- tests/ → protegidos: 0; o progress.md tem a linha final com tokens e compactações do medir-sessao.py.
06 · O mapa do curso
Quatro entregas, na ordem. Clique num exercício para ver o "pronto quando".
Aula 806 · O mapa do cursoQuatro entregas, na ordem. Clique num exercício para ver o "pronto quando".
Dia 1Pasta e goal
aulas 1 e 2
2 exercícios
goal.md nível 3 que falha antes do trabalho e resiste à trapaça.
Verificação independente: o teste rodado por você, git diff dos protegidos, busca por valor fixo e uma entrada nunca vista. Depois, medir e registrar.
Não é essa
Verificação independente: o teste rodado por você, git diff dos protegidos, busca por valor fixo e uma entrada nunca vista. Depois, medir e registrar.Rever: Seis etapas, de ponta a ponta
Pergunta 3 de 5
Qual destes NÃO é motivo do kit para parar e chamar o humano?
Correto
Subir o número de testes passando é avanço mensurável: o loop segue. Os outros três estão na lista de parada.