Skip to content

Releases

v0.5.1

Choose a tag to compare

@joekytc joekytc released this 09 Oct 10:37
bd0c0fd

新功能

  • 模型候选链四层合成:角色主模型 → 降级候选(≤2,顺序=优先序)→ 全局官方兜底(roles.chainFallback 恒垫链尾)→ 宿主默认模型;角色链全空时官方兜底直用
  • 配置面板模型链手风琴 UI:六角色(V/P/W/D/PT/DT)级联下拉选主模型 +「+ 降级」追加降级行,「复制本链到全部角色」快捷键
  • 派发前 LLM 目录预校验:不存在的 provider/model 组合、模型未声明的 reasoningEffort 派发前剔除(fail-open 不阻断)

修复

  • turn 期模型错误不再整轮失败:新增 agent/request + agent/request-error 双 waterfall——402/配额/模型不可用/凭据缺失按候选链静默切换重试,卡片留 [model-fallback] 审计
  • 手动 kanban-* preset 会话接入角色模型链(agent-preset/selected 探测,六角色全覆盖;未配链会话原样放行)
  • ACCOUNT_QUOTA / insufficient balance 归类 transient(不计 attempts,靠调度 tick 重派),不再烧重试预算

v0.5.0

Choose a tag to compare

@joekytc joekytc released this 30 Sep 10:58

新功能

  • 适配 DSH 0.2.0-rc.2 宿主:peer 联合范围 ~0.1.7-rc.2 || ^0.2.0-rc.2(0.1.7-rc.2+ 与 0.2.0-rc.2+ 双轨兼容,安装/启动双闸硬拒更旧版本)
  • 会话跳转接入宿主导航新接缝 uiWorkspace.openSession(client inject 声明,0.1.7 起宿主内置)
  • Agent 角色预设双路注册:0.1.7 走 .agent-presets 目录发现、0.2.0 走运行时 agentPresets.register,日志如实区分两路(dir-write/runtime-register)
  • 链审计写判定事件名双名兼容:tool/code-dispatch[-start] 与 tool/ptc-dispatch[-start] 皆认(V3+ 会话格式改名不断判)

修复

  • AgentSetup 双参化 (agentCtx, agent) 并显式传递 agent(0.2.0 移除 ctx.agent 便捷挂载)
  • 7 个角色 persona text→prefix 字段迁移,人设语义逐字保留
  • subagent 挂载显式 maxDepth: 3,对冲宿主默认值收敛
  • ISessions.open 移除适配:导航优先 uiWorkspace,旧宿主回落 open 转发;惰性解析避免 apply 期触碰未就绪服务
  • followup 消息补 identified id(v4 会话校验拒绝无 id 消息,否则历史拒读)

其他

  • 新增测试:双名事件、preset 注册、会话桥导航优先级等,88 文件 / 1225 用例全绿
  • cordis-plugin-include ^1.0.9、js-yaml 依赖面对齐宿主实装

v0.3.12

Choose a tag to compare

@joekytc joekytc released this 30 Sep 06:52

修复

  • 调度层 turn 错误分类处理:角色会话以 error 结束的轮次不再误判为 protocol_violation(不消耗 PV 预算)——配置错误(未知模型/不支持推理强度/无效请求)以 model-unavailable 阻塞任务并明确报因,瞬态错误(配额、网络)走基础设施级重试,未知错误限次重试;协议违规判定收窄为「turn 正常完成但未产生终态工具调用」一种情形
  • LLM 模型候选预检:provider/model/推理强度组合在配置保存与任务派发前按模型目录校验,死组合直接拦截;目录不可达时跳过校验保持可用(fail-open)
  • DT 评审官提示词澄清:complete 闸的 test 参数两键机械校验(exit 数字键名、runner 固定 vitest)写入角色指令,减少键名写错被拒

其他

  • AGENTS.md 重组为七节结构(仓库布局/命令与验证回路/插件约定/领域不变式/运行时事实/代码风格/边界),踩坑经验沉淀为可执行规则
  • 新增 20 个测试用例覆盖 turn 错误分类、错误事件记录与模型候选预检

v0.3.11

Choose a tag to compare

@joekytc joekytc released this 23 Sep 08:43

