Files
api/services/batch-agent
Roberto Musso ccba54ac24 fix(tracing): use Langfuse compile_prompt with {{variable}} syntax
- tracing.py: add compile_prompt() that uses Langfuse .compile(**vars)
  for {{variable}} substitution, falls back to Python .format() for
  hardcoded {variable} templates
- agent_runner.py: replace _get_system_prompt().format() with
  tracing.compile_prompt() for batch_file_classifier, batch_processing,
  batch_cloud_processing prompts
- journey.py: replace get_prompt + .format() with compile_prompt()
  for journey_system prompt
- chat tracing.py: add compile_prompt() for parity (chat prompts
  currently have no variables, but ready for future use)
- Remove unused _get_system_prompt helper
2026-03-23 22:39:27 +01:00
..

Batch Agent Service

Owns: agent_runner, journey builder, filesystem_agent, integrations (Gmail, MS Graph).

Tables owned

  • local_agent_configs
  • cloud_agent_configs
  • agent_run_logs

Endpoints

  • GET /agents/catalog
  • POST /agents/can-create
  • POST /agents/trigger
  • GET /agents/{id}/history

Redis channels

  • Subscribe: batch:request:{user_id}
  • Publish: ws:out:{user_id} (journey replies + tool calls)
  • BRPOP: tool:result:{call_id} (30s timeout)
  • SET+EX: journey:{user_id} (session state, TTL 1800s)

TODO

  • Integrate Langfuse tracing (reuse services/chat/app/tracing.py pattern — trace_span(), get_langfuse_callback(), prompt management). Each batch agent run should create a trace with input/output, link prompts, and pass the LangChain CallbackHandler to LLM calls.