@devflow-tools/claude-code-plugin 0.19.14 → 0.19.15
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.
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "devflow",
|
|
3
3
|
"description": "DevFlow — Developer Intelligence Platform: project context, code graph, knowledge base, memory engine, and workflow automation with 14 domain plugins",
|
|
4
|
-
"version": "0.19.
|
|
4
|
+
"version": "0.19.15",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "DevFlow"
|
|
7
7
|
},
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
],
|
|
9
9
|
"blockedNative": [],
|
|
10
10
|
"source": "core",
|
|
11
|
-
"sourceVersion": "0.19.
|
|
11
|
+
"sourceVersion": "0.19.15",
|
|
12
12
|
"requiresContext": false,
|
|
13
13
|
"evidenceMode": "runtime",
|
|
14
14
|
"skillPath": "skills/devflow:doctor/SKILL.md",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"WebFetch"
|
|
36
36
|
],
|
|
37
37
|
"source": "core",
|
|
38
|
-
"sourceVersion": "0.19.
|
|
38
|
+
"sourceVersion": "0.19.15",
|
|
39
39
|
"requiresContext": true,
|
|
40
40
|
"evidenceMode": "mixed",
|
|
41
41
|
"skillPath": "skills/devflow:context/SKILL.md",
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
"Explore"
|
|
61
61
|
],
|
|
62
62
|
"source": "core",
|
|
63
|
-
"sourceVersion": "0.19.
|
|
63
|
+
"sourceVersion": "0.19.15",
|
|
64
64
|
"requiresContext": true,
|
|
65
65
|
"evidenceMode": "mixed",
|
|
66
66
|
"skillPath": "skills/devflow:graph/SKILL.md",
|
|
@@ -79,7 +79,7 @@
|
|
|
79
79
|
"WebFetch"
|
|
80
80
|
],
|
|
81
81
|
"source": "core",
|
|
82
|
-
"sourceVersion": "0.19.
|
|
82
|
+
"sourceVersion": "0.19.15",
|
|
83
83
|
"requiresContext": true,
|
|
84
84
|
"evidenceMode": "mixed",
|
|
85
85
|
"skillPath": "skills/devflow:knowledge/SKILL.md",
|
|
@@ -103,7 +103,7 @@
|
|
|
103
103
|
"Explore"
|
|
104
104
|
],
|
|
105
105
|
"source": "core",
|
|
106
|
-
"sourceVersion": "0.19.
|
|
106
|
+
"sourceVersion": "0.19.15",
|
|
107
107
|
"requiresContext": true,
|
|
108
108
|
"evidenceMode": "mixed",
|
|
109
109
|
"skillPath": "skills/devflow:memory/SKILL.md",
|
|
@@ -119,7 +119,7 @@
|
|
|
119
119
|
],
|
|
120
120
|
"blockedNative": [],
|
|
121
121
|
"source": "core",
|
|
122
|
-
"sourceVersion": "0.19.
|
|
122
|
+
"sourceVersion": "0.19.15",
|
|
123
123
|
"requiresContext": true,
|
|
124
124
|
"evidenceMode": "mixed",
|
|
125
125
|
"skillPath": "skills/devflow:workflow/SKILL.md",
|
|
@@ -154,7 +154,7 @@
|
|
|
154
154
|
],
|
|
155
155
|
"blockedNative": [],
|
|
156
156
|
"source": "core",
|
|
157
|
-
"sourceVersion": "0.19.
|
|
157
|
+
"sourceVersion": "0.19.15",
|
|
158
158
|
"requiresContext": true,
|
|
159
159
|
"evidenceMode": "mixed",
|
|
160
160
|
"skillPath": "skills/devflow:delivery/SKILL.md",
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"manifestVersion": "devflow-runtime.v1",
|
|
3
|
-
"packageVersion": "0.19.
|
|
4
|
-
"sourceCommit": "
|
|
3
|
+
"packageVersion": "0.19.15",
|
|
4
|
+
"sourceCommit": "1bf7dfe631751d5d856c9e363cdfef9d0ffee620",
|
|
5
5
|
"bundleHashes": {
|
|
6
6
|
"hooks": "858e24cc2bc01cdc69e47010e9e51eafc9d9230c9799a421821c3aa917f9c062",
|
|
7
|
-
"mcp": "
|
|
7
|
+
"mcp": "4b1b4152fca04afcbc8466ed46799b60a35c6c4c5b5f7c7ed8252387d5c359df",
|
|
8
8
|
"cli": "6205081f819ee3651962df36edd626b993a917fb8691f20c84e6b6e04af81d16"
|
|
9
9
|
},
|
|
10
|
-
"registryHash": "
|
|
10
|
+
"registryHash": "d779cbeb63b003f41ab5a0e1d7511824423800141f07e17863699a386eb0e31a",
|
|
11
11
|
"stateDbPath": "<projectRoot>/.devflow/delivery-line/state.db",
|
|
12
|
-
"builtAt":
|
|
13
|
-
"manifestHash": "
|
|
12
|
+
"builtAt": 1794192809406,
|
|
13
|
+
"manifestHash": "b0a2617ae0151daeb104a25707cf91cf0ec3f066f15751a328aae014dc09ba0f"
|
|
14
14
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@devflow-tools/claude-code-plugin",
|
|
3
|
-
"version": "0.19.
|
|
3
|
+
"version": "0.19.15",
|
|
4
4
|
"description": "Claude Code hooks and skills for the DevFlow development intelligence runtime.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
@@ -12,20 +12,20 @@
|
|
|
12
12
|
"verify:runtime-dependencies": "node --import tsx scripts/verify-runtime-dependencies.ts"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@devflow-tools/benchmark": "0.19.
|
|
16
|
-
"@devflow-tools/context-engine": "0.19.
|
|
17
|
-
"@devflow-tools/database": "0.19.
|
|
18
|
-
"@devflow-tools/mcp-server": "0.19.
|
|
19
|
-
"@devflow-tools/memory-engine": "0.19.
|
|
20
|
-
"@devflow-tools/sdk": "0.19.
|
|
21
|
-
"@devflow-tools/semantic-engine": "0.19.
|
|
22
|
-
"@devflow-tools/server": "0.19.
|
|
23
|
-
"@devflow-tools/task-runtime": "0.19.
|
|
24
|
-
"@devflow-tools/telemetry": "0.19.
|
|
25
|
-
"@devflow-tools/workflow-engine": "0.19.
|
|
15
|
+
"@devflow-tools/benchmark": "0.19.15",
|
|
16
|
+
"@devflow-tools/context-engine": "0.19.15",
|
|
17
|
+
"@devflow-tools/database": "0.19.15",
|
|
18
|
+
"@devflow-tools/mcp-server": "0.19.15",
|
|
19
|
+
"@devflow-tools/memory-engine": "0.19.15",
|
|
20
|
+
"@devflow-tools/sdk": "0.19.15",
|
|
21
|
+
"@devflow-tools/semantic-engine": "0.19.15",
|
|
22
|
+
"@devflow-tools/server": "0.19.15",
|
|
23
|
+
"@devflow-tools/task-runtime": "0.19.15",
|
|
24
|
+
"@devflow-tools/telemetry": "0.19.15",
|
|
25
|
+
"@devflow-tools/workflow-engine": "0.19.15"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
|
-
"@devflow-tools/devflow": "0.19.
|
|
28
|
+
"@devflow-tools/devflow": "0.19.15"
|
|
29
29
|
},
|
|
30
30
|
"allowScripts": {
|
|
31
31
|
"better-sqlite3@12.11.1": true,
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
"hooks",
|
|
51
51
|
"skills"
|
|
52
52
|
],
|
|
53
|
-
"gitHead": "
|
|
53
|
+
"gitHead": "1086fb1f45a3caa1fb1008a5b3a51520afe5aa28",
|
|
54
54
|
"license": "MIT",
|
|
55
55
|
"repository": {
|
|
56
56
|
"type": "git",
|
|
@@ -107,16 +107,20 @@ integration ref)完整保留。执行车辆是会话本身,交付线只做
|
|
|
107
107
|
|
|
108
108
|
流程(对每个 pending 任务重复 2-6):
|
|
109
109
|
|
|
110
|
-
1. `plan_approved` 阶段且 `nextActions` 含 `begin_foreground_execution`
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
110
|
+
1. `plan_approved` 阶段且 `nextActions` 含 `begin_foreground_execution` 时,调用
|
|
111
|
+
`delivery_propose_trusted_action(action=begin_foreground_execution)` 并把生成的 pending decision
|
|
112
|
+
用 `AskUserQuestion` **一次性**渲染(选项即 前台执行/放弃;放弃后可走 `delivery_resume` 后台)。
|
|
113
|
+
不得先问一遍执行方式再弹一次确认——一次决策完成选择与授权。确认后宿主会话即持有任务租约
|
|
114
|
+
(你就是在受审计地扮演 worker)。
|
|
114
115
|
2. 从 `delivery_status` 的任务列表取第一个 `pending` 任务,向用户展示任务卡:目标、`allowedFiles`、
|
|
115
|
-
`implementationSteps
|
|
116
|
+
`implementationSteps`、验收标准、验证命令。明确声明 allowedFiles 之外不做任何修改。
|
|
116
117
|
3. 基于任务的 base revision 建独立 worktree(候选必须是 base 后代,否则 import 会被权威校验拒绝):
|
|
117
118
|
`git worktree add <临时目录> -b devflow-fg/<caseId>/<taskId> <baseRevision>`,在该目录中工作。
|
|
118
119
|
4. 前台实现:按 `implementationSteps` 先写失败测试再实现(原生 Read/Write/Edit/Bash,输出对用户可见,
|
|
119
120
|
可用原生 Task/Agent 工具拆子任务)。验证命令在前台逐条运行并向用户展示结果。
|
|
121
|
+
**纯 UI 组件且项目无 DOM 测试设施时,不要编写"读源码断言字符串"的伪测试**——用计划里的
|
|
122
|
+
`testFirstWaiver`(verificationAlternative 填 build + typecheck + 既有测试套件),build/类型检查
|
|
123
|
+
就是该场景下的诚实验证。伪测试不产生行为覆盖,只是为了让 gate 通过的仪式。
|
|
120
124
|
5. 在 worktree 中以规范 commit message 提交,得到 candidateRevision。
|
|
121
125
|
6. 调用 `delivery_import_external_change(caseId, taskId, candidateRevision, reason)`——系统自动完成
|
|
122
126
|
authority 校验(base 后代 + allowedFiles 边界)、独立验证与 integration ref 写入。导入被拒时按
|
|
@@ -124,7 +128,7 @@ integration ref)完整保留。执行车辆是会话本身,交付线只做
|
|
|
124
128
|
全部任务 integrated 后按 `nextActions` 进入 review/export gate。
|
|
125
129
|
|
|
126
130
|
边界:前台模式不改变 Delivery authority——不碰 target ref、不跳过验证、不伪造证据;import 失败照常
|
|
127
|
-
按错误处理规则恢复。
|
|
131
|
+
按错误处理规则恢复。worktree 用完即清(`git worktree remove --force`)。
|
|
128
132
|
|
|
129
133
|
## 人工 Review Gate(REVIEW_AWAITING_HUMAN)
|
|
130
134
|
|
|
@@ -134,7 +138,8 @@ integration ref)完整保留。执行车辆是会话本身,交付线只做
|
|
|
134
138
|
流程:
|
|
135
139
|
1. 收到 `REVIEW_AWAITING_HUMAN` 后,先向用户展示审查材料:集成 diff(`git diff <parentRevision>..<integrationRevision>`)、
|
|
136
140
|
验证证据摘要(verification 命令与结果)、任务验收标准。
|
|
137
|
-
2. 用 `AskUserQuestion`
|
|
141
|
+
2. 用 `AskUserQuestion` **单次调用**收集三类裁决——一次调用带 3 个 question(bugs / security / compliance),
|
|
142
|
+
每类选项:通过 / 退回(附 finding)。不要分三次弹窗。
|
|
138
143
|
用户的裁决必须原样提交,不得代答或合并。
|
|
139
144
|
3. 调用 `delivery_submit_review(caseId, verdicts)` 提交三类 verdict(每项 `{ kind, passed, findings? }`,
|
|
140
145
|
findings 的 severity 用 blocker/major/minor/informational)。宿主可信通道会签名该决策。
|
|
@@ -143,6 +148,19 @@ integration ref)完整保留。执行车辆是会话本身,交付线只做
|
|
|
143
148
|
|
|
144
149
|
禁止:agent 不得代替用户生成 verdict;不得在未展示 diff 与验证证据的情况下请求裁决;三类缺一不可。
|
|
145
150
|
|
|
151
|
+
## 交付收尾(delivered 之后)
|
|
152
|
+
|
|
153
|
+
export 产出交付包后,闭环还差两步,按 `nextActions` 继续:
|
|
154
|
+
|
|
155
|
+
1. **合入目标分支**:`nextActions` 含 `merge_to_target` 时,调用
|
|
156
|
+
`delivery_propose_trusted_action(action=merge_to_target)` 并渲染确认决策。确认后系统执行
|
|
157
|
+
fast-forward-only 合入(target 分叉时报 `TARGET_DIVERGED`,由用户手工解决,绝不强制合并)。
|
|
158
|
+
合入成功后本轮交付的代码才真正落到 targetRef。
|
|
159
|
+
2. **记忆沉淀(闭环第⑨步)**:合入完成后,调用 `mcp__plugin_devflow_devflow__memory_save_distilled`
|
|
160
|
+
提炼本案的持久知识,至少包含:新增/变更的组件与位置(observation:decision_made/config_discovery)、
|
|
161
|
+
设计决策与被否方案及理由(decision_made)、验证约定(config_discovery,如"本地工具链形式命令已验证可用")。
|
|
162
|
+
没有这一步,下一个同类需求无法从本轮受益——闭环"每圈更便宜"依赖它。
|
|
163
|
+
|
|
146
164
|
## 可用操作
|
|
147
165
|
|
|
148
166
|
- 澄清和设计:`delivery_propose_options`、`delivery_answer`、`delivery_revise`、`delivery_compare_options`、`delivery_prepare_plan`
|