conductor-oss / conductor-oss/python-sdk

LangGraph graphs with checkpointed/multi-turn state fail the spawn-safety probe

未关闭
#479 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
bug
主要语言
Python
星标
104
派生
42
平均合并
2 天 1 小时
30 天内合并 PR
3

描述

**Files:** `src/conductor/ai/agents/runtime/runtime.py` (`_register_passthrough_worker`), `src/conductor/ai/agents/runtime/_worker_entries.py` (`probe_spawn_safety`)

**Symptom:** `python examples/agents/langgraph/03_memory.py` fails in <1s, client-side, before any server call:
```
SpawnSafetyError: worker 'memory_agent' is not spawn-safe
AttributeError("Can't get local object 'CompiledStateGraph.attach_node.._get_updates'")
Define the callable at module level (importable by qualified name).
```

**Cause:** The passthrough worker pickles the compiled graph. LangGraph's `CompiledStateGraph` contains a local closure, so it can never be picklable. The error's advice is unfollowable — the object belongs to LangGraph, not to user code.

**Fix:** Either avoid pickling the compiled graph in the framework passthrough path, or detect this graph shape and fail with a message naming a supported alternative.

**Verify:** `python examples/agents/langgraph/03_memory.py` runs. Same for `13_multi_turn.py` and `27_persistent_memory.py`.

**Scope:** 3 of 46 langgraph examples. All three use checkpointed or multi-turn state; the other 43 pass.

贡献指南

这个仓库没有索引到贡献指南

调研方向

从 src/conductor/ai/agents/runtime/runtime.py 中的 _register_passthrough_worker 和 src/conductor/ai/agents/runtime/_worker_entries.py 中的 probe_spawn_safety 开始,然后使用 examples/agents/langgraph/03_memory.py 复现失败。将带 checkpoint 的示例和多轮示例与一个通过的 LangGraph 示例进行比较,并验证 03_memory.py、13_multi_turn.py 和 27_persistent_memory.py 能够成功运行且不会出现 spawn-safety 失败。

由索引模型根据 Issue 内容生成。

评估

技术栈
python
领域
backend, distributed-systems
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
冷清
描述清晰度
描述清楚
新手友好度
58/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。