dsh-taskboard 0.3.3 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +27 -6
- package/lib/client.js +1201 -42
- package/lib/host/execution.js +6 -1
- package/lib/host/execution.js.map +1 -1
- package/lib/host/git.js +95 -2
- package/lib/host/git.js.map +1 -1
- package/lib/host/protocol-text.js +5 -3
- package/lib/host/protocol-text.js.map +1 -1
- package/lib/host/routes.js +184 -2
- package/lib/host/routes.js.map +1 -1
- package/lib/host/store.js +12 -0
- package/lib/host/store.js.map +1 -1
- package/lib/host/templates.js +166 -0
- package/lib/host/templates.js.map +1 -0
- package/lib/host/tools.js +202 -2
- package/lib/host/tools.js.map +1 -1
- package/lib/index.js +7 -2
- package/lib/index.js.map +1 -1
- package/lib/shared/api.js.map +1 -1
- package/lib/shared/protocol.js +277 -1
- package/lib/shared/protocol.js.map +1 -1
- package/package.json +1 -1
- package/src/client/api.ts +28 -0
- package/src/client/board/ImportModal.tsx +182 -0
- package/src/client/board/TaskBoard.tsx +45 -3
- package/src/client/board/TaskCard.tsx +9 -0
- package/src/client/board/TaskDetail.tsx +192 -8
- package/src/client/board/TaskFormModal.tsx +100 -18
- package/src/client/board/TemplateManager.tsx +121 -0
- package/src/client/board-mount.tsx +8 -0
- package/src/client/controller.ts +152 -8
- package/src/client/sidebar-entry.ts +6 -3
- package/src/client/styles.ts +153 -0
- package/src/host/execution.ts +10 -2
- package/src/host/git.ts +77 -0
- package/src/host/protocol-text.ts +5 -3
- package/src/host/routes.ts +215 -0
- package/src/host/store.ts +13 -0
- package/src/host/templates.ts +143 -0
- package/src/host/tools.ts +198 -2
- package/src/index.ts +6 -0
- package/src/shared/api.ts +54 -0
- package/src/shared/protocol.ts +344 -0
- package/src/shared/version.ts +1 -1
package/README.md
CHANGED
|
@@ -18,13 +18,18 @@ DeepSeek Harness 的**任务看板插件**:人建卡、agent 认领执行、
|
|
|
18
18
|
- 任务挂项目:认领校验会话归属,跨项目不可抢
|
|
19
19
|
- 紧急度三色(紧急/一般/不急)筛选与色条;搜索(标题/ID)与列内排序,筛选排序持久化
|
|
20
20
|
- 列头状态色圆点:待规划灰 / 待办蓝 / 进行中橙 / 待验收紫 / 已完成绿 / 已删除红
|
|
21
|
-
- 新建/编辑弹窗:项目、模型、紧急度、执行方式、cron
|
|
22
|
-
- 详情面板:状态流转(done
|
|
21
|
+
- 新建/编辑弹窗:项目、模型、紧急度、执行方式、cron 实时校验与下次运行预览、执行隔离开关、验收清单编辑
|
|
22
|
+
- 详情面板:状态流转(done 仅限人工;清单未全勾时完成需二次确认并显示未勾数)、agent/用户评论流、执行记录(倒序,最新在最上;会话 ID 点击跳转打开该执行会话;已删除/已归档分开提示)、停止执行、Worktree 隔离块(分支 / 提交 / 改动统计 / 合并与清理)、执行报告块、验收清单块
|
|
23
23
|
- 待验收列卡片快捷操作:「✓ 完成」一键验收、「✗ 退回」退回待办并可附退回原因(agent 开工前会读)
|
|
24
|
+
- **验收清单 DoD(0.4.0)**:建卡时定验收条件(≤30 项);agent 用 `taskboard_checklist` 增补/勾选(附证据 note);用户在详情页直接勾选;待验收时未完成项红色高亮 + 卡片「☑ n/m」角标(未全勾显红);清单编辑在表单中整组管理(勾选状态与证据保留)
|
|
25
|
+
- **结构化执行报告(0.4.0)**:agent 收尾用 `taskboard_execution_report` 提交(摘要 / 改动文件 / 自验 / 产物 / 剩余风险),自动挂到当前执行记录;待验收详情页分栏渲染;开场框架行明示提交时序(报告 → 评论 → 移待验收)
|
|
26
|
+
- **JSON 导入(0.4.0)**:顶栏「⬆ 导入」选择备份文件 → 干跑预览(新增 / 覆盖 / 无效分类明细)→ 合并(按 id upsert)或整册替换(自动先备份当前台账 + 二次确认);⬇ JSON 导出的文件即同格式可直接恢复
|
|
27
|
+
- **任务模板(0.4.0)**:「+ 新建任务 ▼」下拉(空白 / 内置 Bug 修复·发布检查·例行巡检 / 管理模板)一键预填表单(标题/描述/Prompt/紧急度/定时/隔离/preset/清单);任务详情「⌗ 存为模板」沉淀常用配置;模板存 DSH 主目录 side file,改名/删除在管理弹窗
|
|
28
|
+
- **Diff 查看器(0.4.0)**:隔离块提交行、未提交修改文件行点击即在看板内展开 diff(提交 `git show` / 文件 `git diff`,128KB·2000 行封顶标注截断);worktree 已删时回落主仓(仅限提交与带基线的范围 diff)
|
|
24
29
|
|
|
25
30
|
**Agent 工具(taskboard_\*)**
|
|
26
|
-
-
|
|
27
|
-
- 代码级协议闸:agent 永远移不到 done
|
|
31
|
+
- 10 个工具:查板 / 建卡 / 改卡 / 移卡 / 评论 / 软删除 / 验收清单 / 执行报告,任何会话可用
|
|
32
|
+
- 代码级协议闸:agent 永远移不到 done(清单全勾也不行);任务被持有时不可抢占;model/execution 对 agent 只读
|
|
28
33
|
|
|
29
34
|
**执行**
|
|
30
35
|
- 手动执行或 cron 定时:每次执行在任务项目内新建全新会话(干净上下文、可指定模型、可指定 preset);开场两条消息同一回合送达——插件上下文行携带任务框架与交接协议(含失败回退路径),卡片内容(提示词或标题+描述)以正常用户消息呈现
|
|
@@ -48,13 +53,29 @@ dsh plugin --profile <name> add github:cloader/dsh-taskboard # GitHub 源
|
|
|
48
53
|
|
|
49
54
|
```bash
|
|
50
55
|
npm install && npm run build # host ESM + client CJS 双构建
|
|
51
|
-
npm test # vitest
|
|
52
|
-
node tests/manual-git-e2e.mjs # 真 git 端到端手测(worktree 全链路 +
|
|
56
|
+
npm test # vitest 全量
|
|
57
|
+
node tests/manual-git-e2e.mjs # 真 git 端到端手测(worktree 全链路 + 续跑 + diff 查看器)
|
|
53
58
|
node scripts/screenshot.mjs # 重新生成 img/ 截图(需本机 Edge)
|
|
54
59
|
```
|
|
55
60
|
|
|
56
61
|
## 升级日志
|
|
57
62
|
|
|
63
|
+
### 0.4.1
|
|
64
|
+
|
|
65
|
+
- **修复侧栏入口点击竞态(用户反馈)**:部分 shell 的 DOM 里,任务看板侧栏入口被插在 class 含 `newSession` 的容器内部——点击入口时,看板的全局捕获监听器(「点侧栏会话/新会话让位」语义)先 `closeBoard`,入口自身的 `toggleBoard` 再翻回来,表现为**看板一开就闪关、或入口按钮关不掉**。修复:捕获监听器先按 `closest('[data-dsh-atb-entry]')` 整体豁免入口子树(比给选择器加 `:not()` 更稳——`:not()` 只排除元素自身匹配,挡不住入口嵌在带类祖先容器内的形态);真会话行/新会话按钮的让位语义不变。顺带加固 `newSessionButton()` 锚点扫描排除自身入口,杜绝自愈重插时锚点自引用
|
|
66
|
+
- 回归测试:构造「入口位于 newSession 容器内」的竞态形态 DOM——点击入口开/关 toggle 正常;点真新会话按钮仍让位
|
|
67
|
+
|
|
68
|
+
### 0.4.0
|
|
69
|
+
|
|
70
|
+
**验收效率包——把「人验收」环节在看板内闭环:**
|
|
71
|
+
|
|
72
|
+
- **验收清单 DoD**:任务模型新增 `checklist`(≤30 项 × 200 字,勾选人/时间/证据 note 全程留痕)。建卡表单整组编辑(编辑保留勾选状态与证据);agent 侧新工具 `taskboard_checklist`(add 增补 / check 勾选附证据 / uncheck 重开,代码闸:勾选永远不等于完成);执行开场框架行注入清单并下达「完成一项勾一项」纪律;待验收卡片与详情未完成项红色高亮,「✓ 完成」在有未勾项时二次确认并显示数量
|
|
73
|
+
- **结构化执行报告**:执行记录新增 `report { summary, changedFiles, checks, artifacts, risk }`;agent 收尾用新工具 `taskboard_execution_report` 提交——按「调用会话 + 运行中执行」定位挂载(agent 无需知道执行 id,重复提交覆盖);待验收详情页分栏渲染(摘要 / 改动文件 / 自验 / 产物 / 风险);开场交接协议更新为「报告 → 评论 → 移待验收」三步
|
|
74
|
+
- **JSON 导入**:`validateLedgerImport` 纯函数逐卡校验分类(新增 / 覆盖 / 无效+原因,文件内重复 id 拒绝;schemaVersion 不符明确报错;导入时残留 `running` 执行标记为失败——其结算守望已随源主机消亡);`POST /import/preview` 干跑 + `POST /import` 提交(merge 按 id upsert;replace 整册替换前自动写 `ledger.backup-<ts>.json`);GUI「⬆ 导入」弹窗全流程可视化,整册替换双重确认
|
|
75
|
+
- **任务模板**:host 侧 `templates.json` side file(首启播种内置 Bug 修复 / 发布检查 / 例行巡检);「+ 新建任务 ▼」下拉选模板预填全部配置(含清单与 preset);任务详情「⌗ 存为模板」;管理弹窗改名 / 删除 / 直接使用
|
|
76
|
+
- **Diff 查看器**:git face 新增 `showCommit` / `showPathDiff`(fail-soft,128KB / 2000 行封顶标注截断);详情页隔离块的提交行与未提交修改文件行点击即懒加载展开 diff;worktree 已删时自动回落主仓
|
|
77
|
+
- 测试 116 → 145;`taskboard_get` 详情渲染清单与报告标记;复制任务携带清单
|
|
78
|
+
|
|
58
79
|
### 0.3.3
|
|
59
80
|
|
|
60
81
|
- **修复执行会话拿不到工具(非标准模式)**:0.3.0 起部署引入 preset 体系后,工具不再是全局注册,而是各 preset 组合在会话创建时挂载(GUI 建会话走 apiproxy 的 composeAgent → presets.mount)。我们的执行服务此前直接 agents.create,不挂任何组合 → 会话无工具。现对齐该链路:执行会话按 preset 组合创建,`agentPreset` 记入会话头
|