feat: record suspend event as StepNode in CAS chain #589

Closed
opened 2026-06-02 03:58:45 +00:00 by xiaomo · 0 comments
Owner

Parent

RFC #587

What

Thread 挂起时写入一个 StepNode 到 CAS chain,记录 suspend 事件。

Design

复用现有 StepNode 结构:

  • role: 产生 suspend 的 role
  • $status: 原始 status(如 insufficient_info
  • output: agent 的输出(包含 reason 等 frontmatter 字段)
  • detail: 正常记录 agent 执行详情

Thread metadata 额外记录:

  • suspendedRole: 挂起时的 role(resume 要用)
  • suspendMessage: 渲染后的 prompt(给用户的消息)

Changes

  • cmdThreadStep: 在 moderator 返回 suspend action 后,正常写入 step,然后设置 thread suspended 态
  • threads.yaml: suspended thread 条目增加 suspendedRole + suspendMessage 字段

Test

  • suspend 后 CAS chain 包含 suspend step
  • threads.yaml 记录 suspendedRole 和 suspendMessage
  • uwf thread show 显示 suspended 状态和消息

Ref

RFC #587, depends on #588

## Parent RFC #587 ## What Thread 挂起时写入一个 StepNode 到 CAS chain,记录 suspend 事件。 ## Design 复用现有 StepNode 结构: - `role`: 产生 suspend 的 role - `$status`: 原始 status(如 `insufficient_info`) - `output`: agent 的输出(包含 reason 等 frontmatter 字段) - `detail`: 正常记录 agent 执行详情 Thread metadata 额外记录: - `suspendedRole`: 挂起时的 role(resume 要用) - `suspendMessage`: 渲染后的 prompt(给用户的消息) ## Changes - `cmdThreadStep`: 在 moderator 返回 suspend action 后,正常写入 step,然后设置 thread suspended 态 - `threads.yaml`: suspended thread 条目增加 `suspendedRole` + `suspendMessage` 字段 ## Test - suspend 后 CAS chain 包含 suspend step - threads.yaml 记录 suspendedRole 和 suspendMessage - `uwf thread show` 显示 suspended 状态和消息 ## Ref RFC #587, depends on #588
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: uncaged/workflow#589