其他

  • 两份 README(中/英)加入配置面板截图,直观说明两处关键配置:
    • 模型链——每个角色(v/p/w/d/pt/dt)可单独选择提供方、模型与推理强度,未设置的角色显示「继承」沿用默认
    • 评审引擎(ocr)——装好 ocr 后选托管/委托模式与提供方、模型,点「应用到 ocr」完成接入(API key 由 dsh 模型配置解析后写入 ocr,面板不展示明文)
  • 截图存于仓库 screenshots/(不随 npm 包发布),README 用绝对 raw 链接引用,GitHub 与 npm 包页均可显示

v0.3.10

Choose a tag to compare

@joekytc joekytc released this 23 Sep 08:18

新功能

  • PRD 单链接采集工具 planning_prd_collect:逐条采集用户给的 PRD 链接——原文切片写入 KB source-docs 命名空间(slicePrdMarkdown 45KB 分片)、截图内嵌、失败按 blockedReason 分类(登录态/缺技能/404/其他)引导;配套采集子代理缝 buildSpawnPrdCollect(只读白名单工具面 web_fetch/read/glob/grep/skill + 技能目录动态枚举)
  • 需求澄清清单结构性硬闸(三字段 + 闸门):sources(闸1 需求来源必挂,确无来源须录「无来源+原因」)、prdCollection(闸3 每条 PRD 链接登记后必须 collected 或 blocked,禁止悬空)、placeholders(后端未就绪项占位策略集中声明);闸2 新增指代不明禁词表(「按推荐/同上/见上」等);新增 PRD 平台路由 routePrdPlatform(feishu/wecom/modao/其他)
  • 澄清引导文案 v5:十规则固化(含「来源三有」),蜂群模式与前缀路由两路同步
  • 绿地(greenfield)项目支持:清单可声明 greenfield:true(纯声明触发,目录状态不参与判定)→ D 阶段模板带 GREENFIELD=1 与建仓前置(mkdir → git init -b main → 初始提交),引导文案在目标无 .git 时要求显式声明;合并闸在 target 分支缺失时以 feature 建基线,建分支免 checkout(兼容 linked worktree)
  • DT 评审引擎配置事实注入:DT 上下文注入 reviewEngine.mode(含 managed 的 provider/model)——托管/委托不再由模型自行猜测(此前全链零注入点,实测出现「面板配 managed 却按委托跑」)

修复

  • ocr 评审接入三处修复:rule/managed 子命令补 --repo(此前仅 preview 传,导致 rule 稳定报 not a git repository、managed 可能静默审错仓库);目标仓库解析改为 repo 参数 → 会话工作目录(exec.agent.session.header.cwd)→ 注入兜底,并作为子进程 cwd,两处皆缺时 fail-loud;托管就绪探针兼容 ocr config set 的真实落点 custom_providers.<provider>.model(此前把已接好的托管误判为未配置,ocr review 从未被调用)。DT 提示词补 repo 语义与「应用到 ocr」降级指路
  • 网关合成拒答自动重试兜底:识别 Higress 语义缓存/安全护栏对首轮任务 prompt 合成的 usage 全 0 拒答(isGuardSynthesizedReply + 回放模型判定单一事实源),角色会话 whenIdle 后自动 followup「继续未完成的任务」重试一次(限一次防循环),不再把拒答当结论空闲退出
  • 采集缝补:planning_prd_collect 补 skill 工具、workspace 缺失 fail-loud(拒绝回退 process.cwd())、subagent summary 兜底与降级路径测试
  • prd_collect 描述与实际降级/阻塞语义对齐;handoff 澄清期 R10 追溯子句补闭合括号

其他

  • 测试净增:全量 1124 → 1184 绿(ocr 参数/仓库解析/就绪探针/DT 注入、清单三字段硬闸、PRD 路由与切片、greenfield real-git 回归等)
  • KB 白名单新增 source-docs 命名空间(PRD 原文切片页),命名空间注释同步(五类→六类)
  • lib 产物与客户端 bundle 随源码同步重建

v0.3.9

Choose a tag to compare

@joekytc joekytc released this 21 Sep 13:34

新功能

  • 需求澄清清单机读可靠恢复:清单页尾内嵌无损机读段 <!-- dsh-swarm:checklist-json ... -->;/openspec: 路由2 经 extractChecklistJson 提取 → 硬校验 → 灌内存 → 当场建链,恢复全程 LLM 零参与——杜绝 LLM 重建的 stub 覆盖、字段失真与双重编码
  • dispatcher 启动补扫:启动时对全部 executing 链补 wakeV([startup-rewake] 日志)——重启游标越过 wakeable 事件(如 PT completed)不再吞编排轮、不再静默停滞

