oh-my-muse/docs/mvp/1.0.0-交付计划.md
lili 5acb2503b5 feat(studio): 补齐深面入口
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-28 08:26:47 -07:00

18 KiB
Raw Blame History

Muse 1.0.0 交付计划与现状对账

版本v1.02026-06-26 首版) 目标读者:人类决策者(基准/优先级/发布决策)+ 执行 agent按 Epic 细分执行) 边界:本文是 1.0.0 交付的单一事实源——汇总 8 域"设计→实现→验证"对账、定义 1.0.0 范围与执行计划。它不重复定义产品/架构(那是 design-docs SSOT只承载"做到哪、还差什么、按什么顺序补、什么算真做完"。 由来2026-06-26 用 codex 多实例 + claude 深盘对 8 域做的交付盘点(原始对账存盘点产物,关键结论已固化于本文与各模块 .agent)。


1. 总体结论与基准

Muse 不是"开发混乱",也不是"实现与设计各跑各的"。 设计 SSOT 成熟33 分册)、后端骨架扎实、有真 PG/RAGFlow IT。真问题是实现滞后于设计 + 验证假绿掩盖了大量"装了不能用"的断层,导致完成度被系统性高估、反复踩坑。

  • "实现与设计脱节"有实锤但属局部(横切 Schema、双轨 block、API 契约 header主体是实现追赶设计
  • "开发太长导致混乱"不成立;真相是状态漂移——进度散在总账/memory/临时文档/git log/各模块 .agent,缺统一对账。本文即补上这个对账。

整体完成度(按"可闭环交付"严判):约 55-65%。 后端读侧/骨架强,前端薄、写侧/消费侧/验证侧弱。

交付基准(人类已定):线 A —— 1.0.0 最小可用子集。 先把一条核心创作闭环做到真可上线pay/report/bpm/mp 等后置。


2. 八域完成度对账矩阵

完成度* 最强(已真闭环) 最痛(阻断点) 盘点方
market ~86% 前台主干真IT+e2e双证、KB物化D0-fork、agent 物化、KB 召回触达RC 后补市场治理/撤权申诉独立入口 生产者 UI/副本回收/下架撤权细补偿后置 claude深盘
content ~88% 写作/自动保存/AI采纳真PG+MSW-off e2eE1 已补采纳归档、改后合并入口、IndexedDB 草稿键、旧知识草稿失效、工作台入口、版本历史只读 diff、导出范围/凭证下载 UIRC 后完整导入向导已补 New-API LLM 全书解析、docx/epub 抽取、real-PG V34+ 与浏览器 MSW-off 全链证据;导出下载已补真实 FileService 浏览器 e2e EditorPage 仍 demo 壳;版本恢复/高级回滚后置 codex
knowledge ~78% KB物化、enable/disable真PGE3 已补 Studio 检索/绑定/上传与 Source 消费真 e2e 图谱/发布深面仍薄;召回触达已物化 KB 归 E4 codex
ai ~80% 生成/SSE/采纳/拒绝/Agent 生命周期/槽位 bind-unbind 真 e2eRC 后补 Quality eval 本地执行器 真实评估集管理/LLM judge、grant/runtime 深层隔离后置 codex
admin ~75% 市场治理真IT、system 管理员治理与 AI 配置写链路已接 Admin Playwright 未跑;部分 AI 命令仍 preview-only claude深盘
member ~70% account 读侧真IT、AI 用量/配额写侧闭环、RC 后补安全事件处理动作入口 pay 禁用;真实改密/2FA/session service、偏好通知后置 claude深盘
meta ~82% planning 垂直切片、字段值校验、新增 schema 草稿与生命周期真 PG usage contributor 全真实建模与可视化 schema 编辑器后置 codex
横切 ~40% infra文件真字节往返 统一Schema漂移、report/bpm/mp禁用、传播worker未落 codex

*完成度为相对判断(供排序与定基准),非精确度量。


3. 五类系统性病灶(根因——收敛抓手)

问题虽多,收敛为 5 类根因,逐类清比逐 bug 打高效:

  1. "能配置/能展示"≠"可闭环"(最普遍)。三类断层:①前端壳+后端缺(权限治理三件套)②前端壳+后端齐的 wiring gapAI配置9按钮占位、reject仅清本地③后端齐+前端零的孤儿端点content治理、三类信息面板

  2. 验证假绿系统化(最危险,反复踩坑之源):

    • 🔴 整个 P1r IT 套件不在 CI 跑CI=mvn package 无 failsafe、本分支从未真跑靠 2026-06 人工批准记录背书。
    • 多个 P1r*RealApiGateTest 是**"状态台账门禁"非真跑**member/meta/admin
    • live IT 默认 opt-in 跳过ai/knowledge/market KB fork
    • 大量 mock-green 单测冒充验证。
    • → "51 真 IT"含金量需大幅打折
  3. 读写不对称:读/展示完整、写/消费/扣减空——用量无写源、配额 Guard 孤儿、部分 Source 传播 worker 未落E4 已补 market KB 召回消费者)。

  4. 设计漂移(真脱节,局部):横切统一 Source/Auth/Audit/Outbox Schema 未落地用分域替代表、content 双轨 block 结构化字段成孤儿、API 契约 header 语义与实现相反。

  5. 模块禁用report/bpm/mp/pay 在 pom 注释禁用(部分设计后置、部分待启用)。


