Skip to content

AG-2.2 etapa 4 (lib lote): emissão de agentTask (D27) + FactSource evidencia-verificada (D30) - #171

Merged
danzeroum merged 4 commits into
mainfrom
claude/buildtovalue-platform-setup-decvzt
Jul 23, 2026
Merged

AG-2.2 etapa 4 (lib lote): emissão de agentTask (D27) + FactSource evidencia-verificada (D30)#171
danzeroum merged 4 commits into
mainfrom
claude/buildtovalue-platform-setup-decvzt

Conversation

@danzeroum

Copy link
Copy Markdown
Owner

Lote de release da lib para a AG-2.2 etapa 4 — UM changeset, UM release

Fecha o lado bpmn da fronteira agentTask (ADENDO-02 D27) + a proveniência verificada
(D30). Um único changeset (engine minor + agentflow minor). Depois do merge, o publish
é seu (dispara pela UI).

engine — agentTask como espera determinística (D27)

  • agentTask alcançado → emite CreateJob{ jobType: 'agent' } com payload { elementId, agentRef } (a ref declarada no BPMN; o host substitui pelo pin efetivo), token pausa,
    JobCompleted retoma. O interior do agente (walk LLM/tool/decision) roda no host,
    FORA do caminho determinístico — nunca entra no engine nem no replay. Só o RESULTADO
    (variáveis via JobCompleted, D13) volta.
  • agentTask sem agentWorkflowRef → incidente estrutural (o lint de deploy barra antes).
  • Fronteira D27 pelos DOIS lados:
    • fixture de replay agenttask-avanco-ao-redorstart → CreateJob(agent) → JobCompleted → completa, byte-idêntico;
    • lint aceite-7 — varre TODAS as fixtures e FALHA se alguma contiver marcador de
      interior de agente (nós llm/tool, promptRef/usesTool, agent_io, kinds agent:*,
      MASKED). Proibição verificada, não só declarada.

agentflow — FactSource += 'evidencia-verificada' (D30)

  • terceira rung de proveniência; o tipo carrega o rótulo (a trilha do host grava), mas
    simulate/simulateSquad NUNCA o emitem — mock não verifica realidade. Teste do
    aceite: todos os papéis declarados como evidência e ainda assim zero verificado.
  • nota: o elo decisao da cadeia não exigiu mudança na lib — TransitionRecord
    expõe type:'decision' + nodeId; a derivação fica no host (plataforma).

Verde

suíte bpmn completa: 2223 testes (engine 48, agentflow 147, +demais). typecheck limpo.

Sequência

Este PR (lib) → seu merge → seu publish. Depois: a subida do engine na plataforma é
PR própria pelo gate de conformidade/replay (D5 §9.3) — sem carona.

🤖 Generated with Claude Code

https://claude.ai/code/session_017Bo1QXr8PnJW7FEUhFVrJK


Generated by Claude Code

claude added 4 commits July 23, 2026 17:42
…ra D27

O agentTask vira ESPERA determinística (espelho do serviceTask): emite job
type:'agent' com payload {elementId, agentRef DECLARADO}, o token pausa, e
JobCompleted retoma o avanço. O INTERIOR do agente (walk LLM/tool) roda no
worker, FORA do caminho determinístico — nunca entra no engine nem no replay
(D27). Só o RESULTADO (variáveis via JobCompleted, D13) volta.

agentRef no payload é a ref declarada (pode ser flutuante); o HOST substitui
pelo pin efetivo resolvido no start — engine permanece puro (sem registry).

Testes: emissão CreateJob(agent) + avanço por JobCompleted + replay tipado
(alreadyClosed); agentTask sem agentWorkflowRef → incidente estrutural. 41 verdes.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017Bo1QXr8PnJW7FEUhFVrJK
…int aceite-7 (D27)

Fronteira D27 provada pelos DOIS lados:
- fixture 'agenttask-avanco-ao-redor': start → CreateJob(agent) → JobCompleted →
  completa, byte-idêntico (engineVersion normalizada, stateSchemaVersion rígido).
- lint aceite-7: varre TODAS as fixtures e falha se qualquer uma contiver
  marcador de INTERIOR de agente (nós llm/tool, promptRef/usesTool, agent_io,
  kinds agent:*, MASKED). Proibição VERIFICADA, não só declarada — o replay do
  engine nunca contém o não-determinístico.

48 testes verdes (engine project).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017Bo1QXr8PnJW7FEUhFVrJK
…ngeset do lote

agentflow: FactSource ganha a rung 'evidencia-verificada' — o tipo carrega o
rótulo (a trilha do host grava), mas simulate/simulateSquad NUNCA o emitem (mock
não verifica realidade; exclusivo do runtime real, D30). Teste do aceite: todos
os papéis declarados como evidência e mesmo assim zero 'evidencia-verificada'.

Nota: o elo 'decisao' da cadeia NÃO exige mudança na lib — TransitionRecord já
expõe type:'decision' + nodeId; a derivação é no host (slice 4).

changeset único do lote (engine minor + agentflow minor): emissão de agentTask +
FactSource verificada. Um release. 147 agentflow + 48 engine verdes.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017Bo1QXr8PnJW7FEUhFVrJK
…icada)

O gate check:docs-fresh pegou a mudança de API pública (FactSource ganhou a
rung 'evidencia-verificada'). Docs regeneradas com pnpm docs:api.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017Bo1QXr8PnJW7FEUhFVrJK
@danzeroum
danzeroum merged commit f2b1501 into main Jul 23, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants