diff --git a/.workbuddy/.budget-alert-level b/.workbuddy/.budget-alert-level new file mode 100644 index 0000000..bcc8d9a --- /dev/null +++ b/.workbuddy/.budget-alert-level @@ -0,0 +1 @@ +8a0062cf-9a29-426c-b676-833cb6b5a939 3 \ No newline at end of file diff --git a/.workbuddy/bash-guard.log b/.workbuddy/bash-guard.log new file mode 100644 index 0000000..05d2fe7 --- /dev/null +++ b/.workbuddy/bash-guard.log @@ -0,0 +1 @@ +2026-10-08 18:00:17 entry|event=PreToolUse|in_scope=all(无门禁) diff --git a/.workbuddy/memory/2026-10-08.md b/.workbuddy/memory/2026-10-08.md index db313fc..524e6b5 100644 --- a/.workbuddy/memory/2026-10-08.md +++ b/.workbuddy/memory/2026-10-08.md @@ -110,6 +110,23 @@ - 实测:新任务 `scope=workspace`、新会话 **`is_playground=0`** ✅(对照组仍是 1)。 - 📌 **红线**:工作台凡直接写宿主 `automations` 表,必须带 `workspace_scope='workspace'`,否则会话一律落「未分组任务」。 +## 会话任务链路审计(用户:「看看哪些需要调整」) + +**已修**:4 个轮询点口径统一(此前只有榜单更新一处有容错)。 +- 轮询点 = `app.js executeTask`(通用 AI 任务)/`data-pages` 的榜单更新、批量更新账号、视频解析。 +- 原先 3 处是 `catch(e){continue}`,服务被回收时静默空转 15~35 分钟才超时 ⇒ 用户只看到按钮转圈。现均为「连续 3 次查询失败 → 提示服务断开 → 结束轮询」。 + +**已确认健康(无需改)**: +- 写宿主 `automations` 表**仅 2 处**(`createOnceAutomation` 约 L409、`/api/run` 约 L880),均已带 `workspace_scope`。 +- `submit-review-tasks.cjs`、`check-run-status.cjs` 走 HTTP 接口/只读,不直接写库 ⇒ 自动被修复覆盖。 +- 技能挂载(`skills_json`)、浏览器锁约束、会话清理(`SESSION_CWD_PATTERN='%mcn-work%'` 仍覆盖新 cwd)均正常。 + +**待用户定(各有权衡)**: +1、**任务模型浮动**:`model_id` 取 `sessions` 最近活跃**手动**会话的 model,与 `config.ai.cli.model`(deepseek-v4.1-flash)**无关** ⇒ 同一任务换次数可能换模型,产出不稳定。建议加 `taskModel` 配置(留空=跟随现状,填了=固定)。 +2、**进度面板缺「打开会话」入口**:能看状态但跳不进会话。 +3、**任务权限恒为 `fullAccess`**(可写文件/执行命令):是否收紧取决于任务类型。 +4、**修复前创建的旧会话仍 playground=1**:改库可归位,但需重启 WorkBuddy 才生效。 + ## 素材库补采:批 65 收尾 + 批 66/67 完成(30 卡) - 承 09-29 进度:批 65(细节专业 15 卡)已 apply 完成,细节专业 40→55。 diff --git a/.workbuddy/memory/MEMORY.md b/.workbuddy/memory/MEMORY.md index ee9e9e0..00e1ef0 100644 --- a/.workbuddy/memory/MEMORY.md +++ b/.workbuddy/memory/MEMORY.md @@ -15,6 +15,7 @@ | 工作台 UI | `mcn-workshop/docs/工作台视觉交互规范.md` | | 工作台 AI 通路 | `mcn-workshop/docs/AI链路-本地CLI接入.md` | | 技能侧 WeKnora 调用 | 技能 `references/接口调用/WeKnora_极致事件检索.md` | +| 会话任务链路待优化 | `mcn-workshop/docs/会话任务链路-待优化项.md` | ## 1. 仓库与环境 - 本地 `D:\AI技能\mcn-short-video`;远程 `git@work.alotbuy.com:maogeigei/mcn-short-video.git`。 @@ -29,6 +30,7 @@ - 零依赖 Node,端口 8900。任务 `POST /api/run`(写宿主 automation,once + `now+5s`)→ 轮询 `/api/run/status`;**创作/改写 prompt 必带 `SKILL_HINT_CREATE` 前缀**。配置单源 `config.json`;`.cjs` 无扩展 require → MODULE_NOT_FOUND(配置模块用 `.js`);静态资源根映射,`/public/xxx` 必 404。 - **AI 通路(09-29 起)**:`ai.backend` = `cli`(本地 CodeBuddy CLI,stdio 无端口)|`dify`(旧链路兜底)。**细节全在 §0 权威文档,改动前必读**。四条硬红线: - 🔴 **凭据**:`config.json` 是 git 跟踪文件 → key 只放 `%USERPROFILE%\.workbuddy\mcn-workshop\ai-cli.json`(仓库外,不被技能同步复制)。 + - 🔴 **写宿主任务表必须带 `workspace_scope='workspace'`** —— 漏了该字段会让会话落进「未分组任务」;改目录名、登记工作区表都无效(两条假因已实测排除)。 - 🔴 **`SERVER__PORT` 必须删** —— CLI(含 `-p` 模式)内部起 HTTP server,继承宿主端口即 `EADDRINUSE` **静默卡死**,且 HTTP 层(health/info/sessions)看起来完全正常。**最容易误判的坑**。 - 🔴 **两段流程模型来源不同**:`/api/ai/clarify`(需求打磨)走**本地 CLI**(`ai.cli.model`);`/api/run`(提交创作)走**宿主调度器**,模型取 `sessions` 表最近活跃**手动会话**的 `model`(兜底 `auto`)⇒ **改 `ai.cli.model` 不影响创作任务模型**。 - 🔴 **`custom:` 模型按租户开通**:本机 Key 租户**无 doubao**(500 / `service info not found`);`custom-model-*` 真名从 `%TEMP%\mcn-cli-home\logs\**\*.log` 的 `requestModelId`/`requestModelName` 配对提取(问模型「你是谁」不可靠)。 diff --git a/.workbuddy/reply-style-guard.log b/.workbuddy/reply-style-guard.log new file mode 100644 index 0000000..ccfce71 --- /dev/null +++ b/.workbuddy/reply-style-guard.log @@ -0,0 +1,2 @@ +2026-10-08 17:59:01 entry|sid=8a0062cf|core=1605 字符|源=D:\.workbuddy\skills\session-mechanism\references\03-回复排版-核心块.md +2026-10-08 17:59:01 HIT sid=8a0062cf|4172 字节 diff --git a/.workbuddy/skill-load-guard.log b/.workbuddy/skill-load-guard.log new file mode 100644 index 0000000..c117524 --- /dev/null +++ b/.workbuddy/skill-load-guard.log @@ -0,0 +1 @@ +2026-10-08 17:59:01 entry|event=UserPromptSubmit|in_scope=True|sid=8a0062cf|prompt_len=10 diff --git a/.workbuddy/stop-dialog-guard.log b/.workbuddy/stop-dialog-guard.log new file mode 100644 index 0000000..35ae88e --- /dev/null +++ b/.workbuddy/stop-dialog-guard.log @@ -0,0 +1,2 @@ +2026-10-08 17:59:01 entry|event=UserPromptSubmit|cwd=d:\AI技能\mcn-short-video|in_scope=True|tp=buddy\projects\d-AI技能-mcn-short-video\8a0062cf-9a29-426c-b676-833cb6b5a939.jsonl|keys=agent_type,client,cwd,generation_id,hook_event_name,model,permission_mode,prompt,session_id,transcript_path,version|stdin_len=418 +2026-10-08 17:59:01 invoked(user-prompt)|mode=probe|上轮收尾=征询句:False|上下文=327968 tok(+575)|工具=1382 次|预算告警=True|门禁自检=False|路径自检=False|4、**今天修复前创建的旧会话还在未分组**:改数据库能让它们归位,但要重启 WorkBuddy 才看得到效果,会打断现 diff --git a/project/短视频脚本创作/V1.0/mcn-workshop/docs/会话任务链路-待优化项.md b/project/短视频脚本创作/V1.0/mcn-workshop/docs/会话任务链路-待优化项.md new file mode 100644 index 0000000..34c9e42 --- /dev/null +++ b/project/短视频脚本创作/V1.0/mcn-workshop/docs/会话任务链路-待优化项.md @@ -0,0 +1,44 @@ +# 会话任务链路 · 待优化项 + +> 立档:2026-10-08,来源=工作台「调用会话执行任务」链路审计。 +> 排序:**待优化在前、已修在后**(新的在前)。⛔ 只写进工作区日志的规矩等于没立,故落在这里。 +> 权威口径:工作台提交任务 = 直接写宿主 automations 表(仅两处),见文末红线。 + +## 1、任务用哪个模型是浮动的(未做) + +- 现状:`model_id` 取 sessions 表里最近活跃的**手动**会话的 model,与配置里的 AI 模型**无关**。 +- 影响:同一个任务这次和下次可能跑在不同模型上,产出质量不稳定;你在界面里换模型会连带影响所有后台任务。 +- 建议:新增一个「任务模型」配置项,留空=跟随现状,填了=固定值。改的时候两处写入都要改,别只改一处。 + +## 2、进度面板没有跳转入口(未做) + +- 现状:右下角面板能看到状态、已运行时长、工具调用、最近动作,但想看完整过程还得自己去侧边栏找会话。 +- 建议:面板加一个「打开会话」按钮。前提是能拿到会话标识(状态接口已返回),跳转动作为止未验证过。 + +## 3、任务权限恒为完全权限(未做) + +- 现状:所有任务都按完全权限创建,能写文件、能执行命令。跑本地脚本类任务没问题。 +- 影响:任务提示词若被写错,执行范围不受限。 +- 建议:看你跑的任务类型再定要不要收窄,⚠️ 收窄后依赖写文件的任务会失败。 + +## 4、修复前创建的旧会话仍落在未分组(未做) + +- 现状:本次修复之前创建的会话,分组标记已经是"自动生成的空间",不会自动回到工作区分组。 +- 影响:只影响历史会话,新会话已正常。 +- 建议:改数据库可让它们归位,⚠️ 但需重启 WorkBuddy 才生效,会打断进行中的对话。 + +--- + +## 🔴 红线(已修,⛔ 勿回退) + +- **凡直接写宿主 automations 表,必须带 `workspace_scope='workspace'`**。 + 漏了这个字段 ⇒ 会话被判成"自动生成的空间" ⇒ 一律落进「未分组任务」,改工作目录、登记工作区表都救不回来(两条假因已实测排除)。 +- 两处写入点:通用任务接口、榜单更新任务。新增任何提交入口都要照抄。 + +## 已修(历史) + +- 10-08 · 补齐 workspace_scope:根因是工作台自己写库时漏字段,走正规工具创建的任务都带该值(对比 36 条 vs 5 条)。 +- 10-08 · 四处轮询容错统一:服务被回收时,原本只有榜单那一处会提示,其余三处静默空转 15~35 分钟才超时。 +- 10-08 · 任务进度可见:状态接口产出已运行时长/工具调用/最近动作/停滞判定,右下角常驻面板,四处任务入口接入。 +- 10-08 · 会话归属目录配置化:新增配置项,留空=工作台自身目录。 +- 10-08 · 工作台目录改名(旧名带连字符 → 新名不带),全仓字符串同步。