完善创作节点循环与等待态交互,并大幅打磨 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
parent 20938b04d7
commit ec474cb946
56 changed files with 7460 additions and 1372 deletions

View File

@@ -4,7 +4,7 @@
| 产物/技能 | 美化程度 | 渲染入口 |
|-----------|----------|----------|
| 美学纲领与交互范式 | **专用 mosaic**(设定逻辑 / 交互范式 / 美学纲领 | `renderSpecialtyBodyHtml` → aesthetics |
| 美学纲领与交互范式 | **左右分栏**:左契约(美学纲领+交互范式/ 右诊断(设定逻辑 | `renderSpecialtyBodyHtml` → aesthetics |
| 实现机制 | **专用卡**(支撑点) | `renderMechanismBodyHtml` |
| 舞台骨架 | **专用卡** | `renderWorldBlueprintBodyHtml` |
| 生成规则 | **专用卡** | `renderGenerationRulesBodyHtml` |

View File

@@ -356,7 +356,8 @@ task 必须写:禁止重复同一开场;在首答上补洞。
## 4.8 追问(`probe`)通用要求
- 一轮 askUser **12** 点。
- 一轮 **12** 点,只写进产物 `追问`(建议选项 + 示例)
- 程序会把 `追问` 挂到询问卡;**禁止**同一问再抄一份顶层 `askUser``askUser` 留 `null`)。
- 优先:可直接采用或微调的完整句选项 / 短场景。
- 能推断则先写入再复述;只问影响本步核心且不能瞎填的点。
- 依赖产物已钉死的内容禁止重问。
@@ -397,7 +398,7 @@ task 必须写:禁止重复同一开场;在首答上补洞。
|----|------|
| `正文` | **产物主体**。技能自定内部结构(如美学步=设定逻辑 + 交互范式 + 美学纲领);须含「详细各个方面」。禁止整份只交散文。 |
| `自评` | **自评评分**。`维度[]` 名目按技能定(美学步常用:交互范式 / 美学纲领 / 整体协调);**`分数` 为 010 十分制**(可一位小数;高质约 810可含 `薄弱点`。禁止用 0100 百分数。 |
| `追问` | **示例 + 建议选项**。给用户的下一问;`题目` 可空数组。与程序 askUser 可并存,但产物里要留结构化题面。 |
| `追问` | **示例 + 建议选项**。给用户的下一问(程序挂询问卡)`题目` 可空数组。禁止同一问再写入顶层 `askUser`。 |
| 规则 | 说明 |
|------|------|

View File

@@ -38,10 +38,20 @@
| `schema` / `技能` / `brief` / `mount` / `稳变` | 索引与挂载;不写 `order` |
| `正文` | **产物主体**(技能自定内部维度,但必须有「各个方面」) |
| `自评` | **自评评分**`维度[]` + 可选薄弱点;维度名按技能) |
| `追问` | **导语 + 题目**(建议选项 / 示例);可无题则 `题目: []` |
| `追问` | **导语 + 题目**(建议选项 / 示例);可无题则 `题目: []`。程序挂询问卡;不要再抄一份 `askUser` |
| `开放问题` | 未结构化的残项(可选) |
美学步正文:`设定逻辑` + `交互范式` + `美学纲领`(见 `aesthetics-interaction`)。
美学步正文:`设定逻辑` + `交互范式` + `美学纲领`(见 `aesthetics-interaction`)。
**验收卡排版约定(美学步已落地,其它节点逐步对齐)**
| 栏 | 放什么 | 美学步对应 |
|----|--------|------------|
| **左 · 产物** | 最终希望插入游玩上下文的契约正文 | `美学纲领``交互范式` |
| **右 · 评估** | 诊断、完备度、待探、区域化等给人验收用的 | `设定逻辑`(参与/内容维度上的结论·依据·完备度) |
外壳另有 `自评`(顶栏分数 pill`追问`(询问卡)。
**存盘**:三块都在同一 `正文` 里。**注入**:默认 `full` 时整份正文都会进模型——若日后只要左栏进游玩,再改投影,不靠藏 UI。
实现机制正文:`依据的核心体验` + `支撑点[]` + `支撑点关系[]` + `覆盖检验`(见 `mechanism`)。
舞台骨架正文:尺度 / 基底与变造 / **社会结构** / **世界状况** / 关键舞台区 / 未展开范围(见 `world-blueprint`)。
生成规则正文:必要性判断 + `rules[]`(生成与描写 + **单层**产物格式 + 可选多池绑顶层字段);自评=必要性/属性妥当/格式准确。

View File

@@ -10,14 +10,25 @@
```text
固定壳(本仓库预置,七种)
创作期:选一个 shell_id
→ 只改允许的微调轴字段、显示名、开关、tone_chrome…
按「要同时看见什么」选 shell_id(不是按好看)
→ 只改允许的微调轴
→ 禁止改分区骨架、禁止发明第八种布局
游玩期:往壳区域灌数present.v1 / 投影 / settlement
游玩期:往壳区域灌数;正文随 600~3000 字撑高滚动
```
「正文组成」= **壳适配单**,不是 UI 创意稿。
用户看见的差异应来自**同壳不同绑定**,而不是每局一套新布局。
选壳依据(同时可见关系):
| 同时要看见 | 壳 |
|------------|-----|
| 只要正文 | `prose` |
| 正文 + 扫状态 | `chat_monitor` |
| 大正文 + 弱状态 | `spotlight` |
| 场面 + 交互物 + 行动 | `turn_panel` |
| 正文 ‖ 线索对照 | `split_board` |
| 局面 + 选项 | `choice_dock` |
| 章正文 + 进度 | `chapter_reader` |
预览页 `/shells.html`:主工作面是壳画布;侧栏只换壳;长度/语气在顶栏。
## 2. 信息层级与长文容量

View File

@@ -87,7 +87,7 @@
| `设计.worker集` | **运行规格** | 剧本(旧,规格部分) | 可进游玩的声明截面。 |
| Blackboard | **黑板** | 上下文板 | — |
| Artifact | **产物** | — | 待验收输出。 |
| Accept / Review | **验收** / **接受** | 人工审批 | 按钮用「接受」;阶段说明用「验收」。 |
| Accept / Review | **验收** / **接受** | 人工审批 | 技能产物按钮用「接受」;工作流计划用「确认编排」;开场用「选定此开场」。阶段说明:技能步「验收」,编排「核对」。 |
| Intake | **需求描述** | 启动填空 | — |
| Burst | **本轮调度** | — | 少对用户说 burst。 |
| Questions card | **询问卡** | Questions | 详见 `ui-design.md` §8。 |
@@ -177,13 +177,15 @@
## 7. 等待态 / 焦点(对用户)
| `waitingReason.kind` | 状态摘要(短) | 焦点动作 |
| `waitingReason.kind` | 状态摘要(短) | 焦点动作 / 底栏主按钮 |
|----------------------|----------------|----------|
| `intake` | 描述需求 | 描述创作需求 |
| `input` | 补充说明 | 补充说明 / 回答追问 |
| `worker_questions` | 回答提问 | 回答 · {中文执行单元名} |
| `approve_step` | 确认执行 | 建议调用 {中文名} |
| `review_artifact` | 验收产物 | 验收产物 |
| `intake` | 描述需求 | 发送 |
| `input` | 补充说明 | 发送 / 补充并发送 |
| `worker_questions` | 答题 | 补充并发送 |
| `approve_step` | 确认 | 同意并开始 |
| `review_artifact` | 视产物(勿一律「验收」) | **流程编排** → 确认编排;技能步 → 接受;开场 → 选定此开场。旁挂「按意见改编排 / 按意见修改」 |
| `next_intent` | 说话 | 继续(可留空) |
| `revision` | 说话 | 按意见修改 |
---

View File

@@ -28,7 +28,7 @@
| 块 id | 必填 | 用途 |
|-------|------|------|
| `meta` | 建议 | YAMLname / id / artifact / declaration / when / when_not / boundary |
| `opening` | 可选 | **默认问题**正文;程序发给用户,不经 LLM |
| `opening` | 可选 | **默认问题**正文。开局:配方 `steps` 已预置进「设计.创作流程」,用户首句即坐在 DAG 第一步;若「用户.需求」已有内容,程序**跳过**再抛 opening直接进本步 LLM |
| `task` | 是 | 本步任务与验收边界 |
| `principles` | 建议 | 原则 |
| `probe` | 建议 | 追问策略 |
@@ -104,13 +104,24 @@ declaration: …
配方**不要**重复罗列各能力调用条件;那是能力 meta 的职责。旧字段 `hint` 仍可读作兜底。
### 默认问题节奏(通用)
### 节点循环(通用)
```text
程序发 opening → 用户首答 → LLMopening + 首答 + 切割后的方法块 + 依赖)
开局选配方 → 坐到配方预置的第一个节点
→ 节点 opening → 用户首批输入
→ 节点要求 + 用户输入 → 产物 + 追问
→ 用户选选项 / 写意见 →「按意见修改」
(产物 + 追问 + 选项 + 意见 + 节点要求一并重跑)→ 新产物
→ 循环直到「接受」
→「下一步想写什么」(可留空,交给工作流计划 DAG
→ 展示下一节点并确认开干(可在此钉编排参数,如生成规则的 target
→ 下一节点 opening / design-step …
直到创作收口
```
有编排参数的能力:先由 design-flow askUser 钉 params → 用户认可 DAG → design-step 注入【本步参数】执行;勿把「生成什么」推迟到执行期
「按意见修改」只重跑当前节点,不得跳到「下一步想写什么」。底栏空且未选追问时 Enter接受已选追问时 Enter按意见修改。点按钮仍只做按钮自己的事
有编排参数的能力:可在确认开干时钉齐 params勿把「生成什么」拖到执行中途才问。
---