[RFC] v2 架构评审 — 从导演模式到集市模式 #40

Open
opened 2026-06-14 09:56:10 +08:00 by orion · 0 comments
Owner

背景

v2 架构(docs/v2_architecture.md)提出将编排模式从"导演模式"(Pipeline 调度 Agent)
转变为"集市模式"(Actor 自主认领任务协作)。v2 设计文档已在 v2-architecture 分支上。

待评审的关键决策点

1. Actor 的 _run() 循环归谁管?

  • 方案 A:Actor 自己维护 _run() 循环,内部监听 Bus 事件
  • 方案 B:Bazaar 维护 Actor 循环,push 任务给 Actor

我的倾向:方案 A,Actor 自治更彻底,但 Actor 需要持有 Bus 引用。

2. 竞争认领策略

  • 方案 A:先到先得(CAS 乐观锁)
  • 方案 B:评分制(Matcher 打分最高的获得)
  • 方案 C:竞价制(Actor 出置信度分)

我的倾向:方案 A,最简单,Actor 之间有"主动"激励。

3. think() 的输入输出格式

  • 输入:(task_description: str, context: dict | None)
  • 输出:{"content": str, "messages": list[dict]}

是否需要支持 streaming(SSE)?Phase 1 先不做。

4. Bazaar 的职责边界

  • Bazaar 是否做任务分解?(当前设计:不做,Actor 自主发布子任务)
  • Bazaar 是否维护依赖图?(当前设计:TaskBoard 记录 depends_on,不自动调度)

5. 确定性保障

  • 是否需要在 v2 中引入"确定性模式"(Matcher 按固定优先级分配)?
  • 还是将确定性场景全部交给 v1 Pipeline 兜底?

我的倾向:后者,v2 定位就是不确定性协作,不要为了兼容确定性而引入复杂开关。

6. 桥接粒度

  • AgentWrapper:v1 Agent 的 start_event/done_state → 自动提取为 Capability
  • PipelineBridge:Bazaar 任务 → Pipeline 执行

是否需要第三种:Cell Bridge(桥接到 bixiu 的 Cell/Tissue)?

评审方式

逐条回复此 issue 即可。有争议的决策点单独开子 issue 讨论。

相关文档

  • 完整设计:docs/v2_architecture.md
## 背景 v2 架构(`docs/v2_architecture.md`)提出将编排模式从"导演模式"(Pipeline 调度 Agent) 转变为"集市模式"(Actor 自主认领任务协作)。v2 设计文档已在 `v2-architecture` 分支上。 ## 待评审的关键决策点 ### 1. Actor 的 `_run()` 循环归谁管? - **方案 A**:Actor 自己维护 `_run()` 循环,内部监听 Bus 事件 - **方案 B**:Bazaar 维护 Actor 循环,push 任务给 Actor 我的倾向:**方案 A**,Actor 自治更彻底,但 Actor 需要持有 Bus 引用。 ### 2. 竞争认领策略 - **方案 A**:先到先得(CAS 乐观锁) - **方案 B**:评分制(Matcher 打分最高的获得) - **方案 C**:竞价制(Actor 出置信度分) 我的倾向:**方案 A**,最简单,Actor 之间有"主动"激励。 ### 3. `think()` 的输入输出格式 - 输入:`(task_description: str, context: dict | None)` - 输出:`{"content": str, "messages": list[dict]}` 是否需要支持 streaming(SSE)?Phase 1 先不做。 ### 4. Bazaar 的职责边界 - Bazaar 是否做任务分解?(当前设计:不做,Actor 自主发布子任务) - Bazaar 是否维护依赖图?(当前设计:TaskBoard 记录 `depends_on`,不自动调度) ### 5. 确定性保障 - 是否需要在 v2 中引入"确定性模式"(Matcher 按固定优先级分配)? - 还是将确定性场景全部交给 v1 Pipeline 兜底? 我的倾向:**后者**,v2 定位就是不确定性协作,不要为了兼容确定性而引入复杂开关。 ### 6. 桥接粒度 - AgentWrapper:v1 Agent 的 start_event/done_state → 自动提取为 Capability - PipelineBridge:Bazaar 任务 → Pipeline 执行 是否需要第三种:**Cell Bridge**(桥接到 bixiu 的 Cell/Tissue)? ## 评审方式 逐条回复此 issue 即可。有争议的决策点单独开子 issue 讨论。 ## 相关文档 - 完整设计:`docs/v2_architecture.md`
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
bixiu/bixiweave#40
No description provided.