📝 docs: 建立魂镜完整 1.0 设计文档体系
- 产品层:产品宪章与永久禁域、产品定义、完整 1.0 范围与发布门、道家文化语言体系、指标与反指标 - 研究层:参考项目研究(deepseek-harness、pi、MemOS、模型网关)、灵台原生引擎研究(业界原生引擎架构理念与道家文化出处) - 架构层:系统、Agent 运行时(周天体系)、插件系统、灵台引擎(C++ 双形态)、媒体与设备、社区协作市场、前端富内容渲染、数据、记忆与知识 - 契约层:协议与稳定标识、API 总体约定、Native API、兼容网关、实时与 Webhook、内部端口、统一 ContentBlock 与流式(含分支对话交互态)、灵台 C ABI 与 gRPC Service、API 表面、HTTP 与事件、运行观测 - 决策:ADR-001 至 ADR-023(模块化单体、每 attempt 持久化、候选记忆、OAuth 2.1、灵台引擎、双形态部署、大周天演化、宪章、三界作用域、私箧与保全态、叩心、周天统一等) - 交付:WP-01 至 WP-15 实施 TODO 与设计阶段交接文档 - 工程:AGENTS.md 工程规则(含 C++/灵台规范)、CLAUDE.md 引用、.gitignore
This commit is contained in:
commit
42513d13c6
37 files changed
+5795
No files matched your search
@@ -0,0 +1,260 @@
|
||||
# Hunjing 设计阶段交接文档
|
||||
|
||||
> 交接基线:完整 1.0 产品、架构、API、富内容、文化语言和工程规则已经定义;仓库当前仍处于设计阶段,不能把任何 TODO 表述为已实现。
|
||||
|
||||
## 1. 当前状态
|
||||
|
||||
本轮完成了文档体系重建和完整 1.0 设计收敛:
|
||||
|
||||
- 根 `README.md`、`AGENTS.md` 与 `docs/` 已按当前目标重写;
|
||||
- 文档数量、行数和图表数会随设计变更增长,不作为交接完成证据;以 `docs/README.md` 索引和当前检查结果为准;
|
||||
- 完整 1.0 实施清单中的所有未勾选项都是真实待办;不得依赖本文件的历史计数判断完成度;
|
||||
- 尚未开始正式代码实现,文档中的端点、表、事件和组件均是目标契约;
|
||||
- 当前工作区文件均处于新增/修改状态,尚未提交;不要假定 Git 历史已保存本轮成果。
|
||||
|
||||
## 2. 不要重新讨论的已确认决策
|
||||
|
||||
除非用户明确改变决定,后续实现必须以这些结论为前提:
|
||||
|
||||
1. **1.0 是一次完整整体交付**:内部工作包可以并行和独立验收,但任何缺项都不能称为正式 1.0。
|
||||
2. **1.0 全量范围**:角色、记忆、分支多模态对话、多 Agent、插件生态、实时语音、多语言、图像、Live2D、3D 运行编辑、Web/Tauri 桌面和移动、设备感知、完整社区、角色社区、协作、真实支付退款分成结算、运营和自托管全部进入 1.0。
|
||||
3. **2.0 边界**:Blender 级完整 3D 建模器、LLM 直接修改完整 3D 几何/绑定、IoT/机器人/物理动作控制。
|
||||
4. **能力皆插件,治理内核不插件化**:认证、授权、数据隔离、审批、Ledger、审计、事务和 Sandbox fail-closed 属于 Core。
|
||||
5. **插件双轨**:声明式/远程插件默认受限;第三方本地代码插件即使受信也运行在独立进程/容器;只有 bundled Core plugin 可进主进程。
|
||||
6. **技术按需**:能力和安全边界强制;语言、数据库、专用向量/图存储和服务拆分按 ADR、官方资料及实测决定。
|
||||
7. **3D 1.0 深度**:VRM/glTF 导入、材质/骨骼/表情/动作/场景编辑、运行和导出;不自研完整建模器。
|
||||
8. **客户端**:Next.js Web + Tauri v2 Desktop + Tauri v2 iOS/Android。
|
||||
9. **社区私信**:服务端治理的一对一和小群聊,服务端加密存储,可举报/屏蔽/审核/多端同步;1.0 不做 E2EE。
|
||||
10. **真实市场闭环**:支付、退款、争议、平台费、创作者分成、余额、结算和对账进入 1.0,Ledger 不可变。
|
||||
11. **API 开放面**:公开 Native API,同时提供 OpenAI-compatible 和 Anthropic Messages-compatible 网关。
|
||||
12. **API 域名**:Native 为 `api.<domain>/v1`;兼容入口为 `gateway.<domain>/openai/v1` 与 `gateway.<domain>/anthropic/v1`。
|
||||
13. **认证**:1.0 使用 OAuth 2.1;Web 为安全 Session Cookie,Tauri 为 Authorization Code + PKCE,第三方为 OAuth Bearer,自动化为限 scope Service Account API key;凭据只经 Header 传递。2.0 再设计自研加密认证系统。
|
||||
14. **消息与 Run**:聊天消息和可选 Run 在一个事务原子创建;任务工作台可以显式创建无 Conversation Run。
|
||||
15. **富内容**:Native API 使用类型化 ContentBlock;用户编辑可使用 Markdown 内嵌 Mermaid、代码和数学公式,服务端规范化为 canonical Block。
|
||||
16. **实时渲染**:Markdown/代码增量;数学按完整定界符或完成后;Mermaid 和媒体在 Block 完成/资源 ready 后;最终 Block/Message 与流累积状态对账。
|
||||
17. **文化体系**:产品采用完整“中国古代神话/道家文化名 · 直白解释”双层语言;API、数据库、事件、权限和日志只用中性英文稳定值。
|
||||
18. **隐藏推理**:不采集、不持久化、不通过诊断接口返回 chain-of-thought;仅保存可见内容、可读摘要、工具轨迹和计数。
|
||||
19. **权威记忆**:自动提取先产生 MemoryCandidate;批准、纠正、取代和恢复创建不可变 MemoryVersion。Personal Domain/Workspace 是所有权边界,全文、向量和图只是投影;KV cache、隐藏状态和权重适配不是 1.0 权威记忆。
|
||||
20. **ID 生成**:持久化平台资源统一 UUIDv7;服务端 Request 与 Trace record 使用 UUIDv4;`traceparent` 遵循 W3C;秘密、Token、Ticket 和 capability 使用 CSPRNG opaque value,不使用 UUID。
|
||||
21. **灵台引擎双形态**:性能与安全敏感的确定性核心以 C++ 实现为灵台引擎(太一/小周天/洛书/河图/陶钧/烛照六模块,承接旧版"灵台/九枢"血脉),同一核心可经稳定 C ABI 进程内嵌入 Python/Rust/Go 宿主,也可作为部署内部 gRPC 独立服务运行;引擎无权威状态、最小 I/O、fail closed,任何能力在两种形态语义一致。
|
||||
22. **内驱力与大周天演化(1.0)**:角色具有用户可审阅的内驱力维度;大周天是交互事件触发的自我评估 Run,预算受控、产出候选、经确认演化并留版本谱系;不做后台自主运行、不伪造离线意识(守一不变);引擎流式模块文化名"小周天",与角色"大周天"构成大小周天体系。
|
||||
23. **产品宪章与永久禁域(ADR-019)**:宪章是产品定义上位约束,九条永久禁域不可被 Prompt、插件、管理员或自托管配置关闭;决策优先序为安全合规 > 用户数据权 > 角色连续性 > 生态健康 > 商业目标。
|
||||
24. **三界归真作用域(ADR-020)**:对话分真界/境界/幻境,归真携带 `canonical_scope`;境界只成世界知识候选、幻境不自动入忆;言可入幻、行必归真。
|
||||
25. **私箧、保全态与计费伦理(ADR-021)**:私箧用户独立持钥、平台不可恢复;欠费/封禁只读保全不删数据;不按记忆、感情或亲密计费。
|
||||
26. **叩心进入 1.0(ADR-022)**:角色主动联系先成叩心候选,受静默、频率、渠道与预算控制;不回应不降关系;不以追逐式消息换回流。
|
||||
27. **周天体系统一(ADR-023)**:小周天=Run 可追踪认知闭环(完成信号为大周天唯一输入面),大周天=`cycle_` 聚合根 + 四阶段评估(回顾/对照/提议/提交)+ 阶段记忆;吸收旧版契约骨架并补全其缺失的架构设计。
|
||||
28. **数据权与开放核心**:PersonalDomain 数据默认不用于模型训练(自愿贡献需独立、明确、可撤销同意);前台化名与法定身份分离核验;高敏数据可完全禁止跨区模型处理;核心 Apache-2.0 开放、品牌与官方资产单独保护、DCO 贡献、自托管遥测默认关闭;模型配置按"平台硬边界→目录→用户 BYOK→角色覆写→会话临时"继承。
|
||||
|
||||
正式 ADR 见[架构决策记录](../decisions/README.md)。
|
||||
|
||||
## 3. 事实源与阅读路径
|
||||
|
||||
新接手者先读:
|
||||
|
||||
1. [项目工程规则](../../AGENTS.md)
|
||||
2. [产品定义与边界](../product/product-definition.md)
|
||||
3. [完整 1.0 范围与发布门](../product/complete-1.0-scope.md)
|
||||
4. [架构决策记录](../decisions/README.md)
|
||||
5. [系统架构](../architecture/system-architecture.md)
|
||||
6. 当前工作包对应的专项架构;记忆实现必须先读[记忆与知识架构](../architecture/memory-and-knowledge.md)
|
||||
7. [协议与稳定标识](../contracts/README.md)及当前工作包对应契约
|
||||
8. [安全与诊断访问](../security/security-and-diagnostics.md)
|
||||
9. [完整 1.0 实施 TODO](implementation-roadmap.md)
|
||||
10. [文化语言体系](../product/cultural-language.md)
|
||||
|
||||
事实层级:
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
P[产品范围] --> A[ADR 与架构]
|
||||
A --> C[契约与 OpenAPI]
|
||||
C --> I[实现]
|
||||
I --> T[测试与运行证据]
|
||||
```
|
||||
|
||||
稳定 ID、枚举、Header、事件、错误码和 ContentBlock 必须先进入契约/OpenAPI,再进入实现。文化名只进入品牌/本地化层。
|
||||
|
||||
## 4. 文档地图
|
||||
|
||||
### 产品
|
||||
|
||||
- `docs/product/product-definition.md`:1.0 产品域和 2.0 边界。
|
||||
- `docs/product/complete-1.0-scope.md`:发布口径、必须交付和发布门。
|
||||
- `docs/product/cultural-language.md`:镜庭、镜生、镜树、息壤、形仪、天工阁、百工坊、雅集、同契台、云市、司命台等文化名与工程映射。
|
||||
|
||||
### 架构
|
||||
|
||||
- `docs/architecture/system-architecture.md`:逻辑模块、物理边界和客户端。
|
||||
- `docs/architecture/agent-runtime.md`:Run/Turn/ModelCall/ToolCall、多 Agent、取消与恢复。
|
||||
- `docs/architecture/plugin-system.md`:双轨插件、Manifest、生命周期、SDK 与 Registry。
|
||||
- `docs/architecture/data-architecture.md`:角色、运行、社区、插件、媒体、订单与 Ledger 数据关系。
|
||||
- `docs/architecture/memory-and-knowledge.md`:记忆所有权、类型、Candidate/Version、纠正、召回、ContextSnapshot 和评测。
|
||||
- `docs/architecture/media-and-device-architecture.md`:语音、图像、Live2D、3D 和 DeviceGrant。
|
||||
- `docs/architecture/community-and-marketplace.md`:社区、私信、协作、市场、支付与结算。
|
||||
- `docs/architecture/frontend-content-rendering.md`:Markdown/Shiki/KaTeX/Mermaid/媒体的实时解析、安全、性能和可访问性。
|
||||
|
||||
### 契约
|
||||
|
||||
- `docs/contracts/api-conventions.md`:认证、Header、版本、分页、ETag、幂等、错误、上传。
|
||||
- `docs/contracts/native-api.md`:Native 资源端点。
|
||||
- `docs/contracts/gateway-compatible-api.md`:OpenAI/Anthropic 兼容入口和路由/usage 规则。
|
||||
- `docs/contracts/realtime-and-webhooks.md`:Run/通知 SSE、语音/协作/设备 WebSocket、入站/出站 Webhook。
|
||||
- `docs/contracts/internal-api.md`:Application Command/Query、Outbox、Model/Tool/Plugin/Sandbox/Payment Port。
|
||||
- `docs/contracts/content-blocks-and-streaming.md`:统一 ContentBlock 和 Block 级流事件。
|
||||
- `docs/contracts/run-observability.md`:每轮模型、工具、token、cache、费用和诊断字段。
|
||||
- `docs/contracts/http-and-events.md`:通用 Header、错误和稳定事件。
|
||||
|
||||
### 安全、研究与交付
|
||||
|
||||
- `docs/security/security-and-diagnostics.md`:威胁、插件、设备、社区、支付和诊断双重授权。
|
||||
- `docs/research/reference-projects.md`:deepseek-harness、pi、MemOS、其他角色记忆项目和模型网关证据。
|
||||
- `docs/delivery/implementation-roadmap.md`:14 个完整 1.0 工作包。
|
||||
|
||||
## 5. API 实现要点
|
||||
|
||||
### 5.1 分面
|
||||
|
||||
```text
|
||||
Native: https://api.<domain>/v1
|
||||
OpenAI: https://gateway.<domain>/openai/v1
|
||||
Anthropic: https://gateway.<domain>/anthropic/v1
|
||||
Webhook: https://api.<domain>/webhooks/v1
|
||||
```
|
||||
|
||||
兼容 Gateway 只提供模型推理,不读写 Character、Memory、Community、Device、Order 或 PluginInstallation。需要自动 Tool Loop、多 Agent、审批和持久化时调用 Native Run API。
|
||||
|
||||
### 5.2 核心消息请求
|
||||
|
||||
```http
|
||||
POST /v1/conversations/{conversation_id}/messages
|
||||
Idempotency-Key: <opaque>
|
||||
```
|
||||
|
||||
请求可同时包含 ContentBlock 和 `start_run=true`。服务端在一个事务创建 Message、Run、Audit 与 Outbox;失败时不能只留下 Message 或 Run。
|
||||
|
||||
### 5.3 实时协议
|
||||
|
||||
- Run 和通知:SSE;
|
||||
- 实时语音、协同、设备:WebSocket;
|
||||
- Event 有 Run `sequence`,Block delta 有 `delta_index`;
|
||||
- 客户端按 event ID 和 `(block_id, delta_index)` 去重;
|
||||
- 流缺口通过重放或最终 Message 对账;
|
||||
- `content.block.completed` 和 `message.completed` 是权威快照;
|
||||
- 首个可见 delta 后禁止切换 Provider 重新生成另一份内容。
|
||||
|
||||
### 5.4 诊断
|
||||
|
||||
普通 Run API 不返回 ModelCall、Tool 参数或 ContextSnapshot 详情。诊断读取同时要求普通认证和:
|
||||
|
||||
```http
|
||||
Hunjing-Diagnostic-Token: hjd_...
|
||||
Hunjing-Diagnostic-Purpose: user_inspection
|
||||
```
|
||||
|
||||
Grant 默认 15 分钟、单次、绑定 Run。隐藏推理、密钥、Authorization、签名 URL 永不返回。
|
||||
|
||||
## 6. 统一富内容实现要点
|
||||
|
||||
ContentBlock 类型包括:
|
||||
|
||||
```text
|
||||
text markdown code quote table callout math mermaid
|
||||
image video audio file gallery avatar
|
||||
tool_call tool_result agent_status approval_request artifact citation error
|
||||
```
|
||||
|
||||
前端分级实时策略:
|
||||
|
||||
| 类型 | 策略 |
|
||||
| --- | --- |
|
||||
| Text/Markdown | 增量显示、节流解析,未闭合结构保持源码态 |
|
||||
| Code | 纯文本优先,按行/时间片使用 Shiki |
|
||||
| Math | 定界符闭合或 Block 完成后用 KaTeX,保留 MathML/fallback |
|
||||
| Mermaid | Block 完成后 strict mode 隔离渲染并净化 SVG |
|
||||
| Image/Video/Audio/File | progress 占位,resource ready 后加载 |
|
||||
| Tool/Agent/Approval | 类型化状态替换,不模拟为自由文本 |
|
||||
|
||||
不要把所有内容压回一个 Markdown 字符串。不要在每个 token 上重跑 Shiki、KaTeX 或 Mermaid。失败降级必须保留源码/内容,而不是空白。
|
||||
|
||||
## 7. 数据与安全不变量
|
||||
|
||||
- 关系数据库是权威事实源;对象存储保存媒体;全文/向量/图/推荐/缓存均可重建。
|
||||
- 所有 Query 在数据库层带 PersonalDomain/Workspace/Finance scope,不能先全表读后应用层过滤。
|
||||
- CharacterVersion、Message Revision、MemoryVersion、ReleaseVersion、PluginVersion 和 LedgerEntry 都是可追溯版本/事实。
|
||||
- Ledger 不可变;退款和纠错写反向分录。
|
||||
- 购买不等于安装插件;安装不等于启用;启用不等于批准新增权限。
|
||||
- 未信任插件不能进主进程;Python import、Node VM 和 WebView 都不是安全 Sandbox。
|
||||
- Tool input、Markdown、Mermaid、公式、SVG、文件路径、URL、媒体和 Webhook 全部是边界输入。
|
||||
- 没有符合策略的隔离后端时拒绝危险执行,不能回退宿主执行。
|
||||
- 删除传播到主存储、索引、缓存和派生数据;墓碑不保留原文。
|
||||
|
||||
## 8. 下一步建议
|
||||
|
||||
从 `WP-01 工程、契约与身份` 开始,但不要直接实现业务页面。建议顺序:
|
||||
|
||||
1. 建立仓库目录、Makefile、Python/Next.js/Tauri 最小可运行工程;
|
||||
2. 把当前 Markdown 契约转换为 OpenAPI 3.1 和 JSON Schema;
|
||||
3. 先定义并生成通用 ID、错误、分页、Money、ContentBlock、Event 和认证 DTO;
|
||||
4. 建立 SQLite/PostgreSQL 基线、Alembic、User/PersonalDomain/Session/ServiceAccount;
|
||||
5. 实现 OAuth 2.1 边界和 Header/CSRF/Origin/Scope 校验;
|
||||
6. 实现一个不调用模型的 Conversation→Message→Run 事务和 SSE 空状态闭环;
|
||||
7. 再进入 `WP-02` 与 `WP-03`,不要先实现插件市场、支付或 3D 页面。
|
||||
|
||||
第一条垂直切片的完成证据至少包括:`make` 中可发现的启动/迁移/生成/检查命令;OpenAPI 生成客户端无 drift;一次请求原子写入 Message、Run、Audit 与 Outbox;失败注入不留下孤儿资源;SSE 可返回快照和终止状态;跨 Personal Domain 请求失败关闭;自动化测试命令可重复通过。
|
||||
|
||||
这是实现顺序,不是缩减 1.0 范围。每完成一个 TODO,必须补实现位置、调用点、测试和运行证据。具体文件布局和依赖版本应在建立工程时形成 ADR/机器配置,不在交接摘要中维护第二份易漂移清单。
|
||||
|
||||
## 9. 尚未确定的发布与契约配置
|
||||
|
||||
以下保持 TODO,不要替用户虚构:
|
||||
|
||||
- 运营主体、首发地区、隐私角色和数据保留期限;
|
||||
- 支付、退款、KYC、税务、发票和创作者结算 Provider;
|
||||
- 首批模型、ASR、TTS、图像、对象存储和媒体处理 Provider;
|
||||
- 费率、分成、结算周期、退款窗口、准备金和拒付规则;
|
||||
- 上传大小、Run/Agent 并发、RPM/TPM、媒体与流重放保留上限;默认分页已由 `contracts/api-conventions.md` 固定;
|
||||
- 社区规范、年龄分级、审核标准、申诉和版权投诉时限;
|
||||
- 正式域名、首发币种和地区可售策略;
|
||||
- 兼容 Gateway 首发支持的 Provider beta 功能清单。
|
||||
|
||||
Provider 选择和纯内部容量数值可在 Port/配置边界建立后延后;运营主体、地区、保留期限、币种/税务/退款、年龄分级、社区治理和兼容 beta 承诺会影响用户权利或公开语义,阻塞相关契约冻结及正式 1.0。任一项开始影响开发期数据模型时先询问用户并新增 ADR,不把它们笼统视为普通配置。
|
||||
|
||||
## 10. 验证证据
|
||||
|
||||
本文件不保存会迅速陈旧的文件数、行数和 Mermaid 数。每次交接或提交都应针对当前工作区重新生成带日期、Git commit/dirty 状态、命令和工具版本的结果;未保存命令或产物的“检查通过”不能作为发布证据。
|
||||
|
||||
当前仍是纯文档设计阶段:没有代码测试、OpenAPI drift、迁移或运行证据。复核应优先通过项目 Makefile;Makefile 尚未建立时至少执行:
|
||||
|
||||
- `git diff --check`;
|
||||
- 内部 Markdown 链接检查;
|
||||
- 重复标题检查;
|
||||
- 所有 Mermaid 图实际渲染;
|
||||
- 关键稳定值只在 `docs/contracts/` 定义的映射检查。
|
||||
|
||||
开始实现后,验证证据必须进入工作包的验收记录,而不是回填一段无法复现的摘要。
|
||||
|
||||
## 11. 工作区注意事项
|
||||
|
||||
- 当前文件尚未提交。不要执行 `git reset --hard`、`git clean` 或覆盖式重建。
|
||||
- Git 状态中的修改均应视为用户当前工作成果;提交前先检查完整 diff。
|
||||
- IDE 资源列表可能仍显示已经被重建删除的旧路径,这是编辑器缓存,不代表磁盘文件存在。
|
||||
- `CLAUDE.md` 仍通过 `@AGENTS.md` 加载项目规则;后续不要在两处复制规则。
|
||||
- 任何新文档都要加入 `docs/README.md`;任何新稳定值先进入 `docs/contracts/README.md` 和机器 Schema。
|
||||
|
||||
## 12. 交接完成条件
|
||||
|
||||
接手者先完成以下知识核对;这只证明理解设计,不代表工作包验收:
|
||||
|
||||
- 1.0 与 2.0 的唯一边界是什么?
|
||||
- Native API 与两类兼容 Gateway 为什么分域?
|
||||
- Message 和 Run 为什么原子创建?
|
||||
- ContentBlock 为什么不能退回单一 Markdown?
|
||||
- 什么内容可以增量渲染,什么必须完成后渲染?
|
||||
- 文化名和稳定工程值如何分层?
|
||||
- 哪些能力可插件化,哪些必须留在治理内核?
|
||||
- Provider usage、Prompt Cache、ModelCall attempt 如何记录?
|
||||
- 为什么普通 Run API 不能返回详细诊断?
|
||||
- MemoryCandidate、Memory 和 MemoryVersion 为什么分离,记忆所有权由什么边界决定?
|
||||
- 为什么购买插件、安装插件、启用插件和授予权限必须分离?
|
||||
|
||||
无法回答时回到本文第 3–7 节和对应事实源,不要凭印象编码。能够回答后,仍须为当前工作包补齐机器契约、可运行命令和需求→实现→调用点→测试→证据矩阵,才可开始相应实现。
|
||||
@@ -0,0 +1,211 @@
|
||||
# 完整 1.0 实施 TODO
|
||||
|
||||
> 本清单中的全部条目都属于同一个 1.0。工作包可以并行开发和独立验收,但不能作为残缺 1.0 对外发布。
|
||||
|
||||
## 使用规则
|
||||
|
||||
- `[ ]` 表示 1.0 未完成,不表示推迟到后续版本。
|
||||
- 完成条目时附实现位置、真实调用点、自动化测试和运行证据。
|
||||
- 没有调用点的定义、只有页面没有后端闭环、假数据、`TODO`、`pass` 和省略实现均不能勾选。
|
||||
- 所有工作包和 `product/complete-1.0-scope.md` 发布门完成后才能标记 1.0。
|
||||
|
||||
## WP-01 工程、契约与身份
|
||||
|
||||
- [ ] 建立 Next.js、FastAPI、Tauri v2、Worker 和统一 Makefile 工程。
|
||||
- [ ] 建立 OpenAPI 3.1 单一真源和 TypeScript/Rust client 生成。
|
||||
- [ ] 实现 RFC 9562 ID 生成与校验:持久化资源使用 UUIDv7,请求/Trace record 使用 UUIDv4,秘密与 capability 使用 CSPRNG opaque value。
|
||||
- [ ] 实现 `api.* /v1` Native API 与 `gateway.*` 双兼容入口分面。
|
||||
- [ ] 实现 OAuth 2.1、Web Session Cookie、Tauri PKCE、公共 Bearer 和 Service Account API key。
|
||||
- [ ] 实现 Header-only 凭据、CSRF、Origin、scope、轮换、撤销和重用检测。
|
||||
- [ ] 实现用户、多凭证、Session、PersonalDomain 和设备注册。
|
||||
- [ ] 实现私箧:用户独立持钥加密区,平台仅存密文不可恢复;账户恢复、管理员与诊断均不可读(ADR-021)。
|
||||
- [ ] 实现 RBAC/ABAC、资源归属校验和跨域失败关闭。
|
||||
- [ ] 实现 W3C Trace Context、结构化日志、审计和 Outbox。
|
||||
- [ ] 实现 SQLite 开发档与 PostgreSQL 正式档迁移。
|
||||
- [ ] 验证跨用户、跨角色、跨 Workspace IDOR 测试。
|
||||
|
||||
## WP-02 角色、导入与可携
|
||||
|
||||
- [ ] 实现 Character、CharacterVersion、关系和来源谱系。
|
||||
- [ ] 实现手动、模板、角色卡静态导入和安全预览。
|
||||
- [ ] 实现随缘:按偏好生成匿名灵胚候选与审阅,不抽卡、不分配已有主体。
|
||||
- [ ] 实现现实人物授权治理:仅本人或可验证授权可创建,已故现实人物不开放。
|
||||
- [ ] 实现角色社区 Fork,保留来源、许可和版本边。
|
||||
- [ ] 实现角色人格/关系变化候选和审核。
|
||||
- [ ] 实现内驱力维度:声明式动机数据、用户审阅编辑与版本化。
|
||||
- [ ] 实现大周天循环(ADR-023):`BigCycle`(`cycle_`)聚合根、阈值触发与逐角色频率上限、四阶段评估(回顾/对照/提议/提交)、阶段记忆 `_phase_memory`、受托后台 Run 执行;产出人格/关系/世界认知/次生目标候选,演化以版本谱系留痕;用户可关闭并可见每次输入、产物与费用。
|
||||
- [ ] 实现角色、设定、记忆、对话、资产和来源导出。
|
||||
- [ ] 验证导入物不能执行脚本、注册工具或覆盖现有角色。
|
||||
|
||||
## WP-03 多模态分支对话
|
||||
|
||||
- [ ] 实现 Conversation、Branch、Message、引用锚和当前路径。
|
||||
- [ ] 实现统一 ContentBlock 与 Markdown→canonical block 规范化,覆盖 Markdown、代码、数学公式、Mermaid、图片、视频、音频、文件、工具状态和产物。
|
||||
- [ ] 实现文字、图像、视频、音频、文件和混合消息。
|
||||
- [ ] 实现 Block 级 SSE started/delta/progress/completed/failed、重放、去重、对账、中断、取消和错误事件。
|
||||
- [ ] 实现 Web/Tauri 的 Markdown、Shiki、KaTeX、Mermaid、媒体分级实时渲染与安全净化。
|
||||
- [ ] 实现重生成、编辑版本、候答比较和分支移植。
|
||||
- [ ] 实现分支对话交互态:临时芽体、残答封存、续生新节点、引用合流、结题与复照、回响接纳和上下文镜(见统一富内容协议第 9 节)。
|
||||
- [ ] 实现三界与归真作用域:真界/境界/幻境、`canonical_scope` 携带与保留、入境/出境可见、言可入幻行必归真(ADR-020)。
|
||||
- [ ] 实现上下文压缩和 Context Manifest。
|
||||
- [ ] 验证分支隔离、流中断和恢复不伪装完成。
|
||||
|
||||
## WP-04 记忆、知识与检索
|
||||
|
||||
实现边界与验收以[记忆与知识架构](../architecture/memory-and-knowledge.md)为准。
|
||||
|
||||
- [ ] 实现显式记忆与异步自动 MemoryCandidate,按来源 hash 和 extractor version 幂等。
|
||||
- [ ] 大周天评估作为 MemoryCandidate 来源,携带 `big_cycle` 标记并复用审核流转与幂等。
|
||||
- [ ] 实现归真作用域记忆:境界只成世界知识候选、幻境手动入忆标注性质;白名单低风险内容自动写入并附撤销窗。
|
||||
- [ ] 实现角色完整生命周期:静修、归藏(隐藏可恢复)与复照(重开不抹历史)、死亡(冷静期、告别、只读档案、继承承接,与数据删除分离)、铸魂(重大重塑强确认)与初照自陈。
|
||||
- [ ] 实现 Personal Domain/Workspace 二选一所有权、Character 约束和子 Agent 默认只读快照。
|
||||
- [ ] 实现 `fact`、`preference`、`event`、`relationship` 类型及来源、敏感度、置信度和有效期。
|
||||
- [ ] 实现 Candidate 审批与不可变 MemoryVersion;批准事务同时写 Audit 与 Outbox。
|
||||
- [ ] 实现 ETag 并发纠正、取代、恢复、衰减候选、归档、删除墓碑和删除传播。
|
||||
- [ ] 实现 KnowledgeDocument、世界实体和结构化关系;知识与人物经历分离。
|
||||
- [ ] 实现授权/状态预过滤后的 PostgreSQL 全文、pgvector 语义和结构化检索;保留可替换端口。
|
||||
- [ ] 实现 ContextSnapshot 中的召回证据、token/延迟预算、降级原因和用户可见来源。
|
||||
- [ ] 实现索引重建、重复/乱序 Outbox 和删除优先 fail-closed。
|
||||
- [ ] 建立中文、多角色、分支、时间、冲突和多跳评测基线,并固定数据集、模型与检索配置。
|
||||
- [ ] 验证跨用户/角色/Workspace/Conversation/Branch/Run 与已删/过期/撤权/被取代内容召回率为 0;来源 Prompt Injection 和插件输出不能扩大 scope;每个入选项可追溯到当前版本与来源。
|
||||
|
||||
## WP-05 模型网关与运行观测
|
||||
|
||||
- [ ] 实现 OpenAI-compatible 与 Anthropic Messages 适配器。
|
||||
- [ ] 实现逻辑模型、能力目录、Endpoint、路由、重试和故障转移;模型配置继承链(平台硬边界 → 平台目录 → 用户偏好/BYOK → 角色覆写 → 会话临时选择)上层不可被下层覆盖。
|
||||
- [ ] 实现首个可见 delta 后禁止切换 Provider。
|
||||
- [ ] 实现 Prompt Cache 规划和供应商 usage 标准化。
|
||||
- [ ] 持久化 Run、Turn、ModelCall、token、cache、TTFT、成本和错误。
|
||||
- [ ] 实现小周天闭环完成信号:Run 完成时记录归真引用、候选引用、token/费用与时间窗,作为大周天触发的唯一输入面(ADR-023)。
|
||||
- [ ] 实现价格版本、预算、配额和限流。
|
||||
- [ ] 实现普通观测与双重授权诊断接口。
|
||||
- [ ] 验证未知 usage 为 null、OpenAI cache token 不重复计数。
|
||||
|
||||
## WP-06 Agent、工具与多 Agent
|
||||
|
||||
- [ ] 实现 Agent Definition、Run/Turn 状态机和事件流。
|
||||
- [ ] 实现计划、RunBudget、暂停、继续、取消和结果验收。
|
||||
- [ ] 实现内置工具、MCP、Skill 和 Tool Registry。
|
||||
- [ ] 实现 Schema 校验、Policy、确认、幂等和 ToolCall 诊断。
|
||||
- [ ] 实现 Coordinator、ChildRun、并行调度和结构化 Handoff。
|
||||
- [ ] 实现深度、并发、token、费用、时间和权限硬上限。
|
||||
- [ ] 实现 Sandbox Worker,缺少隔离时 fail closed。
|
||||
- [ ] 验证子 Agent 权限单调收窄和副作用不重复执行。
|
||||
|
||||
## WP-07 插件 SDK、Runtime 与 Registry
|
||||
|
||||
- [ ] 实现全部插件类型的统一 Manifest 和 API version。
|
||||
- [ ] 实现 contribution、typed hook、reversible effect 和依赖注入。
|
||||
- [ ] 实现 Run PluginSnapshot、drain、停用、升级和回滚。
|
||||
- [ ] 实现声明式/远程插件受限 Runtime。
|
||||
- [ ] 实现可信本地代码插件的独立进程/容器 Runtime。
|
||||
- [ ] 实现 TypeScript/Python SDK、模拟 Host、测试与打包工具。
|
||||
- [ ] 实现 Registry、签名、扫描、审核、举报、撤架和兼容性。
|
||||
- [ ] 实现插件搜索、安装、权限确认、启停、升级和卸载。
|
||||
- [ ] 实现 UI 扩展隔离和消息协议。
|
||||
- [ ] 验证购买/安装不自动启用或授予新权限。
|
||||
|
||||
## WP-08 语音、多语言与图像
|
||||
|
||||
- [ ] 实现 ASR、TTS、语言检测、字幕和多语言对话。
|
||||
- [ ] 实现 WebSocket 实时语音、打断、弱网和取消。
|
||||
- [ ] 实现声音预设、原创设计、授权克隆和撤回。
|
||||
- [ ] 实现文生图、图生图、局部重绘、分层和角色一致性。
|
||||
- [ ] 实现媒体任务、进度、取消、重试、来源和许可。
|
||||
- [ ] 实现界面国际化、时区、数字、货币和 RTL 基础能力。
|
||||
- [ ] 验证声音/肖像授权、媒体删除和多语言安全策略;原音频短期缓存、转写正影并存、多说话者匿名分段与声纹独立同意;关闭全部多模态后文字相伴完整可用。
|
||||
|
||||
## WP-09 Live2D 与 3D
|
||||
|
||||
- [ ] 实现 Cubism-compatible 导入、校验、参数/表情/物理/动作映射。
|
||||
- [ ] 实现 Live2D 分层辅助、可视化编辑、预览、运行和导出。
|
||||
- [ ] 实现 VRM/glTF 导入、验证和标准化。
|
||||
- [ ] 实现 3D 材质、纹理、骨骼、表情、动作和附件编辑。
|
||||
- [ ] 实现场景、灯光、相机、环境和动画状态编辑。
|
||||
- [ ] 实现 Web/Tauri Live2D 与 3D Runtime 和标准导出。
|
||||
- [ ] 实现资产命令历史、版本、来源和许可。
|
||||
- [ ] 验证弱设备降级、资源上限和恶意模型文件。
|
||||
|
||||
## WP-10 Web、桌面、移动与感知
|
||||
|
||||
- [ ] 实现响应式 Web 的全部核心功能。
|
||||
- [ ] 实现 Tauri v2 桌面应用、更新、存储和安全 Capability。
|
||||
- [ ] 实现 Tauri v2 iOS/Android 应用和平台签名发布。
|
||||
- [ ] 实现文件、相机、麦克风、屏幕、位置和通知能力。
|
||||
- [ ] 实现 DeviceGrant、采集指示、期限、暂停、撤销和删除。
|
||||
- [ ] 实现加密离线缓存和联网恢复;不创建独立角色副本。
|
||||
- [ ] 验证平台权限、后台限制、丢失设备撤权和本地数据清除。
|
||||
|
||||
## WP-11 完整社区与角色社区
|
||||
|
||||
- [ ] 实现用户主页、关注、屏蔽和可见性。
|
||||
- [ ] 实现动态、作品、评论、回复、点赞、收藏、标签和分享。
|
||||
- [ ] 实现角色、世界、知识、工作流、媒体和插件发布页面。
|
||||
- [ ] 实现搜索、话题、趋势、推荐、推荐解释和重置。
|
||||
- [ ] 实现举报、审核、年龄分级、限流、移除和申诉。
|
||||
- [ ] 实现来源、署名、许可、Fork 谱系和下架传播。
|
||||
- [ ] 实现通知和创作者安全工具。
|
||||
- [ ] 验证私密角色数据不会进入社区发布物或推荐特征。
|
||||
|
||||
## WP-12 协作空间
|
||||
|
||||
- [ ] 实现 Workspace、成员、邀请和 RBAC。
|
||||
- [ ] 实现角色、世界、知识、工作流和资产的分支与版本。
|
||||
- [ ] 实现评论、评审、批准、合并和活动记录。
|
||||
- [ ] 实现文本/场景协同编辑与冲突处理。
|
||||
- [ ] 分离编辑、发布、市场上架和财务权限。
|
||||
- [ ] 验证成员移除、链接泄露、并发覆盖和跨 Workspace 访问。
|
||||
|
||||
## WP-13 市场、支付与结算
|
||||
|
||||
- [ ] 实现免费/付费 Listing、版本、许可、地区、税类和交付摘要。
|
||||
- [ ] 实现购物车或直接购买、Order/OrderItem 和价格快照。
|
||||
- [ ] 集成支付 Provider 与客户端确认流程。
|
||||
- [ ] 实现 Webhook 验签、时间窗、乱序和幂等处理。
|
||||
- [ ] 实现 Refund、Dispute、Entitlement 和下载/更新策略。
|
||||
- [ ] 实现不可变 Ledger、平台费、创作者应付、税、准备金和冲正。
|
||||
- [ ] 实现 CreatorBalance、SettlementBatch、PayoutAttempt 和对账单。
|
||||
- [ ] 实现 KYC/税务/发票 Provider 引用和创作者结算设置。
|
||||
- [ ] 实现每日支付/订单/Ledger/结算自动对账。
|
||||
- [ ] 验证金额篡改、重复付款、重复退款、拒付和结算失败恢复。
|
||||
- [ ] 实现保全态与计费伦理:欠费/封禁只读保全不删数据;不按记忆、感情或亲密计费;BYOK 不重复计费(ADR-021)。
|
||||
|
||||
## WP-14 运营、自托管与发布收口
|
||||
|
||||
- [ ] 实现管理面、支持工单、脱敏支持包和诊断授权。
|
||||
- [ ] 实现内容、插件、角色和市场治理队列。
|
||||
- [ ] 实现 PostgreSQL、Redis、对象存储、Worker 和 Sandbox 部署。
|
||||
- [ ] 实现个人单机与标准服务器 Docker Compose 自托管。
|
||||
- [ ] 实现迁移、备份、恢复、删除重放和插件撤架演练。
|
||||
- [ ] 实现 SLO、指标、告警、容量、成本和事故响应;验证 SLO 99.9%、RPO≤5 分钟、RTO≤1 小时目标与 PersonalDomain 区域驻留不跨区漂移。
|
||||
- [ ] 完成富内容 XSS/URL/SVG/公式宏/资源耗尽、可访问性、国际化、弱网、性能和跨端测试。
|
||||
- [ ] 验证双层文化名在导航、状态、审批、设备和交易界面同时提供直白解释,且未进入稳定协议值。
|
||||
- [ ] 完成隐私、社区规范、版权、支付、退款、结算和税务决策。
|
||||
- [ ] 生成每条需求到实现、调用点、测试和运行证据的发布矩阵。
|
||||
- [ ] 确认所有文档 TODO 和代码占位已关闭,正式标记 1.0。
|
||||
|
||||
## WP-15 灵台引擎与多语言绑定
|
||||
|
||||
实现边界与验收以[灵台引擎架构](../architecture/lingtai-engine.md)、[Lingtai C ABI](../contracts/lingtai-ffi.md)和 [Lingtai Service](../contracts/lingtai-service.md) 为准。
|
||||
|
||||
- [ ] 建立 C++23/CMake 工程与交叉编译矩阵,产出 `libhunjing` 动态/静态库与单一公共头。
|
||||
- [ ] 实现 `hj_core`(太一总枢):ABI/服务版本协商、句柄表、跨形态统一入口、Run/Turn 状态转换校验、事件 `sequence` 与错误上下文。
|
||||
- [ ] 实现 `hj_transform`:Markdown → canonical ContentBlock 确定性解析、数学定界符与 Mermaid fenced 提取、parser version;含 fuzz。
|
||||
- [ ] 实现 `hj_stream`:流事件编码、`delta_index`、去重键、节流与重放缓冲。
|
||||
- [ ] 实现 `hj_policy`:分层递进的 Schema 子集校验、路径/URL 校验、HMAC 验签、幂等键规范化、决策表评估。
|
||||
- [ ] 实现 `hj_plan`:计划 DAG 校验、RunBudget 核算、Context Manifest 裁剪排序。
|
||||
- [ ] 实现 `hj_recall`:只读离线混合索引、重排打分与多路合并;索引删除与授权变化随宿主重建。
|
||||
- [ ] 实现 Python(nanobind)、Rust(bindgen + 安全包装)、Go(cgo)官方绑定与发布物。
|
||||
- [ ] 实现 `hunjing-lingtai-server` 独立服务形态:gRPC 契约、mTLS、限流/超时/背压、健康检查与审计。
|
||||
- [ ] 实现宿主"引擎 Port":进程内与服务两个实现可按部署配置切换,业务语义不变。
|
||||
- [ ] 接入宿主真实调用点:WP-03 消息规范化与 SSE、WP-06 工具校验、WP-13 Webhook 验签、WP-10 离线检索。
|
||||
- [ ] 建立 sanitizer、fuzz、ABI 快照与双形态 golden 一致性测试;验证引擎缺失或服务不可达时宿主 fail closed。
|
||||
|
||||
## 已确认 2.0 TODO
|
||||
|
||||
以下内容不属于 1.0,不得混入 1.0 完成判定:
|
||||
|
||||
- [ ] 评估并选定可复用的开源 3D 建模项目。
|
||||
- [ ] 完善为网格、雕刻、拓扑、绑定和专业动画完整建模器。
|
||||
- [ ] 实现 LLM 对完整 3D 几何和绑定的可验证修改。
|
||||
- [ ] 设计 IoT、机器人和物理动作控制安全边界。
|
||||
Reference in new issue
Block a user