# WorkBuddy 无项目归属对话实测(2026-10-08) ## 1. 环境与检查范围 应用为 WorkBuddy.exe 5.7.6,通过原生 Electron CDP 9223 检查真实侧栏、既有独立对话、新建任务页、工作空间选择菜单和“保存到工作空间”弹窗。另只读检查本地 SQLite 与安装包对应处理代码。 未发送消息、执行工具、保存工作空间、移动任务、归档或删除数据。打开的保存弹窗已取消;结论区分实际 UI/数据观察和未执行的代码路径。 ## 2. 无项目归属不代表无目录 本地 `sessions` 分别保存: ```text project_id 项目归属,可为空 cwd 实际本地工作目录 is_playground 区分自动目录的独立任务与工作空间任务 transport 本地/云端执行来源 group_id 另一种分组字段,不能等同于 project_id ``` 当前未删除的样本共有 15 条本地会话,10 条 `project_id IS NULL`: | 类别 | 数量 | 实测结果 | |---|---:|---| | 自动目录独立任务 | 9 | is_playground=1;cwd 为用户 WorkBuddy 根目录下的时间戳目录 | | 已有目录工作空间任务 | 1 | is_playground=0;cwd 为已有本地目录,project_id 仍为空 | 检查的目录均存在;不是靠一个隐藏的项目 ID 为这些任务兜底。当前 Ygent 的独立任务绑定隐藏 task 级项目,与这个本地会话模型不同。 ## 3. 侧栏按任务形态展示 - 自动目录独立任务显示在“任务 (9)”分组;当前 DOM 挂载前 5 条,另有“查看更多 (4)”。挂载数不能当作总数。 - 已有目录工作空间任务放在“空间”分组的目录名称下面。 - 两个真正有项目 ID 的项目也显示在“空间”分组中,因此“空间”不是“所有会话都有项目归属”的证据。 - 侧栏没有为无项目归属任务显示一个“未归类项目”。 ## 4. 新建任务如何取得目录 新建任务页的输入区默认显示“选择工作空间”。展开后可以选择已登记目录、新建工作空间或打开本地文件夹。 静态代码确认:未选择目录时,前端将 selectedCwd 留空并使用 isPlayground=true;选择目录时使用该目录并设 isPlayground=false。 后端的 `workspaceGenerateDefaultCwd` 解析默认根目录,再创建以 `YYYY-MM-DD-HH-mm-ss` 命名的目录;同名时尝试其他时间戳,确保新目录唯一。默认根目录可来自应用配置,通常位于用户主目录的品牌文件夹下。 这个自动创建路径与现有会话目录吻合。本次没有新发消息触发创建,故不把创建的准确时点、失败交互或工具运行过程记为动态实测通过。 ## 5. “保存到工作空间”不是“归入项目” 既有独立任务的右键菜单实测含:置顶、重命名、分享任务、在独立窗口中打开、保存到工作空间、打开文件夹、批量操作、归档和删除任务。 “保存到工作空间”弹窗要求填写工作空间名称,并说明可持续使用对话和文件、同时开展多个任务。 对应代码路径: 1. 校验名称及重名/系统保留名。 2. 调用 conversations.move(taskId, 原 cwd, transport)。 3. 为原 cwd 设置工作空间显示名。 4. 将前端任务 isPlayground 更新为 false,刷新列表。 这里没有传入目标 projectId,也不是选择云端项目的归类弹窗。调用仍传入原 cwd;本次没有点击保存,未实测 move 的所有后端文件副作用。 在当前独立本地任务菜单中没有看到“归入项目”入口,不能据此断言其他来源或版本绝对不存在该能力。 ## 6. 持久化与清理边界 独立任务已有本地 SQLite 会话记录,工作目录真实存在,旧任务能重新打开。“未保存到工作空间”不能解释成“不保存聊天”或“关闭立即清除文件”。 清理周期、归档/删除是否清理目录、任务恢复时的全部执行状态、本地任务归入云端项目等路径均未实测。 ## 7. 给 Ygent 的参考与后续落地 以下来自调研建议。后续已在 [项目概念约定](ygent-project-space.md) 和 [实施方案](ygent-project-implementation.md) 明确 Ygent 自身规则,包括归属调整保留实际目录;这些实现选择不属于 WorkBuddy 实测结论。 - 无项目归属对话可以保留 projectId=null,显示在“任务”列表,不必制造“未归类”项目或展示隐藏项目。 - 未指定目录时为该任务准备独立托管目录;任务本身持久化,项目归属与实际 cwd 分开记录。 - 以后归入 Ygent 项目时,应单独定义是否沿用原目录、项目指令从何时生效、文件如何处理,不能只改 projectId 就暗中搬文件或切换执行目录。 - 当前不必照搬 WorkBuddy 的“保存到工作空间”产品入口;Ygent 已采用 [项目+工作目录定义](ygent-project-space.md),需要保持术语简单。 原始采集及静态片段位于用户私有 `.ygent/imports/render-audit-20261008/`。参见 [WorkBuddy 项目概念](workbuddy-project-concept-2026-10-08.md)。