chore: 导入旧记忆备份供恢复
This commit is contained in:
+20
@@ -0,0 +1,20 @@
|
||||
---
|
||||
title: Checkpoint 2026-09-09 09:50:17 UTC [2fda06ee5e]
|
||||
type: checkpoint
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/checkpoint-2026-09-09-09-50-17-utc-2fda06ee5e
|
||||
stable_id: 6710d22f-fe2b-4d09-b266-504e3c52cca8
|
||||
scope: project
|
||||
memory_type: checkpoint
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 1
|
||||
request_id: utu-20260909-docs-milestone-01
|
||||
created_at: '2026-09-09T09:50:17.985709+00:00'
|
||||
updated_at: '2026-09-09T09:50:17.985709+00:00'
|
||||
tags:
|
||||
- 需求
|
||||
- 文档
|
||||
---
|
||||
|
||||
2026-09-09 文档整理里程碑:E:\code\UTU 初始为空且不是Git仓库,没有remote/branch/commit,MemRelay项目解析为新建created=true。已建立 README.md、docs/需求清单.md、docs/开发文档.md、docs/决策与待确认事项.md,文档版本0.1讨论稿。保留32项需求(含产品规则)、8条确认记录、14组开放问题;安全要求按用户澄清记录,固定密码路径保留;未把共享MD扩成实时共同编辑或多对一扩成同时输入。开发文档为需求映射、设计事项、接口记录模板和验证方向,不存在技术选型或代码实现。已回读文档,下一步完成独立内容复核、MemRelay文件归档和最终交接。
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
---
|
||||
title: Checkpoint 2026-09-09 09:51:56 UTC [a7550c83a9]
|
||||
type: checkpoint
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/checkpoint-2026-09-09-09-51-56-utc-a7550c83a9
|
||||
stable_id: ec5bf866-912f-43eb-87d6-ec56f11e44b1
|
||||
scope: project
|
||||
memory_type: checkpoint
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 1
|
||||
request_id: utu-20260909-docs-final-01
|
||||
created_at: '2026-09-09T09:51:56.521907+00:00'
|
||||
updated_at: '2026-09-09T09:51:56.521907+00:00'
|
||||
tags:
|
||||
- 需求
|
||||
- 文档
|
||||
- 交接
|
||||
---
|
||||
|
||||
## 已完成
|
||||
2026-09-09,在 E:\code\UTU 建立文档讨论基线:README.md 为入口,docs/需求清单.md 为32条产品/安全/功能需求及验收方向,docs/开发文档.md 为需求映射、设计待办、接口记录模板、验证方向,docs/决策与待确认事项.md 为8条用户确认记录与14组开放问题。版本0.1为讨论稿,不是完整定稿PRD。用户要求先写文档、沿确认目标推进,不能擅自安排MVP/裁剪功能/排期或开始实现。
|
||||
|
||||
## 关键边界
|
||||
团队自建内用,通常2-10人但无10人硬上限;全部原始功能保留。端到端加密业务内容,抵御被攻破服务器及链路中间人获取明文,抵御中间人未经授权远控健康客户端,已被攻破个人终端不在范围。运行元数据可见可接受,断开后不得永久残留;断开定义、清理时限/范围及群组等持久关系仍待定。远控明确授权、支持固定密码输入直接进入、被控状态可见。多对一并发输入、一对多批量操作、主动中断具体行为未确认;共享目录与MD管理未等同实时协同编辑。技术栈、平台、部署均未定。
|
||||
|
||||
## 验证与文件
|
||||
已回读4份Markdown,并经独立只读复核,无对话一致性修改项。8个本地链接有效、32个需求编号唯一、14组问题引用有定义;.gitignore包含aidocs/。本轮没有程序实现,因此未执行产品功能或安全测试。MemRelay项目d401bdbe-e9c0-4de8-aa0f-48b983de7c80本轮新建created=true;已保存rule da45c537-a8b6-4ce3-9dee-e357743d802b和prd 53c75110-9bbf-4d65-b148-af0201e732fb。文档ZIP已HTTP PUT并由file_upload_status确认为completed:file_id=cfc4155b-888c-45a7-bfcb-cccbdb3875b6,路径utu/utu-docs-discussion-20260909-v0.1.zip,SHA256=bacae58491bb3988a8cc981be94e91d094aacdec1696f79ae90efb8ce3481595。本地无Git仓库、remote、branch或commit,未初始化Git。aidocs通过project_export_prepare生成。
|
||||
|
||||
## 下一步与零上下文交接
|
||||
先解析同一项目并读context/checkpoint,然后阅读README、需求清单及决策与待确认事项。继续由用户选择要讨论的部分,逐项回答Q-01至Q-14并补齐PRD和设计,用户未明确答复的条目维持待确认;不要求用户一次回答全部问题。验收方向是助手整理草案,不是用户逐项审定;此前助手建议的技术栈及版本划分没有被采纳。用户最初提及历史任务01a08011-42a5-7fa1-9948-3a31b5992887;此前读取结果有多轮空items,不能声称已完整核对或据此推断只讨论Artveris,本轮文档仅使用当前可见用户发言。若引入历史内容须继续核对原始发言。没有运行服务、代码任务或临时产品约定需要接手。
|
||||
@@ -0,0 +1,29 @@
|
||||
---
|
||||
title: Checkpoint 2026-09-09 09:52:44 UTC
|
||||
type: checkpoint
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/checkpoint-2026-09-09-09-52-44-utc
|
||||
stable_id: d55c5ff5-6c2a-40a8-bf81-03a83e78fff9
|
||||
scope: project
|
||||
memory_type: checkpoint
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 1
|
||||
request_id: 22ac5a31f879c3ddc531ae8fd912ab233f80dec0
|
||||
created_at: '2026-09-09T09:52:44.645364+00:00'
|
||||
updated_at: '2026-09-09T09:52:44.645364+00:00'
|
||||
tags:
|
||||
- source-submit
|
||||
---
|
||||
|
||||
## 已完成
|
||||
2026-09-09,在 E:\code\UTU 建立文档讨论基线:README.md 为入口,docs/需求清单.md 为32条产品/安全/功能需求及验收方向,docs/开发文档.md 为需求映射、设计待办、接口记录模板、验证方向,docs/决策与待确认事项.md 为8条用户确认记录与14组开放问题。版本0.1为讨论稿,不是完整定稿PRD。用户要求先写文档、沿确认目标推进,不能擅自安排MVP/裁剪功能/排期或开始实现。
|
||||
|
||||
## 关键边界
|
||||
团队自建内用,通常2-10人但无10人硬上限;全部原始功能保留。端到端加密业务内容,抵御被攻破服务器及链路中间人获取明文,抵御中间人未经授权远控健康客户端,已被攻破个人终端不在范围。运行元数据可见可接受,断开后不得永久残留;断开定义、清理时限/范围及群组等持久关系仍待定。远控明确授权、支持固定密码输入直接进入、被控状态可见。多对一并发输入、一对多批量操作、主动中断具体行为未确认;共享目录与MD管理未等同实时协同编辑。技术栈、平台、部署均未定。
|
||||
|
||||
## 验证与文件
|
||||
已回读4份Markdown,并经独立只读复核,无对话一致性修改项。8个本地链接有效、32个需求编号唯一、14组问题引用有定义;.gitignore包含aidocs/。本轮没有程序实现,因此未执行产品功能或安全测试。MemRelay项目d401bdbe-e9c0-4de8-aa0f-48b983de7c80本轮新建created=true;已保存rule da45c537-a8b6-4ce3-9dee-e357743d802b和prd 53c75110-9bbf-4d65-b148-af0201e732fb。文档ZIP已HTTP PUT并由file_upload_status确认为completed:file_id=cfc4155b-888c-45a7-bfcb-cccbdb3875b6,路径utu/utu-docs-discussion-20260909-v0.1.zip,SHA256=bacae58491bb3988a8cc981be94e91d094aacdec1696f79ae90efb8ce3481595。本地无Git仓库、remote、branch或commit,未初始化Git。aidocs通过project_export_prepare生成。
|
||||
|
||||
## 下一步与零上下文交接
|
||||
先解析同一项目并读context/checkpoint,然后阅读README、需求清单及决策与待确认事项。继续由用户选择要讨论的部分,逐项回答Q-01至Q-14并补齐PRD和设计,用户未明确答复的条目维持待确认;不要求用户一次回答全部问题。验收方向是助手整理草案,不是用户逐项审定;此前助手建议的技术栈及版本划分没有被采纳。用户最初提及历史任务01a08011-42a5-7fa1-9948-3a31b5992887;此前读取结果有多轮空items,不能声称已完整核对或据此推断只讨论Artveris,本轮文档仅使用当前可见用户发言。若引入历史内容须继续核对原始发言。没有运行服务、代码任务或临时产品约定需要接手。
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
---
|
||||
title: Checkpoint 2026-09-09 10:06:07 UTC [e973df19f3]
|
||||
type: checkpoint
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/checkpoint-2026-09-09-10-06-07-utc-e973df19f3
|
||||
stable_id: 3be32895-a3f0-47c5-8338-845a95c7271e
|
||||
scope: project
|
||||
memory_type: checkpoint
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 1
|
||||
request_id: utu-20260909-relay-final-01
|
||||
created_at: '2026-09-09T10:06:07.149665+00:00'
|
||||
updated_at: '2026-09-09T10:06:07.149665+00:00'
|
||||
tags:
|
||||
- 文档
|
||||
- 交接
|
||||
- 服务器中转
|
||||
---
|
||||
|
||||
## 本轮变更
|
||||
2026-09-09,用户在询问WebRTC选型状态后明确:不依靠P2P传输,数据走服务器中转。已将文档更新为0.2讨论稿:README、docs/需求清单.md、docs/开发文档.md、docs/决策与待确认事项.md。新增SYS-06与D-009/S5,全部业务数据经服务器中转,客户端之间不走P2P直连;覆盖聊天、实时语音、远程画面与控制、投屏、白板、共享目录/MD传输,重连和同网段也不能切换直连。业务内容仍发送端加密、中转密文、接收端解密。同步补充中转路径验证草案和Q-12至Q-14的中转容量、部署与选型约束。WebRTC和具体中转组件仍未选定。
|
||||
|
||||
## 验证和持久化
|
||||
回读所有新增中转相关条目,33项需求编号唯一,4份Markdown内部链接检查通过;只有文档变更,没有产品代码或运行验证。decision记忆bca7c991-5eaa-4b05-9694-ce71dac93a5e revision1已保存。0.2文档ZIP已HTTP PUT并确认completed:file_id=32f06d91-6668-4da8-8338-8b53cfbf7391,path=utu/utu-docs-discussion-20260909-v0.2.zip,SHA256=aa3f8d6fc988b22be12551ad3f211fd84185d111e33cc12b6462bf95d69c2a99;0.1归档保留历史。目录E:\code\UTU仍无.git,因此branch/commit/remote/dirty不适用,未初始化仓库。
|
||||
|
||||
## 接续说明
|
||||
继续沿文档需求讨论。先读README和三份docs,最新确认是强制服务器中转;不要重新把P2P直连或直连优先作为候选。不要把该确认等同采用WebRTC/TURN/SFU或更改E2EE安全边界。Q-01至Q-14其余待定项尚未回答,不擅自裁剪功能、安排MVP/排期或开始实现。元数据断开后的清理规则仍待细化;共享MD没有确认实时共同编辑;多方远控的输入仲裁仍待定。用户给出的历史任务尚未完整可靠复核,如需采用须核对原始发言。后续按MemRelay项目d401bdbe-e9c0-4de8-aa0f-48b983de7c80读取最新context/checkpoint并同步aidocs;本轮没有服务或临时产品约定遗留。
|
||||
+20
@@ -0,0 +1,20 @@
|
||||
---
|
||||
title: Checkpoint 2026-09-10 01:32:12 UTC [f9e9227693]
|
||||
type: checkpoint
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/checkpoint-2026-09-10-01-32-12-utc-f9e9227693
|
||||
stable_id: 7647afa7-b85c-4c01-8164-ebe654635350
|
||||
scope: project
|
||||
memory_type: checkpoint
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 1
|
||||
request_id: utu-20260910-modular-milestone-01
|
||||
created_at: '2026-09-10T01:32:12.322312+00:00'
|
||||
updated_at: '2026-09-10T01:32:12.322312+00:00'
|
||||
tags:
|
||||
- 文档拆分
|
||||
- 按需读取
|
||||
---
|
||||
|
||||
2026-09-10文档拆分里程碑:按用户S6要求建立0.3模块化文档,根总需求只保留SYS目标与范围,公共约束分安全与传输、身份与生命周期、平台与部署;聊天(含实时语音)、远程控制、屏幕共享、共享白板、共享文档各有需求/设计与关系/决策与待确认三文件。建立跨模块REL01..06正反向索引、D/Q路由索引、按需读取维护指南、简短AGENTS.md;旧需求清单留导航。33项原需求表逐行比对零差异,14组问题和原9决定保留,新增D010只记录文档组织规则。初次校验25Markdown/233链接有效,问题和决定全文归属唯一;独立语义审阅通过。进一步优化SYS06引用直达主文档,接下来完成最终链接复核、0.3文件仓储归档和交接。产品技术方案与实现仍未开始。
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
---
|
||||
title: Checkpoint 2026-09-10 01:33:54 UTC [618a2725e5]
|
||||
type: checkpoint
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/checkpoint-2026-09-10-01-33-54-utc-618a2725e5
|
||||
stable_id: 84278c60-e42d-4938-9966-2b452132bec9
|
||||
scope: project
|
||||
memory_type: checkpoint
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 1
|
||||
request_id: utu-20260910-modular-final-01
|
||||
created_at: '2026-09-10T01:33:54.229149+00:00'
|
||||
updated_at: '2026-09-10T01:33:54.229149+00:00'
|
||||
tags:
|
||||
- 文档拆分
|
||||
- 按需读取
|
||||
- 交接
|
||||
---
|
||||
|
||||
## 完成与原因
|
||||
2026-09-10按用户明确要求把UTU需求和开发文档拆为按模块读取的0.3结构,减少每次读取无关细节及跨模块改动遗漏。E:\code\UTU仍处于需求/设计讨论阶段,无产品代码、未初始化Git;branch/commit/remote/dirty不适用。
|
||||
|
||||
## 文件结构及正文归属
|
||||
README.md为入口;新增简短AGENTS.md约定按需读取与同步。docs/总需求.md维护SYS-01..06和全局摘要;docs/公共约束/安全与传输.md维护SEC-01..06/Q-03;身份与生命周期.md维护SEC-07/Q-02/Q-04;平台与部署.md维护Q-01/Q-12..14。聊天、远程控制、屏幕共享、共享白板、共享文档5目录各有需求.md、设计与关系.md、决策与待确认.md;聊天包含即时语音,未单独裁剪。模块需求分别为CHAT-01..08、RC-01..06、SHARE-01..02、BOARD-01、DOC-01..03。Q-05/Q-06归聊天,Q-07/Q-08及D-007归远控,Q-09归屏幕共享,Q-10归白板,Q-11及D-008归共享文档。根决策与待确认事项.md保留来源S1..S6、全局决定和D/Q路由。跨模块关系.md定义REL-01..06的主文档、消费者和反向入口;待确认联动不会被认定为已选代码依赖。开发文档.md变为阅读维护指南,支持以后按实际内容再拆接口、模型、流程、验收专题。旧需求清单.md留兼容导航,全文已迁走,不继续维护两份需求。
|
||||
|
||||
## 已确认与未确认
|
||||
新增D-010只记录用户文档组织要求,不新增产品功能。坚持团队内用、完整原始范围、客户端E2EE、全量服务器中转无P2P直连(也无直连备用)、固定密码远控路径与被控状态可见。WebRTC、平台、技术栈、元数据清理细则、MD实时协同、多方远控输入均仍待定,不擅自MVP/排期/开始实现。
|
||||
|
||||
## 验证和归档
|
||||
旧0.2的33项需求表逐行比较零差异;33需求、14问题正文、10决定正文(原9+文档组织1)各有唯一归属,编号引用完整。独立语义审阅通过;最终25份Markdown的248个本地链接通过检查。.gitignore保持aidocs/。仅文档验证,无产品运行或安全验证。0.3 ZIP含25Markdown与.gitignore共26条目,不含aidocs;已PUT并file_upload_status确认completed。file_id=0c51d5a8-37b9-40f0-a2d0-432d22a76af2,path=utu/utu-docs-discussion-20260910-v0.3.zip,SHA256=839da8ccbcb683ce8a2e4e3b28ba2b5cf1d135cc7fda259d760c2e6690e08323。用户文档规则已存memory be70faf7-5c02-4b4b-94ef-406f0aea7b90 revision1。0.1/0.2文件仓储归档保留历史。
|
||||
|
||||
## 下一步与零上下文交接
|
||||
新会话解析项目d401bdbe-e9c0-4de8-aa0f-48b983de7c80,读取context和最新checkpoint,然后先读总需求和目标模块需求;不要默认递归读取docs/aidocs/历史。涉设计读本模块设计,确认行为读本模块问题;涉及加密、成员、清理、中转等必须按REL索引补公共正文及消费者相关部分。每次变更先改唯一正文,查关系影响并记录关联文件的修改/无需修改理由/未完成项,再更新索引和MemRelay。后续由用户选择继续敲定的模块,未答问题保留待确认。用户提供的历史任务01a08011-42a5-7fa1-9948-3a31b5992887尚未完整可靠复核,不能把此前助手概括当事实。无运行服务、未完成代码任务或临时产品协议。
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
---
|
||||
title: Checkpoint 2026-09-10 09:30:37 UTC [104ba452b3]
|
||||
type: checkpoint
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/checkpoint-2026-09-10-09-30-37-utc-104ba452b3
|
||||
stable_id: f55270f4-db00-4f4e-8268-ea43c65be68c
|
||||
scope: project
|
||||
memory_type: checkpoint
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 1
|
||||
request_id: utu-20260910-chat-r1-handoff-01
|
||||
created_at: '2026-09-10T09:30:37.068973+00:00'
|
||||
updated_at: '2026-09-10T09:30:37.068973+00:00'
|
||||
tags:
|
||||
- 聊天
|
||||
- 需求讨论
|
||||
- 交接
|
||||
---
|
||||
|
||||
2026-09-10进入聊天与语音板块逐项讨论。用户明确参考更接近Telegram,聚焦一对一/多人/群聊天;异步答复已确认“多人文字聊天就是群聊,不区分”。已在docs/聊天三文件更新交互参考及会话关系,并在本模块决策文件保存D-011;根决策索引新增S7与D-011路由。文字会话为私聊与群聊,原CHAT-01..08含文本/图片/表情包/语音消息及一对一/多人即时语音均保留。Telegram仅为交互参考,非协议/服务端/安全机制选型;强制服务器中转与客户端E2EE不变。
|
||||
验证:回读新条目,变更4文件的本地链接有效,8条CHAT需求保留;无产品代码或运行测试。MemRelay decision=978f6906-3417-487d-b93c-f5cc831f4b17 revision=2;完整文档快照utu/utu-docs-20260910-chat-r1.zip(结构0.3,内容0.3-chat-r1)已PUT并确认completed,file_id=526adad5-3c2a-4b9d-b7d7-5e7e303660d7,SHA256=4cf01b3b708e89fd04fd8d815eae2efe8296794c6447bf96c9d6a81d64f8b3e2。E:\code\UTU无.git,Git状态不适用。
|
||||
交接:继续当前聊天板块。已经提出下一条产品问题“同一团队成员能否直接私聊,还是需好友申请”,目前未收到答复,不作默认选择。助手倾向直接私聊只是建议,不能写为用户决定。答案将影响聊天Q-05和公共身份Q-02,需要确认后同步本模块与公共约束的相应条目,再继续群组织、消息保存/投递和语音规则;不得一次替用户敲定所有细节。尚未敲定聊天历史、离线、多端、撤回/搜索/附件、群管理、语音呼叫方式、技术方案。按需读取总需求、聊天需求/问题,涉及公共规则才读相应文件;其他模块不需要全量加载。当前无实现、服务或临时产品协议。
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
---
|
||||
title: Checkpoint 2026-09-10 10:06:03 UTC [485f294fa6]
|
||||
type: checkpoint
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/checkpoint-2026-09-10-10-06-03-utc-485f294fa6
|
||||
stable_id: 088d6f24-caa7-4e04-b216-e6bd12c2b7b6
|
||||
scope: project
|
||||
memory_type: checkpoint
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 1
|
||||
request_id: utu-20260910-chat-storage-milestone-01
|
||||
created_at: '2026-09-10T10:06:03.326251+00:00'
|
||||
updated_at: '2026-09-10T10:06:03.326251+00:00'
|
||||
tags:
|
||||
- 聊天
|
||||
- 保存清理
|
||||
- 需求确认
|
||||
---
|
||||
|
||||
聊天保存与离线投递本轮已形成D012/D013与CHAT09..16。用户确认本地加密、从发出时间起算;Redis只存未送达密文,重启/送达/到期/发送方删除触发清理;时长修改立即重算已有本地及未送达数据;最新群聊跟群设置,个人不覆盖。已同步聊天专题、模块需求/设计/决定和11个相关入口或公共文件;移除先前群成员各用个人TTL的设计推导。待完成文档归档与最终交接;送达回执点、群设置权限、多设备/离线同步、重试等细则仍待定。
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
---
|
||||
title: Checkpoint 2026-09-10 10:07:48 UTC [edcfdd2a6e]
|
||||
type: checkpoint
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/checkpoint-2026-09-10-10-07-48-utc-edcfdd2a6e
|
||||
stable_id: 60d90c85-e1f9-46da-af79-625c491541f8
|
||||
scope: project
|
||||
memory_type: checkpoint
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 1
|
||||
request_id: utu-20260910-chat-storage-final-01
|
||||
created_at: '2026-09-10T10:07:48.130882+00:00'
|
||||
updated_at: '2026-09-10T10:07:48.130882+00:00'
|
||||
tags:
|
||||
- 聊天
|
||||
- Redis
|
||||
- 群设置
|
||||
- 交接
|
||||
---
|
||||
|
||||
## 本轮已确认
|
||||
2026-09-10继续聊天板块,用户优先讨论记录保留而未回答此前私聊是否需好友申请。新增D-012(本地记录静态加密与可配自动清理)和D-013(Redis未送达缓存/期限)。服务器不保存聊天历史,仅Redis临时保存未送达密文。服务器/服务重启须丢弃;送达、到期、未送达时发送方删除消息,都删除对应线上密文。自动删除从消息发出时间起算,用户原文明确“毕竟这个自动清理聊天记录是根据消息发出时间而定的”。私聊线上期限采用接收方个人保留时长;用户最新明确群聊跟群设置,个人设置不覆盖群聊。本地群记录与线上群未送达均用群设置。适用保留时长改变后,已有相关本地记录和Redis未送达密文立即重算清理,不只对新消息生效。
|
||||
群聊逐成员的送达状态仍需分别维护,但不能再用各成员个人设置计算群消息TTL。此前这一设计推导已移除并在本地变更记录说明。
|
||||
|
||||
## 文档与验证
|
||||
新增docs/聊天/记录保存与清理.md作为保存/离线/删除细节入口;CHAT扩为01..16,全项目41需求;D共13条。更新聊天需求、设计、决定和总需求/根索引/README/公共安全、身份、部署/关系索引共11文件。Redis成为已确认缓存组件,其余技术(包括WebRTC、本地数据库和加密方案)待定。设计列明独立Redis时消息服务重启必须使旧队列失效,不能只靠关闭持久化;避免重试复活已删/过期/重启丢弃的投递,具体机制未定。没有运行Redis或改代码。
|
||||
内容及编号核对通过,初次全量文档链接检查266个有效;群设置修正后的11文件链接再检通过,CHAT16编号唯一,无旧群个体TTL规则。共26Markdown。审阅代理对本地起点曾提示来源问题,已用上引用户原句澄清;群保留以后来的用户明确答复为准。仅文档验证,没有产品运行或安全测试。
|
||||
|
||||
## 持久化
|
||||
memory=be959d28-f0c6-4e40-b550-7db4d3234602 revision=3;memory=2b1ec63f-c259-43c3-9df3-9e571c1e2cc1 revision=2。完整文档快照utu/utu-docs-20260910-chat-r2.zip已PUT并确认completed,file_id=1dcd7ed9-6f47-4c23-a37d-9131ef1a551c,SHA256=8e41d9ee5bec2bfe2d14e9bb0d55c584eb9f6ddfd3fe6dda6ac1aa9da6b92675,文档结构0.3/内容0.3-chat-r2。E:\code\UTU无.git,branch/commit/remote/dirty不适用;未初始化Git。
|
||||
|
||||
## 下一步及零上下文交接
|
||||
按需读总需求、聊天需求/决策和记录保存与清理专题,继续逐条确认。下一条可讨论“送达”的准确回执点:客户端验证并成功加密保存后回执是助手建议,尚未确认;不能把服务端收包或已读默认为送达。还待群保留设置修改权限、私聊个人设置按账号或设备、多设备送达、发送方离线删除与到达竞态、手动/自动删除取消投递细则、离线设置同步、客户端关机后的清理补偿、历史迁移/备份、重试及主动重发。不要自动添加已送达消息撤回,不擅自锁定算法/架构或开发排期。之前团队成员能否直接私聊尚未回答,暂搁置而非已否决。其它模块保留规则未改变;所有业务仍经服务器中转、客户端E2EE。无运行服务或临时实现待接手。
|
||||
@@ -0,0 +1,22 @@
|
||||
---
|
||||
title: UTU Redis未送达缓存:私聊按接收方设置,群聊按群设置计算期限
|
||||
type: decision
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/utu-redis-未送达缓存私聊按接收方设置群聊按群设置计算期限
|
||||
stable_id: 2b1ec63f-c259-43c3-9df3-9e571c1e2cc1
|
||||
scope: project
|
||||
memory_type: decision
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 2
|
||||
request_id: utu-20260910-chat-redis-delivery-02
|
||||
created_at: '2026-09-10T09:55:08.158811+00:00'
|
||||
updated_at: '2026-09-10T10:05:04.040104+00:00'
|
||||
tags:
|
||||
- 聊天
|
||||
- Redis
|
||||
- 群保留设置
|
||||
- 离线投递
|
||||
---
|
||||
|
||||
2026-09-10用户明确允许Redis临时缓存未送达密文;服务器重启或服务重启须丢弃,送达/到期删除线上副本;未送达时发送方删除消息也同步删除线上。聊天记录自动清理从消息发出时间起算(用户原句:毕竟这个自动清理聊天记录是根据消息发出时间而定的)。私聊线上未送达期限为消息发出时间加接收方个人设置的保留时长;用户进一步明确群聊跟群设置走,而不是个人,因此群聊记录及未送达密文按群保留时长,个人设置不覆盖群聊。适用保留时长变更后,已有本地记录和Redis未送达密文立即按新设置重算并清理。禁止通过持久化/重启恢复继续投递旧队列。Redis为已确认缓存组件,其余技术方案待定。
|
||||
@@ -0,0 +1,20 @@
|
||||
---
|
||||
title: UTU先确认需求和开发文档,再沿确认目标推进
|
||||
type: rule
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/utu-先确认需求和开发文档再沿确认目标推进
|
||||
stable_id: da45c537-a8b6-4ce3-9dee-e357743d802b
|
||||
scope: project
|
||||
memory_type: rule
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 1
|
||||
request_id: utu-20260909-docs-rule-01
|
||||
created_at: '2026-09-09T09:44:33.680543+00:00'
|
||||
updated_at: '2026-09-09T09:44:33.680543+00:00'
|
||||
tags:
|
||||
- 需求
|
||||
- 工作规则
|
||||
---
|
||||
|
||||
用户明确要求先写需求清单和开发文档,后续沿这些目标及逐步敲定的细节推进,避免偏离目标。当前是需求整理阶段;不要擅自提出最小可用版本、裁剪功能、排开发阶段或开始实现。助手提出的架构、技术栈和产品细节不等于用户确认。文档应区分用户已确认要求与待讨论事项。
|
||||
@@ -0,0 +1,21 @@
|
||||
---
|
||||
title: UTU全部数据通过服务器中转,客户端之间不走P2P直连
|
||||
type: decision
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/utu-全部数据通过服务器中转客户端之间不走-p2-p-直连
|
||||
stable_id: bca7c991-5eaa-4b05-9694-ce71dac93a5e
|
||||
scope: project
|
||||
memory_type: decision
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 1
|
||||
request_id: utu-20260909-server-relay-decision-01
|
||||
created_at: '2026-09-09T10:04:12.881723+00:00'
|
||||
updated_at: '2026-09-09T10:04:12.881723+00:00'
|
||||
tags:
|
||||
- 网络架构
|
||||
- 服务器中转
|
||||
- 需求边界
|
||||
---
|
||||
|
||||
2026-09-09用户明确:我们不依靠P2P传输,也就是数据走服务器中转。确定传输拓扑为客户端→服务器中转→客户端,覆盖聊天、实时语音、远程控制画面与指令、投屏、白板与共享文档;不以客户端P2P直连作为传输路径。此前已确认的E2EE业务内容要求继续适用,中转服务器不能取得业务明文或解密能力。运行元数据可见及断开后不永久留存按已有边界执行。这里只确认服务器中转边界,不代表WebRTC或具体中转组件已选定。
|
||||
@@ -0,0 +1,21 @@
|
||||
---
|
||||
title: UTU团队自建协作系统已明确的功能与安全目标
|
||||
type: prd
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/utu-团队自建协作系统已明确的功能与安全目标
|
||||
stable_id: 53c75110-9bbf-4d65-b148-af0201e732fb
|
||||
scope: project
|
||||
memory_type: prd
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 1
|
||||
request_id: utu-20260909-prd-01
|
||||
created_at: '2026-09-09T09:44:35.365607+00:00'
|
||||
updated_at: '2026-09-09T09:44:35.365607+00:00'
|
||||
tags:
|
||||
- 需求
|
||||
- 安全边界
|
||||
- UTU
|
||||
---
|
||||
|
||||
项目目录 E:\code\UTU,UTU为当前工作名称。团队自行搭建供团队内成员使用,通常2-10人,不设10人产品硬上限,非大众共享一个服务的系统。要求:端到端加密,交互业务数据在发送客户端离开前加密,仅接收客户端解密,防止被攻破的服务器及路由器/链路中间人获得明文,防止中间人未经授权控制客户端;个人终端本身已被攻破不在防护范围。服务器运行时看到连接时间、IP、成员/房间关系、流量大小可以接受,断开后这些信息不得在服务器永久残留,具体清理时机和范围尚未敲定。功能:一对一/群聊,文本/图片/表情包/语音消息,一对一及多人即时语音(参考微信/QQ);一对一/一对多/多对一远程控制(参考ToDesk/向日葵/谷歌远程),明确授权,允许设置固定密码并输入密码直接进入,被控端显示远程协作状态;一对一/多人远程共享及投屏(参考Google Meet/腾讯会议);多人共享白板(参考WBO/小白桌);共同访问一个存储空间,对目录和MD文件增删改查、下载。参考产品是交互参考,不代表照搬全部功能或技术栈。没有确认共享MD必须支持多人实时协同编辑。
|
||||
@@ -0,0 +1,21 @@
|
||||
---
|
||||
title: UTU文档按模块拆分,按需读取并索引跨模块变更影响
|
||||
type: rule
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/utu-文档按模块拆分按需读取并索引跨模块变更影响
|
||||
stable_id: be70faf7-5c02-4b4b-94ef-406f0aea7b90
|
||||
scope: project
|
||||
memory_type: rule
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 1
|
||||
request_id: utu-20260910-modular-docs-rule-01
|
||||
created_at: '2026-09-10T01:20:21.435409+00:00'
|
||||
updated_at: '2026-09-10T01:20:21.435409+00:00'
|
||||
tags:
|
||||
- 文档结构
|
||||
- 按需读取
|
||||
- 跨模块影响
|
||||
---
|
||||
|
||||
2026-09-10用户明确希望开发文档拆分为总需求文档和各板块文件夹(聊天、屏幕共享、共享白板、共享文档等,远程控制同属目标范围)。每个目录存放该模块的细节需求、已敲定设计、关系及细节,逐步形成需求与开发细节大全。开发哪个模块就读取哪个模块的需求及必要依赖,避免一次读全部导致token浪费和上下文膨胀。开发过程变动及影响后续模块的地方应能快速定位并同步修改。保持已确认、待确认和设计草案区分,不借拆分敲定产品细节。
|
||||
@@ -0,0 +1,21 @@
|
||||
---
|
||||
title: UTU本地聊天记录加密,私聊个人设置与群聊群设置控制自动删除
|
||||
type: decision
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/utu-本地聊天记录加密私聊个人设置与群聊群设置控制自动删除
|
||||
stable_id: be959d28-f0c6-4e40-b550-7db4d3234602
|
||||
scope: project
|
||||
memory_type: decision
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 3
|
||||
request_id: utu-20260910-chat-local-history-03
|
||||
created_at: '2026-09-10T09:50:05.491885+00:00'
|
||||
updated_at: '2026-09-10T10:05:07.755626+00:00'
|
||||
tags:
|
||||
- 聊天记录
|
||||
- 本地加密
|
||||
- 群保留设置
|
||||
---
|
||||
|
||||
2026-09-10用户确认服务器不保存聊天历史,本地记录加密并支持自行设定保留时长自动删除;从消息发出时间起算,保留设置改变立即重算已有本地记录和Redis未送达密文。后续明确群聊跟群设置走,而不是个人:个人保留设置不覆盖群聊,群聊本地记录与线上未送达密文均采用群保留时长;私聊保留个人设置规则,线上缓存按接收方时长。服务端仅允许D013范围内的Redis未送达密文临时缓存,不存历史。
|
||||
@@ -0,0 +1,21 @@
|
||||
---
|
||||
title: UTU聊天板块以Telegram为主要交互参考,文字会话分私聊与群聊
|
||||
type: decision
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/utu-聊天板块以-telegram-为主要交互参考文字会话分私聊与群聊
|
||||
stable_id: 978f6906-3417-487d-b93c-f5cc831f4b17
|
||||
scope: project
|
||||
memory_type: decision
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 2
|
||||
request_id: utu-20260910-chat-telegram-decision-02
|
||||
created_at: '2026-09-10T09:27:42.572098+00:00'
|
||||
updated_at: '2026-09-10T09:28:56.066183+00:00'
|
||||
tags:
|
||||
- 聊天
|
||||
- 需求确认
|
||||
- Telegram参考
|
||||
---
|
||||
|
||||
2026-09-10用户要求逐板块讨论敲定,先聊天和语音通讯。用户明确:此前说功能参考微信/QQ,其实更像Telegram,聚焦一对一/多人/群聊天,避免其他无关功能。随后用户确认“多人聊天”和“群聊天”不区分:多人文字聊天就是群聊。因此文字会话区分一对一私聊和群聊,不单独定义临时多人文字会话类型。原已确认文本、图片、表情包、语音消息及一对一/多人即时语音保留;服务器强制中转和E2EE继续适用。Telegram仅为交互参考,不代表采用其协议、后端、安全机制或全部功能。
|
||||
@@ -0,0 +1,79 @@
|
||||
---
|
||||
title: UTU Project Timeline
|
||||
type: curated
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/curated/utu-project-timeline
|
||||
stable_id: 9f21584d-0305-4e77-a44f-3aeb42807c0f
|
||||
scope: project
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
workspace_type: development
|
||||
usage_profile_id: null
|
||||
preference_context: development
|
||||
document_type: timeline
|
||||
revision: 4
|
||||
source_memory_ids:
|
||||
- 2b1ec63f-c259-43c3-9df3-9e571c1e2cc1
|
||||
- be959d28-f0c6-4e40-b550-7db4d3234602
|
||||
source_checkpoint_ids:
|
||||
- 088d6f24-caa7-4e04-b216-e6bd12c2b7b6
|
||||
- 60d90c85-e1f9-46da-af79-625c491541f8
|
||||
source_file_ids:
|
||||
- 1dcd7ed9-6f47-4c23-a37d-9131ef1a551c
|
||||
- checkpoint:60d90c85-e1f9-46da-af79-625c491541f8
|
||||
- file:1dcd7ed9-6f47-4c23-a37d-9131ef1a551c
|
||||
- memory:2b1ec63f-c259-43c3-9df3-9e571c1e2cc1
|
||||
- memory:be959d28-f0c6-4e40-b550-7db4d3234602
|
||||
source_git_commit: null
|
||||
source_git_commits: []
|
||||
source_agent_sync_ids:
|
||||
- utu-20260910-chat-storage-curation-01
|
||||
model_connection: Sub2API
|
||||
model_name: openai/gpt-oss-20b
|
||||
source_count: 27
|
||||
source_revisions:
|
||||
memory:6710d22f-fe2b-4d09-b266-504e3c52cca8: '1'
|
||||
memory:ec5bf866-912f-43eb-87d6-ec56f11e44b1: '1'
|
||||
memory:d55c5ff5-6c2a-40a8-bf81-03a83e78fff9: '1'
|
||||
memory:bca7c991-5eaa-4b05-9694-ce71dac93a5e: '1'
|
||||
memory:da45c537-a8b6-4ce3-9dee-e357743d802b: '1'
|
||||
memory:3be32895-a3f0-47c5-8338-845a95c7271e: '1'
|
||||
source_dispositions:
|
||||
processed: 27
|
||||
unchanged: 0
|
||||
unsupported: 0
|
||||
skipped: 0
|
||||
cited_source_ids:
|
||||
- curated_baseline:9f21584d-0305-4e77-a44f-3aeb42807c0f
|
||||
- curated_baseline:37130337-7aba-4f00-b6c7-6f39e14c0ef0
|
||||
- curated_baseline:626d0811-d35d-4f25-8d0c-e93f994fe6f0
|
||||
- memory:6710d22f-fe2b-4d09-b266-504e3c52cca8
|
||||
- memory:ec5bf866-912f-43eb-87d6-ec56f11e44b1
|
||||
- memory:d55c5ff5-6c2a-40a8-bf81-03a83e78fff9
|
||||
- memory:bca7c991-5eaa-4b05-9694-ce71dac93a5e
|
||||
- memory:da45c537-a8b6-4ce3-9dee-e357743d802b
|
||||
- memory:3be32895-a3f0-47c5-8338-845a95c7271e
|
||||
job_cited_source_ids:
|
||||
- curated_baseline:9f21584d-0305-4e77-a44f-3aeb42807c0f
|
||||
conflicts: []
|
||||
supersedes: []
|
||||
preferences: []
|
||||
source_cursor: 551
|
||||
source_hash: 51232dc5987856310695767b128058622b282fcb65a16681a6af25f086440b64
|
||||
prompt_version: 2026-08-12.3
|
||||
schema_version: '3'
|
||||
curation_job_id: 1d20898d-9abf-4955-93d6-8070a61dc456
|
||||
created_at: '2026-09-09T10:29:11.400393+00:00'
|
||||
updated_at: '2026-09-10T10:24:54.730215+00:00'
|
||||
tags:
|
||||
- 时间线
|
||||
---
|
||||
|
||||
# UTU 项目时间轴
|
||||
|
||||
| 时间 | 事件 | 备注 |
|
||||
|------|------|------|
|
||||
| 2026‑09‑09 09:43:44 UTC | 项目创建 | - |
|
||||
| 2026‑09‑09 09:50:17 UTC | 0.1 讨论稿完成 | - |
|
||||
| 2026‑09‑09 10:04:12 UTC | 决策:服务器中转 | - |
|
||||
| 2026‑09‑10 01:32:12 UTC | Checkpoint 0.3 记录 | 早期记录 |
|
||||
| 2026‑09‑10 01:33:54 UTC | Checkpoint 0.3 记录(覆盖前者) | 当前记录 |
|
||||
| 2026‑09‑10 01:33:56 UTC | 上传 0.3 ZIP | - |
|
||||
@@ -0,0 +1,72 @@
|
||||
---
|
||||
title: UTU 已确认决策
|
||||
type: curated
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/curated/utu-已确认决策
|
||||
stable_id: 626d0811-d35d-4f25-8d0c-e93f994fe6f0
|
||||
scope: project
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
workspace_type: development
|
||||
usage_profile_id: null
|
||||
preference_context: development
|
||||
document_type: decisions
|
||||
revision: 4
|
||||
source_memory_ids:
|
||||
- 2b1ec63f-c259-43c3-9df3-9e571c1e2cc1
|
||||
- be959d28-f0c6-4e40-b550-7db4d3234602
|
||||
source_checkpoint_ids:
|
||||
- 088d6f24-caa7-4e04-b216-e6bd12c2b7b6
|
||||
- 60d90c85-e1f9-46da-af79-625c491541f8
|
||||
source_file_ids:
|
||||
- 1dcd7ed9-6f47-4c23-a37d-9131ef1a551c
|
||||
- checkpoint:60d90c85-e1f9-46da-af79-625c491541f8
|
||||
- file:1dcd7ed9-6f47-4c23-a37d-9131ef1a551c
|
||||
- memory:2b1ec63f-c259-43c3-9df3-9e571c1e2cc1
|
||||
- memory:be959d28-f0c6-4e40-b550-7db4d3234602
|
||||
source_git_commit: null
|
||||
source_git_commits: []
|
||||
source_agent_sync_ids:
|
||||
- utu-20260910-chat-storage-curation-01
|
||||
model_connection: Sub2API
|
||||
model_name: openai/gpt-oss-20b
|
||||
source_count: 27
|
||||
source_revisions:
|
||||
memory:3be32895-a3f0-47c5-8338-845a95c7271e: '1'
|
||||
memory:bca7c991-5eaa-4b05-9694-ce71dac93a5e: '1'
|
||||
memory:6710d22f-fe2b-4d09-b266-504e3c52cca8: '1'
|
||||
memory:d55c5ff5-6c2a-40a8-bf81-03a83e78fff9: '1'
|
||||
source_dispositions:
|
||||
processed: 27
|
||||
unchanged: 0
|
||||
unsupported: 0
|
||||
skipped: 0
|
||||
cited_source_ids:
|
||||
- curated_baseline:626d0811-d35d-4f25-8d0c-e93f994fe6f0
|
||||
- memory:3be32895-a3f0-47c5-8338-845a95c7271e
|
||||
- memory:bca7c991-5eaa-4b05-9694-ce71dac93a5e
|
||||
- memory:6710d22f-fe2b-4d09-b266-504e3c52cca8
|
||||
- memory:d55c5ff5-6c2a-40a8-bf81-03a83e78fff9
|
||||
job_cited_source_ids:
|
||||
- curated_baseline:626d0811-d35d-4f25-8d0c-e93f994fe6f0
|
||||
conflicts: []
|
||||
supersedes: []
|
||||
preferences: []
|
||||
source_cursor: 551
|
||||
source_hash: 51232dc5987856310695767b128058622b282fcb65a16681a6af25f086440b64
|
||||
prompt_version: 2026-08-12.3
|
||||
schema_version: '3'
|
||||
curation_job_id: 1d20898d-9abf-4955-93d6-8070a61dc456
|
||||
created_at: '2026-09-09T10:29:04.278256+00:00'
|
||||
updated_at: '2026-09-10T10:24:51.198044+00:00'
|
||||
tags:
|
||||
- 决策
|
||||
- 关键
|
||||
---
|
||||
|
||||
# UTU 关键决策
|
||||
|
||||
- **服务器中转(SYS‑06)**:所有业务数据通过服务器中转,客户端之间不使用 P2P 直连。
|
||||
- **端到端加密(SEC‑01)**:发送端加密,接收端解密;服务器仅转发密文。
|
||||
- **元数据可见性(SEC‑06、SEC‑07)**:服务器可见连接时间、IP、成员关系等,断开后不得永久保留。
|
||||
- **KISS & YAGNI**:遵循最简正确实现,复用现有框架,避免为未来假设需求添加依赖。
|
||||
|
||||
以上决策均基于用户确认的业务需求,并在后续决策文档中得到确认。
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
title: UTU 文档和进度当前状态
|
||||
type: curated
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/curated/utu-文档和进度当前状态
|
||||
stable_id: 37130337-7aba-4f00-b6c7-6f39e14c0ef0
|
||||
scope: project
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
workspace_type: development
|
||||
usage_profile_id: null
|
||||
preference_context: development
|
||||
document_type: current_state
|
||||
revision: 4
|
||||
source_memory_ids:
|
||||
- 2b1ec63f-c259-43c3-9df3-9e571c1e2cc1
|
||||
- be959d28-f0c6-4e40-b550-7db4d3234602
|
||||
source_checkpoint_ids:
|
||||
- 088d6f24-caa7-4e04-b216-e6bd12c2b7b6
|
||||
- 60d90c85-e1f9-46da-af79-625c491541f8
|
||||
source_file_ids:
|
||||
- 1dcd7ed9-6f47-4c23-a37d-9131ef1a551c
|
||||
- checkpoint:60d90c85-e1f9-46da-af79-625c491541f8
|
||||
- file:1dcd7ed9-6f47-4c23-a37d-9131ef1a551c
|
||||
- memory:2b1ec63f-c259-43c3-9df3-9e571c1e2cc1
|
||||
- memory:be959d28-f0c6-4e40-b550-7db4d3234602
|
||||
source_git_commit: null
|
||||
source_git_commits: []
|
||||
source_agent_sync_ids:
|
||||
- utu-20260910-chat-storage-curation-01
|
||||
model_connection: Sub2API
|
||||
model_name: openai/gpt-oss-20b
|
||||
source_count: 27
|
||||
source_revisions:
|
||||
memory:3be32895-a3f0-47c5-8338-845a95c7271e: '1'
|
||||
source_dispositions:
|
||||
processed: 27
|
||||
unchanged: 0
|
||||
unsupported: 0
|
||||
skipped: 0
|
||||
cited_source_ids:
|
||||
- curated_baseline:37130337-7aba-4f00-b6c7-6f39e14c0ef0
|
||||
- curated_baseline:9f21584d-0305-4e77-a44f-3aeb42807c0f
|
||||
- project:d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
- memory:3be32895-a3f0-47c5-8338-845a95c7271e
|
||||
job_cited_source_ids:
|
||||
- curated_baseline:37130337-7aba-4f00-b6c7-6f39e14c0ef0
|
||||
conflicts: []
|
||||
supersedes: []
|
||||
preferences: []
|
||||
source_cursor: 551
|
||||
source_hash: 51232dc5987856310695767b128058622b282fcb65a16681a6af25f086440b64
|
||||
prompt_version: 2026-08-12.3
|
||||
schema_version: '3'
|
||||
curation_job_id: 1d20898d-9abf-4955-93d6-8070a61dc456
|
||||
created_at: '2026-09-09T10:29:09.419533+00:00'
|
||||
updated_at: '2026-09-10T10:24:52.636719+00:00'
|
||||
tags:
|
||||
- 状态
|
||||
---
|
||||
|
||||
# 文档当前状态
|
||||
|
||||
| 文档 | 版本 | 上传状态 |
|
||||
| ---- | ---- | ---- |
|
||||
| README.md | 0.3 | 完成 |
|
||||
| docs/需求清单.md | 0.3 | 完成 |
|
||||
| docs/开发文档.md | 0.3 | 完成 |
|
||||
| docs/决策与待确认事项.md | 0.3 | 完成 |
|
||||
|
||||
共 25 Markdown 已通过 MemRelay 的文件上传状态审核。
|
||||
@@ -0,0 +1,85 @@
|
||||
---
|
||||
title: UTU 未决问题列表
|
||||
type: curated
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/curated/utu-未决问题列表
|
||||
stable_id: 4e25bae5-1cc3-48a6-bad4-4c0b954a875d
|
||||
scope: project
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
workspace_type: development
|
||||
usage_profile_id: null
|
||||
preference_context: development
|
||||
document_type: tasks
|
||||
revision: 4
|
||||
source_memory_ids:
|
||||
- 2b1ec63f-c259-43c3-9df3-9e571c1e2cc1
|
||||
- be959d28-f0c6-4e40-b550-7db4d3234602
|
||||
source_checkpoint_ids:
|
||||
- 088d6f24-caa7-4e04-b216-e6bd12c2b7b6
|
||||
- 60d90c85-e1f9-46da-af79-625c491541f8
|
||||
source_file_ids:
|
||||
- 1dcd7ed9-6f47-4c23-a37d-9131ef1a551c
|
||||
- checkpoint:60d90c85-e1f9-46da-af79-625c491541f8
|
||||
- file:1dcd7ed9-6f47-4c23-a37d-9131ef1a551c
|
||||
- memory:2b1ec63f-c259-43c3-9df3-9e571c1e2cc1
|
||||
- memory:be959d28-f0c6-4e40-b550-7db4d3234602
|
||||
source_git_commit: null
|
||||
source_git_commits: []
|
||||
source_agent_sync_ids:
|
||||
- utu-20260910-chat-storage-curation-01
|
||||
model_connection: Sub2API
|
||||
model_name: openai/gpt-oss-20b
|
||||
source_count: 27
|
||||
source_revisions:
|
||||
memory:3be32895-a3f0-47c5-8338-845a95c7271e: '1'
|
||||
memory:bca7c991-5eaa-4b05-9694-ce71dac93a5e: '1'
|
||||
memory:84278c60-e42d-4938-9966-2b452132bec9: '1'
|
||||
memory:7647afa7-b85c-4c01-8164-ebe654635350: '1'
|
||||
memory:be70faf7-5c02-4b4b-94ef-406f0aea7b90: '1'
|
||||
source_dispositions:
|
||||
processed: 27
|
||||
unchanged: 0
|
||||
unsupported: 0
|
||||
skipped: 0
|
||||
cited_source_ids:
|
||||
- curated_baseline:4e25bae5-1cc3-48a6-bad4-4c0b954a875d
|
||||
- memory:84278c60-e42d-4938-9966-2b452132bec9
|
||||
- memory:7647afa7-b85c-4c01-8164-ebe654635350
|
||||
- memory:be70faf7-5c02-4b4b-94ef-406f0aea7b90
|
||||
- memory:3be32895-a3f0-47c5-8338-845a95c7271e
|
||||
- memory:bca7c991-5eaa-4b05-9694-ce71dac93a5e
|
||||
job_cited_source_ids:
|
||||
- curated_baseline:4e25bae5-1cc3-48a6-bad4-4c0b954a875d
|
||||
conflicts: []
|
||||
supersedes: []
|
||||
preferences: []
|
||||
source_cursor: 551
|
||||
source_hash: 51232dc5987856310695767b128058622b282fcb65a16681a6af25f086440b64
|
||||
prompt_version: 2026-08-12.3
|
||||
schema_version: '3'
|
||||
curation_job_id: 1d20898d-9abf-4955-93d6-8070a61dc456
|
||||
created_at: '2026-09-09T10:29:06.775689+00:00'
|
||||
updated_at: '2026-09-10T10:24:56.426170+00:00'
|
||||
tags:
|
||||
- 任务
|
||||
---
|
||||
|
||||
# 当前待讨论与待确认事项(Q‑01~Q‑14)
|
||||
|
||||
| 任务编号 | 主题 | 需确定细节 | 影响 |
|
||||
|----------|------|------------|------|
|
||||
| **Q‑01** | 客户端平台与形态 | 桌面/移动/浏览器支持 | 远控实现、SDK 设计 |
|
||||
| **Q‑02** | 成员、身份与设备 | 加入团队、账号管理、多设备 | 访问控制、权限 |
|
||||
| **Q‑03** | 加密内容、身份与密钥 | 目录/文件名加密、对端身份 | 整体安全设计 |
|
||||
| **Q‑04** | 断开与数据保留 | 清理时限、日志范围 | 元数据清理 |
|
||||
| **Q‑05** | 聊天细节 | 历史保留、离线、撤回 | 消息模型、存储 |
|
||||
| **Q‑06** | 即时语音行为 | 呼叫方式、群聊、重连 | 语音会话 |
|
||||
| **Q‑07** | 远控授权与密码 | 固定密码路径、验证方式 | 远控授权 |
|
||||
| **Q‑08** | 远控操作语义 | 多对一、并发输入等 | 控制权管理 |
|
||||
| **Q‑09** | 共享投屏边界 | 内容、声音、并发路数 | 投屏会话 |
|
||||
| **Q‑10** | 白板能力 | 绘图工具、撤销 | 白板同步 |
|
||||
| **Q‑11** | 目录与 MD 行为 | 同步编辑、历史 | 文件模型 |
|
||||
| **Q‑12** | 自建环境与运维 | 服务器硬件、网络 | 运维部署 |
|
||||
| **Q‑13** | 验收环境与性能 | 人数、网络、延迟 | 性能验收 |
|
||||
| **Q‑14** | 实现与分发路线 | 技术栈、许可 | 技术选型 |
|
||||
|
||||
这些任务在 Q‑01~Q‑14 范围内进行细化确认,并同步到相应模块的需求与设计文件中。
|
||||
@@ -0,0 +1,132 @@
|
||||
---
|
||||
title: UTU 项目概览
|
||||
type: curated
|
||||
permalink: main/projects/d401bdbe-e9c0-4de8-aa0f-48b983de7c80/curated/utu-项目概览
|
||||
stable_id: f126f031-641e-442d-b210-0d5deca53913
|
||||
scope: project
|
||||
project_id: d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
workspace_type: development
|
||||
usage_profile_id: null
|
||||
preference_context: development
|
||||
document_type: overview
|
||||
revision: 2
|
||||
source_memory_ids:
|
||||
- be70faf7-5c02-4b4b-94ef-406f0aea7b90
|
||||
source_checkpoint_ids:
|
||||
- 7647afa7-b85c-4c01-8164-ebe654635350
|
||||
- 84278c60-e42d-4938-9966-2b452132bec9
|
||||
source_file_ids:
|
||||
- 0c51d5a8-37b9-40f0-a2d0-432d22a76af2
|
||||
- checkpoint:84278c60-e42d-4938-9966-2b452132bec9
|
||||
- file:0c51d5a8-37b9-40f0-a2d0-432d22a76af2
|
||||
- memory:be70faf7-5c02-4b4b-94ef-406f0aea7b90
|
||||
source_git_commit: null
|
||||
source_git_commits: []
|
||||
source_agent_sync_ids:
|
||||
- utu-20260910-modular-curation-01
|
||||
model_connection: Sub2API
|
||||
model_name: openai/gpt-oss-20b
|
||||
source_count: 25
|
||||
source_revisions:
|
||||
memory:3be32895-a3f0-47c5-8338-845a95c7271e: '1'
|
||||
memory:bca7c991-5eaa-4b05-9694-ce71dac93a5e: '1'
|
||||
memory:d55c5ff5-6c2a-40a8-bf81-03a83e78fff9: '1'
|
||||
memory:ec5bf866-912f-43eb-87d6-ec56f11e44b1: '1'
|
||||
memory:6710d22f-fe2b-4d09-b266-504e3c52cca8: '1'
|
||||
memory:53c75110-9bbf-4d65-b148-af0201e732fb: '1'
|
||||
memory:da45c537-a8b6-4ce3-9dee-e357743d802b: '1'
|
||||
memory:84278c60-e42d-4938-9966-2b452132bec9: '1'
|
||||
memory:7647afa7-b85c-4c01-8164-ebe654635350: '1'
|
||||
memory:be70faf7-5c02-4b4b-94ef-406f0aea7b90: '1'
|
||||
source_dispositions:
|
||||
processed: 25
|
||||
unchanged: 0
|
||||
unsupported: 0
|
||||
skipped: 0
|
||||
cited_source_ids:
|
||||
- memory:84278c60-e42d-4938-9966-2b452132bec9
|
||||
- memory:7647afa7-b85c-4c01-8164-ebe654635350
|
||||
- memory:be70faf7-5c02-4b4b-94ef-406f0aea7b90
|
||||
- project:d401bdbe-e9c0-4de8-aa0f-48b983de7c80
|
||||
- memory:3be32895-a3f0-47c5-8338-845a95c7271e
|
||||
- memory:bca7c991-5eaa-4b05-9694-ce71dac93a5e
|
||||
- memory:d55c5ff5-6c2a-40a8-bf81-03a83e78fff9
|
||||
- memory:ec5bf866-912f-43eb-87d6-ec56f11e44b1
|
||||
- memory:6710d22f-fe2b-4d09-b266-504e3c52cca8
|
||||
- memory:53c75110-9bbf-4d65-b148-af0201e732fb
|
||||
- memory:da45c537-a8b6-4ce3-9dee-e357743d802b
|
||||
- global_guidance_memory:7429c22e-50ff-458a-97c0-423c679904c7
|
||||
- global_guidance_memory:1194be51-ee29-47e1-8957-ec2888007db6
|
||||
- global_guidance_memory:bf88c265-4749-4c50-85bc-4bae25298cd5
|
||||
- global_guidance_document:d3a20d44-6001-4c88-8772-65dbfac75e6e
|
||||
job_cited_source_ids:
|
||||
- memory:84278c60-e42d-4938-9966-2b452132bec9
|
||||
- memory:7647afa7-b85c-4c01-8164-ebe654635350
|
||||
- memory:be70faf7-5c02-4b4b-94ef-406f0aea7b90
|
||||
conflicts:
|
||||
- summary: 多版本 checkpoint 冲突,后者覆盖前者
|
||||
source_ids:
|
||||
- memory:7647afa7-b85c-4c01-8164-ebe654635350
|
||||
- memory:84278c60-e42d-4938-9966-2b452132bec9
|
||||
resolution: latest_explicit_wins
|
||||
supersedes:
|
||||
- summary: Checkpoint 2026‑09‑09 10:06:07 UTC supersedes earlier checkpoints
|
||||
current_source_ids:
|
||||
- memory:3be32895-a3f0-47c5-8338-845a95c7271e
|
||||
superseded_source_ids:
|
||||
- memory:d55c5ff5-6c2a-40a8-bf81-03a83e78fff9
|
||||
- memory:6710d22f-fe2b-4d09-b266-504e3c52cca8
|
||||
- summary: 01:33:54 记录覆盖 01:32:12 记录
|
||||
current_source_ids:
|
||||
- memory:84278c60-e42d-4938-9966-2b452132bec9
|
||||
superseded_source_ids:
|
||||
- memory:7647afa7-b85c-4c01-8164-ebe654635350
|
||||
preferences: []
|
||||
source_cursor: 418
|
||||
source_hash: cb4ea76457050db795e1d8bc81f156bc3f24f3d4215976ee8d5cfdc51ba6c4a3
|
||||
prompt_version: 2026-08-12.3
|
||||
schema_version: '3'
|
||||
curation_job_id: f9a913d6-96c0-4b12-8402-cb13932c6024
|
||||
created_at: '2026-09-09T10:29:02.234451+00:00'
|
||||
updated_at: '2026-09-10T01:53:21.193773+00:00'
|
||||
tags:
|
||||
- 项目概览
|
||||
- 协作系统
|
||||
---
|
||||
|
||||
# UTU 系统概览
|
||||
|
||||
UTU 是团队自行搭建的内部协作系统,目标涵盖 **端到端加密通信、聊天、实时语音、远程控制、屏幕共享、白板、共享目录/Markdown 文件** 等功能。为了控制读写成本与上下文膨胀,文档结构已在 **0.3** 版本中拆分为:
|
||||
|
||||
- **README.md** – 入口,说明整体目标。
|
||||
- **docs/** 目录 – 按模块拆分,包含需求、设计、决策与待确认事项。
|
||||
- **docs/跨模块关系.md** – 记录公共约束与跨模块影响。
|
||||
- **docs/决策与待确认事项.md** – 汇总全局决定、用户确认与待议题。
|
||||
|
||||
此结构仅为文档管理方案,**并不代表已选定任何实现方案或代码架构**。
|
||||
|
||||
## 关键决策
|
||||
|
||||
- 所有业务数据通过服务器中转,点对点传输 **不使用 P2P 直连**(SYS‑06)。
|
||||
- 业务内容在客户端加密后才解密;服务器仅转发密文(SEC‑01)。
|
||||
- 服务器可见 **连接时间、IP、成员关系、房间信息、流量大小**,但断开后不永久保留(SEC‑06、SEC‑07)。
|
||||
|
||||
## 版次说明
|
||||
|
||||
- 2026‑09‑10 **01:33:54** 的 *Checkpoint* 记录了 **0.3** 文档拆分完成及其细节。
|
||||
- 2026‑09‑10 **01:32:12** 的 *Checkpoint* 对应同一版本,但时间更早,内容相同。
|
||||
|
||||
### 版本冲突
|
||||
|
||||
| 记录 | 内容 | 说明 |
|
||||
|---|---|---|
|
||||
| Checkpoint 2026‑09‑10 01:32:12 UTC [f9e9227693] | 0.3 结构拆分 | 早期同版本记录 |
|
||||
| Checkpoint 2026‑09‑10 01:33:54 UTC [618a2725e5] | 0.3 结构拆分 | 更晚更完整,与前者冲突 |
|
||||
|
||||
**解决方案**:后者(01:33:54)为最新有效记录,覆盖前者。
|
||||
|
||||
---
|
||||
|
||||
## 与开发流程的关系
|
||||
|
||||
读写决策与变更记录通过 **docs/开发文档.md** 与 **docs/跨模块关系.md** 进行定位与同步;不需要递归加载整个 `docs/` 目录,实现按需读取与索引。
|
||||
Reference in New Issue
Block a user