修复

  • planning_checklist_save 参数 schema L1 化(官方类型化 DSL):spec 四字段 string、user_stories/impl_decisions string 数组、manifest 层级与 files[].expected enum 运行时强制;description 收敛为 schema 表达不了的语义(非空、确切键名、expected 语义映射:改→exists/建→absent)。根治澄清清单多轮调用失败(spec 数组化 / 双重编码 / expected 词表错)
  • kanban_complete metadata / spec_card_edit sections 参数 L1 化(open object)+ 清除 as Record 静默强转 + delivery-contract 非对象 metadata 报类型真因——双重编码不再穿透到交付闸伪装成 delivery required 缺键
  • prefetch-manifest files[] 报错聚合去重(×N 计数):26 条同文错误墙 → 1 条
  • preset 挂载收敛 mountOrRecompose:同 agentKey 二次挂载(blocked/unblock 多轮唤醒 resume 同一 session)走宿主官方 recompose 重链,不再撞 dsh-scope 一次性绑定(already bound to a parent);V 会话 fail-fast 语义保持

其他

  • 测试净增 10 例:schema 防线(三次历史失败载荷)/ 报错聚合 / 机读往返无损 / 双重编码四态 / mountOrRecompose 四态 / 启动补扫候选;全量 1124 绿

v0.3.8

Choose a tag to compare

@joekytc joekytc released this 20 Sep 03:15

新功能

  • 闸门警报与打回闭环:新增 task/gate-skipped 事件与 hook 三态契约(pass / skipped / failed);连续 3 次闸门打回自动转人工出口
  • 装配层 diff 互证:GateOutcome 四态互证派生 + skipped/test_files 声明分类纯函数;装配层 diff 互证接线、⑦分支 bounce、gate 日志落盘
  • 评审证据三级核验(evidenceReplay 配置段,默认关):ReviewIssue.evidence schema + review/evidence-check 事件;三级编排——缺证标记 → 纸面核对 → 命令词边界白名单重放;evidenceCheckHook 挂接 DT complete 非阻塞留痕;DT persona 取证要求;重放为非沙箱执行,已在文档明示

修复

  • review-evidence lint 口径:对齐 build(拒收 null/标量)
  • evidence 评审修复波次:元字符拒绝 / TIMEOUT 分流 / per-issue 容错 / forbidden 纵深 / 纸面行锚 / persona 限定

性能

  • buildContext 注入去重:父链 metadata 瘦身 + rework 速览指针化

其他

  • preset 判定统一走 session-preset 读面
  • README 说明与配置表更新

v0.3.7

Choose a tag to compare

@joekytc joekytc released this 16 Sep 09:14

新功能

  • wiki_write 会话级放行面放宽:此前仅链上组合会话与链上 DT 子代理可写 KB;现按 preset 白名单放行——默认含插件自有 swarm(蜂群模式 preset)、kanban-w(知识官 preset)与宿主内置 ptc(实测 dsh web「蜂群模式」标签会话的 header.agentPreset 实为宿主 PTC 模式 id)。写面不变:仍由 wiki_write 工具内 assertAllowedWikiPagePath 五类命名空间白名单(checklists / ch_ 任务页 / review / reviews / learnings)硬约束;local 模式不注册 wiki_write,无工具面即无暴露面
  • 放行白名单配置化:新增 wikiWritePresets 配置(默认 ['swarm','kanban-w','ptc']),guard 经 dispatcher 热读 getEffective()——宿主 preset 体系演化或部署自定义模式 id 时改配置即可,无需改代码;配置缺字段回空集 fail-closed
  • 拒绝文案诊断尾巴:wiki_write 被拒时报错附实际会话 preset 值(当前会话 preset=…),会话模式判定缺口一次重试即可定位

修复

  • 拒绝文案口径:旧文案「仅限交付评审官(DT)评审会话使用」与权限矩阵(can('wiki-write') = w | dt)及工具描述(W only)自相矛盾,已更正

v0.3.6

Choose a tag to compare

@joekytc joekytc released this 16 Sep 04:01

