完善创作节点循环与等待态交互,并大幅打磨 Web 壳与会话运行时。

- 节点循环:配方开局直坐 DAG 第一步;验收后先问下一步意向,再确认开干并可钉编排参数;「按意见修改」只重跑当前节点。
- 询问分流:能力 opening 走说话面引导,可跳过追问按题干去重;追问与产物同轮挂载,避免拆成两段历史。
- 运行时:补强 revision 重跑、创作流程合并/进度指针、工具循环与 worker 执行;新增运行日志与 web:watch。
- 前端:统一等待态文案与底栏主按钮,完善询问卡/产物验收/呈现壳样式与交互。
- 同步世界模拟器模块提示、编排文档与相关测试。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-17 01:28:12 +08:00
co-authored by Cursor
parent 20938b04d7
commit ec474cb946
56 changed files with 7459 additions and 1371 deletions
+15 -2
View File
@@ -51,7 +51,13 @@ export type WaitingReason =
questions: QuestionItem[];
pageSize?: number;
} // worker 无产物时的阻塞提问
| { kind: "revision"; instruction?: string }; // 产物被拒或程序验收失败
| { kind: "revision"; instruction?: string } // 无意见打回时等补交;有意见则直接重跑
| {
/** 上一步已验收:先问「下一步想写什么」(可留空),再提案并确认开干 */
kind: "next_intent";
afterWorkerId?: string;
afterUnitId?: string;
};
/** 与 src/skills/types 对齐的最小 skill 索引字段,避免 runtime 强依赖 skills 模块 */
export type SkillIndexEntry = {
@@ -249,6 +255,11 @@ export type RuntimeEvent =
questions: QuestionItem[] | string[];
};
}
| {
/** 按意见重跑没写出新产物:退回上一版产物验收,重试追问改挂为可选 */
type: "worker_revision_produced_nothing";
payload: { artifactId: string; questions?: QuestionItem[] | string[] };
}
| {
/** 验收态下作答/跳过挂载追问:不离开 review_artifact */
type: "user_resolved_sidecar_questions";
@@ -316,7 +327,9 @@ export type PhaseEffect =
}
| { type: "resume_worker" }
| { type: "run_programmatic_review"; artifactId: string }
| { type: "emit_message"; message: string };
| { type: "emit_message"; message: string }
/** 根据流程与用户下一步意向,提案下一节点并进入确认 */
| { type: "propose_next_creation_step" };
/** applyEvent 的返回值:新会话快照 + 待处理副作用 + 可选错误 */
export type ApplyEventResult = {