Releases: LUKAWI/super-plumber
Releases · LUKAWI/super-plumber
Release list
v1.0.0 稳定版
Full Changelog: v0.9.6...v1.0.0
v0.7.0 — 深空仪器舱(web-ui chrome 系统重构)
概要
0.7.0-beta.1(tag=beta,2026-08-28)转正为 latest。web-ui「深空仪器舱」全面重构:玻璃 chrome(单排 48px 仪器条 + 浮动玻璃 dock + 右缘统一详情抽屉)、图库/决策文档两个新入口(选图与 ADR 目录从画布/顶栏迁入 dock 弹层)、交互六修(图例遮挡/提示条遮挡/专注退出钮/星云拦截点击/边难点中/过滤空态)。画布星体/星云/边零改动,详见 CHANGELOG。
转正前同步(审计 → 已落地)
- ADR-0002「插件包合二为一」裁决补录:accept + 视图再导出(docs/adr 0001 superseded / 0002 accepted)
- PRODUCT.md:ADR 形态更正为「dock 决策文档目录 + 详情抽屉(画布不渲 ADR 形体)」
- DESIGN.md:0.6.2 灰阶基线 → v0.7.0 玻璃语言定档(token 取自 web-ui/index.html :root)
- README.en.md:Web UI 特性表锚点断链修复
验证
后端 534 例 + web-ui 68 例全绿、svelte-check 0 错、生产构建通过、sync-integrations 门禁通过。
Super Plumber v0.2.0 — 愿景补全 · Web UI 优化 · Agent 原生化
[0.2.0] — 2026-08-13
安全修复
- 路径穿越(P0):
graph serve静态文件服务强制约束在web-ui/dist内,/../、%2e%2e、反斜杠变体统一 403(tests/web/server.test.ts回归)。 graph validate全部错误路径退出码非 0(历史两处"报错但 exit 0"假成功修复)。
正确性(P1)
- 原子认领:锁文件(
.graph/.locks/,O_EXCL + 陈锁回收)内重读-校验-写回;并发 claim 同一节点恰好一个成功,败者收到"already claimed by X";同一认领者重复 claim 幂等。 - ready 门禁:进入 ready / 认领前校验
depends_on/validates/fan_in/fan_out前驱必须 passed,报错点名前驱;--force仅人类运维。 - max_attempts 强制:达上限禁止重试;修改 plan.description 自动重置 attempts(CONTEXT 规则);
max_attempts=0不限。 - checkpoint 状态机:pending→running|passed|failed|skipped、running→passed|failed、passed|failed|skipped→pending;同状态幂等。
- YAML schema 校验层:读入逐文件校验(手写零依赖,宽容未知字段),拼错即时报可读错误;
graph validate逐文件定位。 - 删除节点默认拒绝有引用边的操作(
--cascade连删);新增delete-edge;createEdge核心层校验端点存在。 zod显式声明为依赖(幽灵依赖修复);engines.node >=20;移除import.meta.dirname。
设计愿景补全(P2)
- 版本控制:
graph snapshot(可--git)/snapshots/diff/rollback(自动 pre-rollback 备份 + 必须--confirm);MCP 对应三工具。 - 图级编辑:
graph update-graph/graph_update_graph——entry/exit/验收标准不再手写 graph.yaml。 - 调度决策:
graph next/graph_get_next_actions(ready/blocked/running/stale_running 一屏)。 - 裁决:
graph verdict/graph_update_execution_report的 verification 参数。 graph get-node(合法转换 + checkpoint 聚合 + 门禁状态);status/validate/next支持--json。index/新鲜度缓存(逐文件 mtime 比对)+topology.dot;graph init写schema.yaml。aggregateCheckpointStatus接入 validate 输出。
MCP Agent 原生化(P3,9 → 18 工具)
- 设计期补全:
graph_add_edge、graph_delete_edge、graph_update_node、graph_update_graph、graph_batch_create(全量预校验报全部冲突)、graph_create_node支持一次建完整压缩包。 - 执行期强化:
graph_update_node_status原子 claim + 门禁/次数上限错误消息;graph_get_node附带 allowed_transitions/ready_gate。 - 版本三工具;
--root/SUPER_PLUMBER_ROOT服务定位;工具描述重写为决策导向。 - E2E 纯 MCP 全流程测试:设计→调度→claim→checkpoint→report→verdict→passed→三层验收。
Web UI(P4)
- 修复 fitToView 死代码(改模拟坐标 + 抽取可单测的纯函数);断线指数退避重连 + HTTP 兜底;adjacency 正确序列化;删除重复 CSS;状态色三处统一(CSS 变量/TS/Mermaid 导出)。
- 布局持久化:节点位置缓存 + 仅边变化时增量更新边层(不再全图重抖);缩放视角跨重渲染保持;固定布局开关(大图性能)。
- 详情面板补全:EXECUTION REPORT(summary/artifacts/blockers/verification 徽标 + 时间戳)、plan 输入/上下文、quality gates。
- 新增:边详情面板(语义/端点跳转/合约)、版本 diff 视图(快照列表 + 画布绿/红/黄着色 + 状态变化明细)、L0–L5 层级过滤 + 搜索 + 状态摘要条 + 图名显示 + offline 指示。
- 前端测试基建:vitest + jsdom + svelte-check(0 error),12 个单测。
生态与文档(P5)
- 包公开 API:
@lukawi/super-plumber/core桶导出;skill 脚本改走公开 API(本地→全局回退),sp-*.sh全部重写为跨平台.mjs(去 GNU grep)。 plumber-design/plumber-execute/super-mario/sp-designer全面同步(update-graph、next-actions、verdict、门禁错误、force 红线)。- CONTEXT.md 补 裁决/调度决策/版本快照术语 + 门禁与次数上限语义;README 中英同步(19 命令 / 18 工具 / 新 FAQ)。
- CI:ubuntu+windows × Node 20/22,后端 + 前端(build/typecheck/test)全链路;测试 badge 真实化。
测试
- 后端 97 → 216(含并发认领 5 进程竞争、路径穿越、门禁、快照往返、缓存失效、18 工具协议、纯 MCP E2E)。
- 前端新增 12(重连/布局纯函数/store)。
- 性能回归:10k 深链 validate 不回归;缓存命中路径。
v0.1.1 — 双阶段 skill + 自动开浏览器 + CLI 别名
主要更新
技能拆分(核心)
- plumber-flow 拆分为两个阶段 skill(旧 skill 已删除):
- plumber-design:需求 → 拓扑图 → validate + 体检脚本验证无 bug →
graph serve浏览器预览 → 请求用户审核(硬性 gate) - plumber-execute:claim → 逐 checkpoint 上报 → execution_report → passed → 三层验收(状态/结构/成果)
- plumber-design:需求 → 拓扑图 → validate + 体检脚本验证无 bug →
- 新增设计体检脚本
sp-check-design.mjs:entry/exit、节点三要素、孤立节点、双向可达性、topo 环、边引用、孤儿文件检查
功能
graph serve自动打开浏览器(平台分发:start/open/xdg-open),--no-open可关闭- CLI 11 子命令新增短别名(
init→i、create-node→cn、add-edge→ae等),全名照常 - skill 脚本/agent 改名
sp-前缀(sp-claim/sp-checkpoint/sp-report/sp-designer 等)
修复
.gitignore行尾注释语法导致.graph/规则失效(运行时目录曾泄漏到 git 状态)
文档
- README 中英同步双阶段 skill 说明、脚本路径、别名表
测试 101/101 全绿。