#772 Live activity worker emits completion event without tenant_id (durable-leaf child runs hang for non-default tenants)
Description
Edithwe activity-worker uses enterprise/services/activity_worker.py. Its _complete_activity/_fail_activity call jumper_client.emit_event WITHOUT tenant_id, so the activity-completion event is emitted under 'default' (jumper.tenant_id unset). auto-activity tasks (incl. durable agent_leaf child runs) await under their OWN tenant (await_event resolves tenant-scoped, H-7). MCP campaigns run under the caller's tenant (not default) -> the agent_leaf child run never resumes (wake-but-not-resolve): zombie 'running' child runs + stale-activity re-runs (wasted LLM cost). The engine package engine/services/activity_worker/execution.py already passes tenant_id; the live enterprise worker diverged and missed it. Fix: thread tenant_id into _complete_activity/_fail_activity emit_event. Follow-up: converge the two activity-worker impls.
Comments
Loading comments...
Context
Loading context...
Audit History
View AllLoading audit history...