openfeel 1.4.0 → 1.5.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 +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +2 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/commands/dev.d.ts +11 -0
- package/dist/commands/dev.d.ts.map +1 -0
- package/dist/commands/dev.js +47 -0
- package/dist/commands/dev.js.map +1 -0
- package/dist/commands/flow.d.ts.map +1 -1
- package/dist/commands/flow.js +12 -0
- package/dist/commands/flow.js.map +1 -1
- package/dist/core/config.js +2 -2
- package/dist/core/dev-status.d.ts +37 -0
- package/dist/core/dev-status.d.ts.map +1 -0
- package/dist/core/dev-status.js +176 -0
- package/dist/core/dev-status.js.map +1 -0
- package/dist/core/flow-manager.d.ts +3 -1
- package/dist/core/flow-manager.d.ts.map +1 -1
- package/dist/core/flow-manager.js +6 -1
- package/dist/core/flow-manager.js.map +1 -1
- package/dist/core/i18n-data/en.d.ts.map +1 -1
- package/dist/core/i18n-data/en.js +9 -0
- package/dist/core/i18n-data/en.js.map +1 -1
- package/dist/core/i18n-data/zh-CN.d.ts.map +1 -1
- package/dist/core/i18n-data/zh-CN.js +9 -0
- package/dist/core/i18n-data/zh-CN.js.map +1 -1
- package/dist/core/template-loader.d.ts.map +1 -1
- package/dist/core/template-loader.js +121 -183
- package/dist/core/template-loader.js.map +1 -1
- package/dist/core/update.d.ts.map +1 -1
- package/dist/core/update.js +58 -140
- package/dist/core/update.js.map +1 -1
- package/dsh/ADAPTER.md +3 -2
- package/dsh/README.md +2 -1
- package/dsh/lib/adapters/dashboard.js +6 -0
- package/dsh/lib/adapters/dev-status.js +40 -0
- package/dsh/lib/surface/prompt.js +10 -0
- package/dsh/lib/tools/index.js +3 -0
- package/dsh/package.json +2 -2
- package/package.json +1 -1
|
@@ -141,6 +141,11 @@ Feel(你)只做编排、决策与门禁判断。
|
|
|
141
141
|
- **归档判据不可协商**:版本归档要求该版本**全部阶段 done** 且**无 blocking open REV**,没有 force 覆盖。归档由 CLI 执行,调度侧只提示不代劳。
|
|
142
142
|
- **不主动读归档**:常规调度不要读 \`.openfeel/flow-archive/**\`(防上下文污染);需要历史时用 \`feel_archive action=show\`。
|
|
143
143
|
|
|
144
|
+
## 状态与记录(v1.5.0)
|
|
145
|
+
- **只有 Feel 写状态**:\`dev_last*\`、\`dev/current.md\`、\`status.md\`、\`flow.json\` 只由 Feel 更新;**子 agent 一律不读不写**(上下文由派发 prompt / 交接文档提供)。
|
|
146
|
+
- **日志不强制**:不写流水账;\`flow.json.log\` 由 CLI 自动维护(仅保留最近 200 条)。跨会话信息用一条 ≤5 行交接摘要。
|
|
147
|
+
- **更新节点**:开始 / 转折 / 结束,或 \`statusSync.due=true\`(默认 30 分钟)时更新一次交接摘要,随后运行 \`openfeel dev sync\`(CLI 在节点/到期时也会自动同步)。
|
|
148
|
+
|
|
144
149
|
## 三种工作流模式
|
|
145
150
|
- \`full\`:plan → plan_review → scheme → exec → review → test → archive,六道关全走。
|
|
146
151
|
- \`fast\`:跳过 \`scheme_*\` 与 \`test_*\`;**计划审查与代码审查各保留一轮**(fast 不等于免审)。
|
|
@@ -196,6 +201,11 @@ planner / schemer / executor / reviewer / feel-tester / archiver. **The authorit
|
|
|
196
201
|
- **Archive criteria are not negotiable**: a version archive requires every stage of that version to be \`done\` AND no blocking open REV; there is no force override. The CLI performs the archive; you only prompt.
|
|
197
202
|
- **Do not read archives during normal scheduling**: avoid \`.openfeel/flow-archive/**\`; use \`feel_archive action=show\` on demand.
|
|
198
203
|
|
|
204
|
+
## State & records (v1.5.0)
|
|
205
|
+
- **Only Feel writes state**: \`dev_last*\`, \`dev/current.md\`, \`status.md\`, \`flow.json\` are updated by Feel only; **subagents never read or write them** (context comes from the dispatch prompt / handoff docs).
|
|
206
|
+
- **No mandatory logs**: do not keep a per-step diary; \`flow.json.log\` is maintained by the CLI (last 200 entries only). For cross-session info, write a <=5-line handoff summary.
|
|
207
|
+
- **Update nodes**: start / turning point / end, or when \`statusSync.due=true\` (default 30 min) — update the handoff summary once, then run \`openfeel dev sync\` (the CLI also auto-syncs on nodes/expiry).
|
|
208
|
+
|
|
199
209
|
## The three workflow modes
|
|
200
210
|
- \`full\`: plan → plan_review → scheme → exec → review → test → archive (all six gates).
|
|
201
211
|
- \`fast\`: skips \`scheme_*\` and \`test_*\`; **plan review and code review each keep one round** (fast is not review-free).
|
package/dsh/lib/tools/index.js
CHANGED
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
|
|
14
14
|
import { FeelError } from '../adapters/cli.js';
|
|
15
15
|
import { legalNextPhases, planNextStep, readSnapshot } from '../adapters/dashboard.js';
|
|
16
|
+
import { readStatusSync } from '../adapters/dev-status.js';
|
|
16
17
|
import { resolveWorkspace } from '../adapters/workspace.js';
|
|
17
18
|
import {
|
|
18
19
|
boolean,
|
|
@@ -152,6 +153,7 @@ export function createTools(context) {
|
|
|
152
153
|
withRequirements: args.with_requirements === true,
|
|
153
154
|
});
|
|
154
155
|
snapshot.project.root = resolved.cwd;
|
|
156
|
+
snapshot.statusSync = readStatusSync(resolved.cwd);
|
|
155
157
|
const focus = snapshot.focus;
|
|
156
158
|
return {
|
|
157
159
|
data: snapshot,
|
|
@@ -182,6 +184,7 @@ export function createTools(context) {
|
|
|
182
184
|
return envelope('next', async () => {
|
|
183
185
|
const snapshot = await readSnapshot(cli, { cwd: resolved.cwd, signal: exec.signal });
|
|
184
186
|
snapshot.project.root = resolved.cwd;
|
|
187
|
+
snapshot.statusSync = readStatusSync(resolved.cwd);
|
|
185
188
|
const plan = planNextStep(snapshot);
|
|
186
189
|
return {
|
|
187
190
|
data: plan,
|
package/dsh/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "openfeel-dsh",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.1",
|
|
4
4
|
"description": "OpenFeel × DSH — Feel 模式适配器:把 OpenFeel 的流水线、需求分发、版本归档与知识库接入 DeepSeek Harness",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"private": true,
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
},
|
|
33
33
|
"openfeel": {
|
|
34
34
|
"adapter": "dsh",
|
|
35
|
-
"requiresCli": ">=1.
|
|
35
|
+
"requiresCli": ">=1.5.1"
|
|
36
36
|
},
|
|
37
37
|
"keywords": [
|
|
38
38
|
"openfeel",
|