Revalidação 2 · Jornada AGENTE · o agente cria, valida, publica e roda um workflow pelo chat

Árvore wf-1024-integracao no HEAD 99866481 (contém o conserto 8a4db473 do setup_privado). BE 4120 + worker integ REINICIADOS no HEAD às 21:13Z · FE vite 5185 · navegador remoto em https://sb-motor-p8917 (hostfix → 5185). Modelo proxy-managed via LB /fiscaliza/motor. 2026-10-24.
1º run concluiusucceeded na tentativa 1/3 · zero turno de correção · zero setup_privado
10 + 20 = 30soma certa na conversa (output {"somar":{"resultado":30}})
2 turnos1 do usuário (37,8 s) + 1 aviso de fim de run como TURNO NOVO (4,6 s)
51 sdo envio ao resumo final · antes: 2m41s e 1m44s
US$ 0,44run US$ 0,0836 + chat ~US$ 0,36 (estimado pelos tokens)

Linha do tempo (0 s = envio da mensagem, 21:16:16Z)

turno 1 · usuário · 11 steps · 10 tools · 37,8 s
run fc7227bc · 10,4 s
aviso
0 s
35,9 s run na fila
50,9 s
O run entra na fila em 35,9 s (ainda dentro do turno 1), começa 30 ms depois e termina em 46,3 s; o aviso entra na caixa 23 ms depois do run.succeeded e vira o turno 2 (trigger subagent_notification), que fecha em 50,9 s.

Antes x agora

jornada anterior · t1jornada anterior · t2revalidação 2 (agora)
1º runfailed · setup_privadofailed · setup_privadosucceeded (1/3)
runs até a soma3 (failed, budget_exceeded, succeeded)2 (failed, succeeded)1
turnos432
envio → resumo2m41s1m44s51 s
soma no chat10+25=3517+25=4210+20=30
aviso como turno novo3/32/21/1

Turno a turno (thread 4c8b99f1)

#turnotriggero que aconteceu
13bf4af17
21:16:16 → 21:16:54
user workflow_create soma-dois-numeros → recusado (slug já existe, da jornada anterior; a tool sugere outro nome) · workflow_create soma-teste · workflow_draft (input {a:number,b:number}, budget US$ 1 / 5 passos / 60 s) · workflow_add_step transform ${input.a} + ${input.b} · workflow_validate → valid:false (expressao_invalida: "+" inesperado) · workflow_set_step (o MESMO transform de novo) · workflow_set_step agent com output schema {resultado:number} · workflow_validate → valid:true · workflow_publish v1 · workflow_run {a:10,b:20} → queued. Texto final: "Você receberá uma notificação automática aqui quando o run terminar".
25bccc3a2
21:17:02 → 21:17:07
subagent_notificationaviso "status do run: succeeded · duração 10s · custo US$ 0.0836" com o resultado embrulhado como dado não confiável → sem tools, o agente resume: "A soma de 10 + 20 = 30 foi retornada corretamente".

O run (fc7227bc)

workflowsoma-teste v1 · trigger mcp · 1 passo somar (agent)
setup congeladorun.setupId = null · __porSetup = [__padrao] → 6cb76de9 (padrao, visibility org) · EXATAMENTE o caminho que antes caía em setup_privado
eventosrun.queued → run.started (setups: padrao v1) → step.spawned → step.ready → step.started → step.succeeded (US$ 0,083565) → run.succeeded
resultado{"somar":{"resultado":30}} · 27.180 tokens in / 135 out · 10,4 s

Achados por risco

OKO conserto do setup_privado vale na jornada real. Passo agent SEM setupId numa org COM setup padrão roda de primeira; o agente não precisou de turno de correção nem de setup_list.
MÉDIO · ambienteBE 4120 e worker integ rodavam código velho. Subiram às 17:36Z, antes do conserto (20:10Z), e o tsx não recarrega. Reiniciei os dois no HEAD 99866481 às 21:13Z (mesmo run.sh, mesmas portas); sem isso a revalidação testaria a árvore antiga.
MÉDIO · ambienteA OrgConfig da org default do motor_int estava contaminada de novo (v8, 20:52:20Z: baseURL https://proxy-default.exemplo.com/v1, chave falsa, MCP falso "dados": o padrão do cross-tenant.test.ts, que não restaura no afterAll). Com ela o chat chamaria um proxy falso. Restaurei a config P6 (v9, md5 4b35d73b) às 21:12:45Z, com backup 600 fora do /workspace. Há suítes vitest de outro agente rodando agora contra o motor_int: quem validar IA depois tem que conferir a config antes.
BAIXO · formatoO transform continua sem aritmética. O agente tentou ${input.a} + ${input.b}, o validate recusou o "+", ele repetiu o mesmo transform uma vez (passo perdido) e trocou por um passo agent: cada soma custa US$ 0,08 e 10 s de IA.
BAIXO · UXCartão de tool fica verde quando a tool recusa. workflow_create "Já existe…" e workflow_validate "valid: false" aparecem com check verde: a tool devolve texto, não erro.
BAIXO · UXTela do run terminal: clicar no passo não abre o INSPETOR (continua igual à jornada anterior; não investigado, é da tela de run).
INFOCarga em paralelo durante a jornada: o arnês e2e de outro agente disparou 28 runs e2e-* na mesma org/BE/worker entre 21:16:37 e 21:19:54Z. Não interferiu: o run da jornada ficou 30 ms na fila e rodou de primeira.
INFOO brief dizia HEAD d5e6adb0; o HEAD real é 99866481 (7 commits a mais, inclui 8a4db473). O /ws pela URL pública ainda precisa do hostfix (8917). O agente escolheu os números sozinho (10 e 20), sem perguntar.

Prints

playground vazio
00 · /playground antes do envio (Setup padrão)
turno 1 andando
01 · turno 1 ao vivo pelo /ws: create, draft, add_step, validate
tools do turno 1
02 · as tools do turno 1 (note os checks verdes nos resultados recusados)
aviso e soma
03 · fim do turno 1, cartão do aviso "soma-teste · concluído · 10s" e o turno 2 com 10 + 20 = 30
depois do reload
04 · depois de recarregar a conversa: o aviso aberto (run fc7227bc, resultado inteiro) e o resumo persistidos
tela do run
05 · tela do run: soma-teste concluído, 1 de 1 passos, US$ 0,084, 10 s

Evidência bruta

Em /workspace/.sbcache/wf-1024/reval-jornada-agente/: eventos.jsonl (48 eventos da thread), apuracao.txt (turnos, run, passos, setup congelado, caixa), custo-chat.txt, be.log/worker.log do BE/worker reiniciados, head.txt, t-send.txt.