4. 1.0.0 范围(线 A

核心闭环(必须真可上线):注册登录 → 建作品 → 写作/自动保存 → AI 生成 → 采纳(归档)→ 知识库(建/绑/检索)→ 市场(发现/安装/用)。

1.0.0 做:见第 5 节 E0E7。 1.0.0 不做(后置线 Bpay/自助支付(用 admin 人工开通会员、report 报表大屏、bpm 工作流、mp 公众号、真实安全账号能力(改密/2FA/session service 会话吊销;安全事件处理动作已在 RC 后补)、管理员侧下架/撤权细补偿、版本恢复/高级回滚(只读 diff 已在 RC 后补)、统一横切 Schema 重构、Source 全自治传播、可视化 schema 编辑器、偏好与通知页。


5. 执行计划Epic 分解 + 依赖 + 反假绿验证标准)

顺序原则:E0 消假绿地基先行(否则后续修复都无 CI 守护E1E3 核心创作闭环优先E4 依赖 E2agent 物化需 ai 运行时门E5E7 支撑。 每个 Epic 的"✔ done"是反假绿验证标准——必须真测试(真 PG/真 e2e通过、非 mock-green、非台账门禁。

E0 · 消假绿地基(先行,全局守护)

  • T0.1 默认 CI 接到仓库根 .github/workflows/maven.yml,只跑纯本地 Maven/JUnit 层;真实 PG/live IT 不伪装进 mvn package 绿证。
  • T0.2 P1r*RealApiGateTest 明确归类为 coverage 台账门禁,非业务真跑,不计入 1.0.0 真 done。
  • T0.3 live opt-in IT 归类为 external-live,未显式 MUSE_P1R_EXTERNAL_ACCEPTANCE=true 时只能标 SKIPPED
  • T0.4 新增 muse-cloud/scripts/run-p1r-verification.sh,提供 local / real-pg / external-live 一键分层复跑real-PG 层强制 _test 库和密码仅 env。
  • ✔ doneE1-E7 后续完成判据统一引用 1.0.0-真验证清单。默认 CI 守住纯本地门禁real-PG/external-live 作为发布前和 Epic 收口的显式复跑门。

E1 · content 创作闭环补齐

  • T1.1 Accept Suggestion 归档AI owner 写 accepted decisionP1r IT 扩到校验 suggestion status 与 decision archive2026-06-27 real-PG 切片 6/0F/0E/0S
  • T1.2 修改后合并前端入口已补finalContent 编辑提交);旧知识草稿失效已由 Knowledge owner API 接管Content 正文变更后将关联 pending draft 标为 conflicted/needs_recheck2026-06-27 单测 47/0F/0Ereal-PG P1rContentMergeSuggestionIT 5/0F/0E/0S
  • T1.3 工作台壳已补知识/导入/导出/记录入口:知识跳转作品知识页,导入可初始化本地正文,导出支持范围/格式选择、任务查询与下载凭证消费记录跳转账户中心2026-06-27 前端本地门 11/0F/0EMSW-off Playwright accept-suggestion 2/0F/0E2026-06-28 真后端 export-download.spec.ts 1/0F/0E
  • T1.4 IndexedDB workId+blockId+revision 草稿键对账已补;版本历史最小 API/UI 已补:保存/采纳写入 muse_content_block_revision_snapshot,只读 GET /blocks/{blockId}/revisions 展示 Canonical revision 快照RC 后追加前端只读版本 diff 对比2026-06-27 real-PG P1rContentCoreCompletedApprovalIT 13/0F/0E/0SStudio 目标 Vitest BlockRevisionPanel.test.tsx 2/0F/0E
  • ✔ done写作→AI→采纳候选离开 Active→工作台各入口可用2026-06-27 MSW-off Playwright 真后端旅程 accept-suggestion.spec.ts 2/0F/0E正路真 New-API 生成 suggestionId=79采纳后 Block revision 160→161候选归档 accepted

E2 · ai 智能体生命周期与闭环

  • T2.1 Agent CRUD 补齐:用户自建 Agent 支持 update/archiveupdate 创建新 active versionarchive 同步归档 active 槽位绑定2026-06-27 后端单测+MSW-off Playwright 真后端)。
  • T2.2 Agent 版本读/切换/归档Studio 版本面板接真实后端,支持 list/activate/archive 非当前版本DB 核验 current_version_id 与版本 status2026-06-27 agent-create.spec.ts 1/0F/0E
  • T2.3 Slot 解绑Studio 槽位面板接 unbind,真后端把 revision 2→3、status→archived、响应 sourceStatus=unbound2026-06-27 agent-slot-bind.spec.ts 1/0F/0E
  • T2.4 候选拒绝接后端Studio reject 调 POST /suggestions/{id}/rejectAI owner 写 rejected + decision archive2026-06-27 accept-suggestion.spec.ts 新增 reject 真生成候选 suggestionId=81
  • T2.5 范围收口:候选处置闭环已用真生成采纳/拒绝 e2e 覆盖;独立“候选列表页”不属于线 A 必要路径RC 后已补质量评测本地确定性执行器,能把 evaluation queued job 推进到 completed/failed 并写 sample result/聚合摘要;真实评估集管理与 LLM judge 后置。
  • ✔ doneagent 全生命周期可管;采纳/拒绝候选处置闭环真 e2e质量评测已具备最小执行闭环深度 judge 不计入线 A done。

E3 · knowledge studio 与检索

  • T3.1 Studio 检索触发 + 绑定/上传主流程 e2eKnowledgeRetrievalPanel 接真实检索端点绑定读回、market KB handoff、资料上传均由 MSW-off Playwright 真后端覆盖。
  • T3.2 no_dataset 用户可见错误与治理入口(非静默省略):无 dataset 时 UI 展示可治理文案并指向“我创建的”上传/等待物化路径。
  • T3.3 Source 传播真实跨模块消费验收AI 生成 e2e 反查 muse_ai_generation.source_summary.contextAssembly,确认检索 chunk、KB id、授权快照进入 AI 生成上下文。
  • ✔ done2026-06-27Studio 知识闭环真 e2e 通过;检索可被用户触发、缺 dataset 有可见反馈,且 AI 生成链路真实消费知识 Source。

E4 · market agent 物化 + 召回触达

  • T4.0 决策收口agent 物化落在 handoff 目标 owner 兑现点market 不直写 AI/Knowledge 本地事实,目标域按 token+assetId 解析来源并物化本地实体。
  • T4.1 agent 物化market agent handoff 不再信 URL/body 里的 sourceAgentId/sourceAgentVersionAI 后端按 market asset source_id 解析发布者 agent并物化为安装者本地 user agent槽位绑定指向本地副本运行时 requireVisibleAgent 自然过门。
  • T4.2 召回触达已物化 KB合规底线market 召回发布来源状态事件knowledge AFTER_COMMIT 消费,将 installed_ref KB 的 projection 翻为 recalled/blocked;检索来源状态门返回 omitted source不再送入 RAGFlow。
  • T4.3 三类可信信息面板前端接入:市场详情页展示来源引用、当前授权、治理状态,消费后端 typeSpecificInfo/userActions/governanceStatus
  • ✔ done2026-06-27 fresh 证据见 1.0.0-真验证清单 E4后端目标测试 50/0F/0E契约/覆盖门 12/0F/0EStudio Vitest 11/0F/0Etsc -b 通过lint 0 errors仅既有 MSW warningMSW-off Playwright 真后端 E4 切片 6/0F/0E。边界副本资源回收仍后置本轮未重跑 Studio 全量 56。

E5 · member 写侧闭环

  • T5.1 用量写路径接线AI 生成成功后经 Account owner 写 muse_member_usage_record,失败终态释放预占配额。
  • T5.2 配额扣减闭环 + AccountQuotaGuard 接入生成链路 + entitlement/usage/account IT fresh 复跑。
  • T5.3 NewApiAccountFacade Real 实现New-API 管理口显式 live 验证通过,默认未 opt-in 时 honest skipped。
  • T5.4 配额请求/归因 job consumerqueued→processing→completed/failed有短事务 claim/terminal、外部调用 tx 外执行、失败 fail-closed。
  • ✔ done2026-06-27用量真有数、配额真扣、New-API 绑定/配额管理口生产可用、quota request 与 attribution job 可推进到终态fresh 证据见 1.0.0-真验证清单 E5。

E6 · admin 权限治理 + AI 配置接线

  • T6.1 system 管理员用户状态/角色治理后端防护 + Muse 管理端接线:/system/user/update-status/system/permission/assign-user-role 带当前操作者上下文,后端拒绝自禁用和自改角色。
  • T6.2 权限组与页面权限沿用 Yudao system 角色/菜单/数据范围模型Muse 账号页新增“管理员权限”Tab 治理 system 管理员,不伪造 account 业务账号未定义写契约。
  • T6.3 AI 配置/质量门控前端接线Prompt 激活、质量评估启动、质量策略版本创建调用真实 admin API最近评估只展示真实提交返回不再展示硬编码假评分。
  • T6.4 market restore 分支真 PG IT申诉恢复路径覆盖 preview consumed、资产重新 listed、restore governance action、命令/事件幂等。
  • ✔ done2026-06-27Muse 管理端可治理 system 管理员状态/角色后端有自操作防护AI 配置页关键写命令真接后端、去假数据market restore 分支有真实 PG 证据。fresh 证据见 1.0.0-真验证清单 E6。边界account 业务账号封禁/权限组写契约仍不存在本轮不伪造Agent/Tool Grant 等未接后端的 AI 命令仍保持 preview-only。

E7 · meta 字段校验 + schema

  • T7.1 后端动态字段值校验落在 Content 可信边界,经 Meta active projection 执行 required/type/enum/min/max/minLength/maxLength/pattern/regex/deprecated/unknown field 校验,并返回 schema/projection stale 布尔、当前版本和写入路由建议。
  • T7.2 admin 新建 schema 草稿入口打通schemaKey 不存在时后端创建默认 content/work/work 根对象,状态 draft随后保存 v1 草稿;不扩张 OpenAPI 契约伪造多 targetType 入口。
  • T7.3 meta admin API 真 PG ITP1rMetaAdminSchemaLifecycleCompletedApprovalIT 走真实 /admin-api/muse/governance/meta-schemas/**,覆盖新 schema 草稿→校验→预览→发布→激活→v2 发布→回滚,并断言 command/audit/validation/preview/version 状态落库、schema 根 status=active 与 active 指针同步;P1rContentMetaProjectionClusterCompletedApprovalIT 走真实 /app-api/muse/works/{workId}/dynamic-fields/validate 验证 active projection 规则。
  • ✔ done2026-06-27动态字段预校验真实读取 Meta 投影并 fail-closedadmin 可从空 schemaKey 新建草稿并完成治理状态机fresh 证据见 1.0.0-真验证清单 E7。边界Meta impact preview 在生产仍要求 5 维度 usage contributor all-real本轮 admin lifecycle IT 用 5 个 VERIFIED_ZERO 测试 contributor 满足装配门,不代表外部 owner 用量建模已完成;未跑 Admin Playwright e2e。

E8 · 发布候选冻结与总验

  • T8.1 后端三层发布前总验:localreal-pgexternal-live fresh 复跑通过GraphRAG attribution 仍是独立 opt-in skip不计入 1.0.0 线 A 通过项。
  • T8.2 CI/package 兜底:根 Maven package 等价门已复跑通过61 个 reactor 模块全 SUCCESS同轮先暴露 MuseApiContractSupport 少登记 8 个 OpenAPI 操作233/241导致契约门红补齐后定向 MuseApiContractSupportTest 4/0F/0E/0Smvn -B package --file pom.xml 通过。
  • T8.3 前端总验Studio tsc -b --force 通过ESLint 0 errors仅既有 MSW warningVitest 27 files / 119 tests passedMSW-off Playwright 全量 61 tests = 60 passed / 1 skipped / 0 failedAdmin @vben/web-antd typecheck 通过Vitest 50 files / 347 tests passed。
  • T8.4 发布说明与已知边界:已形成 1.0.0-RC发布说明.md,列出线 A 已闭环、线 B 后置、GraphRAG/Studio D0-fork skip、Admin Playwright 未跑、复跑命令与回滚策略。
  • ✔ done所有发布候选门禁有 fresh 证据,失败项已修或明确降级出线 A不得用旧人工批准、台账门禁、mock-only 或 skipped 代替 RC 绿证。

6. 验证准则(反假绿——什么算"真 done"

  1. 真测试优先done 以真 PG IT / 真后端 e2e 为准,不接受 mock-green、台账门禁、默认跳过的 live。
  2. 分层守护E0 后,默认 CI 守纯本地层;关键链路的 P1r IT 必须能通过 run-p1r-verification.sh 在 real-PG / external-live 层一键复跑并拦截回归。
  3. 闭环验证:验"用户可达的完整链路"前端动作→后端→DB→反查不止单点单测。
  4. 独立复核agent 报"已修/通过"必附运行证据;主 agent 独立复跑关键结论,不盲信子 agent。
  5. 凭据红线:测试/日志/产物不得泄露 password/secret/token/sk-IT 用 _test 库,绝不指向 muse_slice_live。

7. 收尾动作(执行前/中同步)

  • 临时文档收敛:临时-01~05 是过程文档SSE 方案、KB 物化过程、agent 物化 plan 等),关键结论已并入本文/各模块 .agent/memory按 AGENTS.md 归档或删除,不再作为活跃跟踪源。临时-05 的 agent 物化方案并入 E4仍正确、D1 待拍板)。
  • 进度总账对齐docs/mvp/进度总账.md 与本文去重——本文为 1.0.0 待做计划的单一事实源,总账保留为历史进度账并加指针指向本文。
  • 执行跟踪:按 E0E7 建可独立验证的子任务,逐个"目标→最小改动→真验证→回写"。

本文随执行推进更新:每个 Epic/子任务完成后回写其真验证状态,保持"设计→实现→验证"对账不漂移。