新功能

  • IM 投递多机器人路由:机器人选择按会话 preset 匹配(探针读取 dsh-im 连接态与 agentPreset);未命中 → imDelivery.fallbackBotId;仍未设默认 → 手动投递路径交互选择(含「设为默认」)。auto 路径禁止交互,按 botId → fallbackBotId → fail-closed 列候选 处理;探针失败只降级不阻断投递
  • 交付汇报结构化骨架:kanban_complete 支持 metadata.report(需求/状态/分支/功能清单/验收/验证/遗留/待办/KB),企微群内按新骨架渲染;report 缺失或形状不合法时回退旧机械格式(旧链兼容)
  • 人工恢复出口:kanban_waive_review(评审豁免,failed/gave-up → waived)与 kanban_reopen_chain(阻塞链 blocked → executing),均 human-only,附 [recovery] 审计评论;GUI、HTTP action 与工具面同步接线
  • P/PT 收敛闸:PT 复审轮在旧账清零且无未解决 critical 时,fail 降级为 pass,未解决新问题转下游「评审遗留建议」([review-final] 留痕),保证返工必然收敛
  • 返工卡「本轮修复清单」:上一轮评审 issues 全文确定性注入返工卡 body,返工方定点修复;返工卡改用独立会话 kbn-<reworkId>
  • swarm 角色接入文件系统技能与 Web 工具

修复

  • 返工上下文注入查询键错位:review/failed.targetTaskId 恒指向 root 卡,旧实现自第 2 张返工卡起注入为空(返工方盲修)→ 改为沿 reworkOfTaskId 回溯 root 后匹配
  • gave-up 死锁:编排幂等分支用布尔 OR 判定,恒落 rework → 改按该评审卡最后一条 review 事件判定(人工豁免/恢复后可继续推进)
  • 链头警告粘历史:阻塞解除后警告行永久常驻 → 改为反映当前状态(链级 chain/blocked 原因 → 当前 blocked/failed 卡原因 → 无则不显示)
  • 人工恢复后 stall 计数残留:新增 reopenConsumedSeq 位点,恢复事件只消费一次,避免重试额度立即再撞上限
  • 配置面补齐:config-override 白名单新增 imDelivery(此前手写 override 属 no-op),并纳入 config-audit diffKeys
  • GUI 保存旧 bundle 不带新字段会清空配置 → PUT 归一化保留现值;fallbackBotId 增加 botId 形态校验
  • W 角色沙箱纪律:会话已处 danger-full-access 时,任何工具调用禁带 sandbox_permissions/justification(带参重试会持续被宿主拒绝)
  • 文档口径对齐:maxReworksPerRole PT 2→3,清理 AGENTS 中已不存在的 judgePTNeeded/review_override 描述

体验交互

  • GUI:任务详情新增「豁免评审」(理由必填,校验/在途/成功三态反馈);链头新增「人工恢复」(仅 blocked 链显示)
  • 弹窗按钮补齐 disabled/在途视觉;修复横向空间不足时按钮文字逐字竖排
  • /sms 多机器人交互:一次弹两问(选机器人 + 是否设为默认),5 分钟等待上限;投递结果回报命中方式与默认是否写入成功
  • 交付汇报 / 阻塞通知在企微群内视觉统一(【交付汇报】/【交付阻塞】+ 链 id + 已完成 n/m)

其他

  • 事件面扩展:chain/reopened / review/waived 状态机、投影与时间线展示
  • 测试:81 文件 1038 用例全绿(新增 im-bot-probe、机器人决策链、收敛闸、恢复出口、交付汇报骨架用例)
  • 日志红线:cookie / token / URL / 请求头不写入 dispatcher.log 与 events.jsonl
  • 版本说明:npm 上 0.3.3–0.3.5 未曾发布,本次 0.3.6 覆盖自 0.3.2 起的全部变更

v0.3.2

Choose a tag to compare

@joekytc joekytc released this 09 Sep 09:53

新功能

  • ocr_review 新增 background 参数:托管评审透传业务上下文,提升评审质量;DT 托管模式交接同步注入 background 提示

修复

  • ocr preview/managed 对齐 ocr CLI 真实 schema:preview 显式 --format json、官方字段名(reviewable_files / excluded_files / exclude_reason)、行号 start_line 容错别名、managed 恒带 --audience agent 抑制 progress 输出
  • ocr wire 取 API key 补 ctx.credentials 路径:托管模式凭据存于 managed store 时不再写入失败
  • 移除 D 角色 prompt 中的 open-code-review 指引:评审工具仅 DT 使用,防止 D 误调