openfeel 1.1.6 → 1.2.0

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.
Files changed (97) hide show
  1. package/README.en.md +25 -6
  2. package/README.md +17 -2
  3. package/README.zh-CN.md +25 -6
  4. package/dist/cli/index.d.ts.map +1 -1
  5. package/dist/cli/index.js +2 -0
  6. package/dist/cli/index.js.map +1 -1
  7. package/dist/commands/config.d.ts.map +1 -1
  8. package/dist/commands/config.js +85 -4
  9. package/dist/commands/config.js.map +1 -1
  10. package/dist/commands/flow.d.ts +8 -0
  11. package/dist/commands/flow.d.ts.map +1 -1
  12. package/dist/commands/flow.js +447 -15
  13. package/dist/commands/flow.js.map +1 -1
  14. package/dist/commands/plan.d.ts.map +1 -1
  15. package/dist/commands/plan.js +71 -7
  16. package/dist/commands/plan.js.map +1 -1
  17. package/dist/commands/req.d.ts +14 -0
  18. package/dist/commands/req.d.ts.map +1 -0
  19. package/dist/commands/req.js +562 -0
  20. package/dist/commands/req.js.map +1 -0
  21. package/dist/commands/stage.d.ts.map +1 -1
  22. package/dist/commands/stage.js +56 -2
  23. package/dist/commands/stage.js.map +1 -1
  24. package/dist/core/config.d.ts +17 -2
  25. package/dist/core/config.d.ts.map +1 -1
  26. package/dist/core/config.js +21 -6
  27. package/dist/core/config.js.map +1 -1
  28. package/dist/core/flow-archive/archive-file.d.ts +35 -0
  29. package/dist/core/flow-archive/archive-file.d.ts.map +1 -0
  30. package/dist/core/flow-archive/archive-file.js +3 -0
  31. package/dist/core/flow-archive/archive-file.js.map +1 -0
  32. package/dist/core/flow-archive/archive-health.d.ts +34 -0
  33. package/dist/core/flow-archive/archive-health.d.ts.map +1 -0
  34. package/dist/core/flow-archive/archive-health.js +76 -0
  35. package/dist/core/flow-archive/archive-health.js.map +1 -0
  36. package/dist/core/flow-archive/archive-ops.d.ts +68 -0
  37. package/dist/core/flow-archive/archive-ops.d.ts.map +1 -0
  38. package/dist/core/flow-archive/archive-ops.js +184 -0
  39. package/dist/core/flow-archive/archive-ops.js.map +1 -0
  40. package/dist/core/flow-archive/grouping.d.ts +58 -0
  41. package/dist/core/flow-archive/grouping.d.ts.map +1 -0
  42. package/dist/core/flow-archive/grouping.js +153 -0
  43. package/dist/core/flow-archive/grouping.js.map +1 -0
  44. package/dist/core/flow-manager.d.ts +78 -14
  45. package/dist/core/flow-manager.d.ts.map +1 -1
  46. package/dist/core/flow-manager.js +311 -55
  47. package/dist/core/flow-manager.js.map +1 -1
  48. package/dist/core/i18n-data/en.d.ts +1 -0
  49. package/dist/core/i18n-data/en.d.ts.map +1 -1
  50. package/dist/core/i18n-data/en.js +159 -3
  51. package/dist/core/i18n-data/en.js.map +1 -1
  52. package/dist/core/i18n-data/zh-CN.d.ts +1 -0
  53. package/dist/core/i18n-data/zh-CN.d.ts.map +1 -1
  54. package/dist/core/i18n-data/zh-CN.js +161 -3
  55. package/dist/core/i18n-data/zh-CN.js.map +1 -1
  56. package/dist/core/i18n.js +4 -4
  57. package/dist/core/i18n.js.map +1 -1
  58. package/dist/core/pipeline-schema.d.ts +5 -0
  59. package/dist/core/pipeline-schema.d.ts.map +1 -1
  60. package/dist/core/pipeline-schema.js +5 -0
  61. package/dist/core/pipeline-schema.js.map +1 -1
  62. package/dist/core/plan/path.d.ts +17 -0
  63. package/dist/core/plan/path.d.ts.map +1 -1
  64. package/dist/core/plan/path.js +31 -0
  65. package/dist/core/plan/path.js.map +1 -1
  66. package/dist/core/plan/scheme.d.ts +22 -0
  67. package/dist/core/plan/scheme.d.ts.map +1 -1
  68. package/dist/core/plan/scheme.js +71 -2
  69. package/dist/core/plan/scheme.js.map +1 -1
  70. package/dist/core/plan/stage.d.ts +2 -0
  71. package/dist/core/plan/stage.d.ts.map +1 -1
  72. package/dist/core/plan/stage.js +8 -0
  73. package/dist/core/plan/stage.js.map +1 -1
  74. package/dist/core/req/aggregate.d.ts +61 -0
  75. package/dist/core/req/aggregate.d.ts.map +1 -0
  76. package/dist/core/req/aggregate.js +134 -0
  77. package/dist/core/req/aggregate.js.map +1 -0
  78. package/dist/core/req/body-file.d.ts +16 -0
  79. package/dist/core/req/body-file.d.ts.map +1 -0
  80. package/dist/core/req/body-file.js +80 -0
  81. package/dist/core/req/body-file.js.map +1 -0
  82. package/dist/core/req/requirement-ops.d.ts +74 -0
  83. package/dist/core/req/requirement-ops.d.ts.map +1 -0
  84. package/dist/core/req/requirement-ops.js +290 -0
  85. package/dist/core/req/requirement-ops.js.map +1 -0
  86. package/dist/core/req/types.d.ts +40 -0
  87. package/dist/core/req/types.d.ts.map +1 -0
  88. package/dist/core/req/types.js +13 -0
  89. package/dist/core/req/types.js.map +1 -0
  90. package/dist/core/setup.js +4 -4
  91. package/dist/core/template-loader.d.ts.map +1 -1
  92. package/dist/core/template-loader.js +649 -65
  93. package/dist/core/template-loader.js.map +1 -1
  94. package/dist/core/update.d.ts.map +1 -1
  95. package/dist/core/update.js +131 -15
  96. package/dist/core/update.js.map +1 -1
  97. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"scheme.d.ts","sourceRoot":"","sources":["../../../src/core/plan/scheme.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scheme.d.ts","sourceRoot":"","sources":["../../../src/core/plan/scheme.ts"],"names":[],"mappings":"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"}
@@ -6,8 +6,8 @@
6
6
  import { existsSync, mkdirSync, readFileSync, readdirSync } from 'node:fs';
7
7
  import { resolve, join } from 'node:path';
8
8
  import { FlowManager, isFlowConcurrentError, isTemplateEmpty, EMPTY_TEMPLATE_MARKER, findOrphanOps } from '../flow-manager.js';
9
- import { parseStageId, validateStageId, findStageDirConflict, normalizeStageId } from './path.js';
10
- import { ensureStageSkeleton } from './stage.js';
9
+ import { parseStageId, validateStageId, findStageDirConflict, normalizeStageId, findStageStatusPath } from './path.js';
10
+ import { ensureStageSkeleton, sanitizeTaskDesc } from './stage.js';
11
11
  import { t, getCliLang } from '../i18n.js';
12
12
  import { atomicWriteFileSync } from '../fs/atomic-write.js';
13
13
  import { withFileLock, projectLockPath } from '../fs/file-lock.js';
@@ -285,6 +285,75 @@ export function createScheme(projectPath, stageName, title, options) {
285
285
  warnUnregisteredFiles(projectPath, parsed.fullStageId);
286
286
  return opId;
287
287
  }
288
+ /**
289
+ * 从阶段任务表机械生成 ops/op-NNN.md 骨架 + ops/deps.yaml 占位(stage-75 T6)。
290
+ * **不调用任何 Agent**、无隐式副作用(`plan stage add` 不铺骨架):仅解析 status.md 的任务行,
291
+ * 逐条复用 `createScheme`(序号/注册/骨架/告警零复制)。
292
+ * 幂等:已铺任务按 `任务{N}:` **前缀锚定**跳过(禁模糊子串,`:` 阻断 任务1/任务10 前缀碰撞)。
293
+ * @param projectPath 项目根路径
294
+ * @param stageName 阶段 ID(短名 stage-01 或完整 v1.0.0-stage-01)
295
+ * @returns 创建/跳过明细
296
+ * @throws Error 阶段名非法(INVALID_STAGE)或 status.md 不存在(STATUS_NOT_FOUND)
297
+ */
298
+ export function createSchemesFromTasks(projectPath, stageName) {
299
+ const parsed = parseStageId(stageName);
300
+ if (!parsed) {
301
+ // 错误路径:阶段名非法(命令层已先校验,此处防御)
302
+ throw new Error('INVALID_STAGE');
303
+ }
304
+ const statusPath = findStageStatusPath(projectPath, parsed.fullStageId);
305
+ if (!statusPath) {
306
+ // 错误路径:阶段 status.md 不存在 → 命令层映射 stage.errorStageNotFoundTmpl
307
+ throw new Error('STATUS_NOT_FOUND');
308
+ }
309
+ // 任务解析(任务表唯一权威 = status.md 文本;沿用 `- [ ] 任务N:desc` 行形态)
310
+ const content = readFileSync(statusPath, 'utf-8');
311
+ const taskRegex = /^-\s*\[[ x]\]\s*任务(\d+)[::]\s*(.*)$/gm;
312
+ const byNo = new Map();
313
+ let m;
314
+ while ((m = taskRegex.exec(content)) !== null) {
315
+ const no = parseInt(m[1], 10);
316
+ if (!byNo.has(no)) {
317
+ byNo.set(no, m[2].trim());
318
+ }
319
+ }
320
+ const taskNos = [...byNo.keys()].sort((a, b) => a - b);
321
+ // 幂等判重信源:既有 op 标题集合(listSchemes 的 title 权威 = 文件首行 `# op-NNN:{title}`)
322
+ const existingTitles = listSchemes(projectPath, parsed.fullStageId).map((s) => s.title);
323
+ const result = {
324
+ created: [],
325
+ createdTitles: [],
326
+ skippedTaskNos: [],
327
+ depsPlaceholderCreated: false,
328
+ };
329
+ for (const no of taskNos) {
330
+ const prefix = `任务${no}:`;
331
+ if (existingTitles.some((t) => t.startsWith(prefix))) {
332
+ result.skippedTaskNos.push(no);
333
+ continue;
334
+ }
335
+ const title = `${prefix}${sanitizeTaskDesc(byNo.get(no) ?? '')}`;
336
+ const opId = createScheme(projectPath, parsed.fullStageId, title);
337
+ result.created.push(opId);
338
+ result.createdTitles.push(title);
339
+ }
340
+ // ops/deps.yaml 占位(仅不存在时写最小合法 YAML;不覆盖既有)
341
+ const opsDir = resolve(projectPath, '.openfeel', 'plan', parsed.series, parsed.stageDir, 'ops');
342
+ if (!existsSync(opsDir)) {
343
+ mkdirSync(opsDir, { recursive: true });
344
+ }
345
+ const depsPath = join(opsDir, 'deps.yaml');
346
+ if (!existsSync(depsPath)) {
347
+ atomicWriteFileSync(depsPath, `# ${parsed.fullStageId} op 依赖声明(占位)\n`
348
+ + '# 由 openfeel plan scheme create --from-tasks 机械生成;依赖关系请由 openfeel-schemer 补全\n'
349
+ + '# 参见 kb/patterns.md #op 文件命名规范 + #deps.yaml 声明实际文件名\n\n'
350
+ + 'version: "1.1"\n'
351
+ + `stage: ${parsed.fullStageId}\n\n`
352
+ + 'ops: {}\n');
353
+ result.depsPlaceholderCreated = true;
354
+ }
355
+ return result;
356
+ }
288
357
  /**
289
358
  * 判断 ops/ 目录是否存在该 op 的模板文件。
290
359
  * R1:同时匹配 `op-NNN.md` 与历史 `op-NNN_*.md` 两种命名(避免历史命名被误判为键孤儿)。
@@ -1 +1 @@
1
- {"version":3,"file":"scheme.js","sourceRoot":"","sources":["../../../src/core/plan/scheme.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scheme.js","sourceRoot":"","sources":["../../../src/core/plan/scheme.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,8 @@ export interface StageSkeletonOverrides {
13
13
  executionMode?: 'manual' | 'auto';
14
14
  /** 自动推进覆盖值 */
15
15
  autoAdvance?: 'disabled' | 'enabled';
16
+ /** 工作流模式覆盖值 */
17
+ workflowMode?: 'full' | 'fast';
16
18
  }
17
19
  /** 折叠任务描述:去除首尾空白,内部换行折叠为空格(防结构破坏) */
18
20
  export declare function sanitizeTaskDesc(desc: string): string;
@@ -1 +1 @@
1
- {"version":3,"file":"stage.d.ts","sourceRoot":"","sources":["../../../src/core/plan/stage.ts"],"names":[],"mappings":"AAWA,WAAW;AACX,MAAM,WAAW,KAAK;IACpB,qBAAqB;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,qDAAqD;AACrD,MAAM,WAAW,sBAAsB;IACrC,cAAc;IACd,aAAa,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAClC,cAAc;IACd,WAAW,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;CACtC;AAED,qCAAqC;AACrC,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAEtD;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAsC3F;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAqFrJ;AAED;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAgBvI;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,KAAK,EAAE,CAkDvD"}
1
+ {"version":3,"file":"stage.d.ts","sourceRoot":"","sources":["../../../src/core/plan/stage.ts"],"names":[],"mappings":"AAWA,WAAW;AACX,MAAM,WAAW,KAAK;IACpB,qBAAqB;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,qDAAqD;AACrD,MAAM,WAAW,sBAAsB;IACrC,cAAc;IACd,aAAa,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAClC,cAAc;IACd,WAAW,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IACrC,eAAe;IACf,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAChC;AAED,qCAAqC;AACrC,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAEtD;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAsC3F;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAuFrJ;AAED;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAsBvI;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,KAAK,EAAE,CAkDvD"}
@@ -118,10 +118,12 @@ ${depsText}
118
118
  const configDefaults = resolveConfigDefaults(projectPath);
119
119
  const executionMode = overrides?.executionMode ?? configDefaults.execution_mode;
120
120
  const autoAdvance = overrides?.autoAdvance ?? configDefaults.auto_advance;
121
+ const workflowMode = overrides?.workflowMode ?? configDefaults.workflow_mode;
121
122
  const statusContent = `# ${parsed.fullStageId} 状态
122
123
 
123
124
  - **执行模式**:${executionMode}
124
125
  - **自动推进**:${autoAdvance}
126
+ - **工作流模式**:${workflowMode}
125
127
  - **状态**:planned
126
128
  - **当前责任 Agent**:user
127
129
  - **上一责任 Agent**:none
@@ -174,7 +176,13 @@ export function addStage(projectPath, name, deps, tasks, overrides) {
174
176
  // 同步到 flow.json(若存在)— 键用完整 stageId
175
177
  const flowMgr = new FlowManager(projectPath);
176
178
  if (flowMgr.isLoaded()) {
179
+ // 冗余写入点①:仅「新建」阶段写 workflow_mode(已存在阶段不覆盖,防与 status.md 权威值漂移,D6)
180
+ const existed = !!flowMgr.getData().stages[parsed.fullStageId];
177
181
  flowMgr.registerStage(parsed.fullStageId, deps ?? []);
182
+ if (!existed) {
183
+ const resolvedWorkflowMode = overrides?.workflowMode ?? resolveConfigDefaults(projectPath).workflow_mode;
184
+ flowMgr.getData().stages[parsed.fullStageId].workflow_mode = resolvedWorkflowMode;
185
+ }
178
186
  flowMgr.save();
179
187
  }
180
188
  }
@@ -1 +1 @@
1
- {"version":3,"file":"stage.js","sourceRoot":"","sources":["../../../src/core/plan/stage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stage.js","sourceRoot":"","sources":["../../../src/core/plan/stage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * 需求聚合投影与对称回写 — 阶段 phase 集合 → 需求状态的投影与内存回写
3
+ *
4
+ * 职责:① computeRequirementAggregate(纯投影;done 判定委托 allLinkedStagesDone 单一原语——REV-83-002;
5
+ * 零关联 → aggregate = null,空集守卫禁误报 done);② resolveRequirementStatusForStage(单阶段 → 目标状态,纯函数);
6
+ * ③ syncRequirementStatus(对称回写入口,纯内存,返回受影响需求 ID 列表,供测试/日志);
7
+ * ④ requirementHealthItems(需求对账项构造——悬空关联 / done 漂移;只读纯函数,warn-only 恒无 fail)。
8
+ * 正交声明:不依赖归档层 / 不引用工作流模式字段(禁用串零命中);对 flow-manager 仅 `import type`(防运行时环)。
9
+ * 写盘:全部纯内存——落盘恒走调用方 FlowManager.save()(不新增写盘点)。
10
+ */
11
+ import type { FlowData, HealthCheckItem } from '../flow-manager.js';
12
+ import type { RequirementStatus } from './types.js';
13
+ /** auto-done 前置集(REV-83-004):聚合 done 时自动置 done 的合法来源状态。
14
+ * health 漂移判据与此**同口径**(结构化单点,禁第二份列表);draft/blocked/终态为设计豁免。 */
15
+ export declare const AUTO_DONE_PRECONDITION: readonly RequirementStatus[];
16
+ /** 聚合投影值域(三值;零关联 → null——空集守卫,禁误报 done) */
17
+ export type RequirementAggregateValue = 'scheduled' | 'in_progress' | 'done' | null;
18
+ /** 聚合投影结果(stageIds = data.stages 键序) */
19
+ export interface RequirementAggregate {
20
+ /** 关联阶段 ID 列表(data.stages 键序) */
21
+ stageIds: string[];
22
+ /** 关联阶段数 */
23
+ stageCount: number;
24
+ /** 其中 phase === 'done' 的数量 */
25
+ doneCount: number;
26
+ /** 粗粒度投影:全 done → done;任一非 plan_pending → in_progress;全 plan_pending → scheduled;零关联 → null */
27
+ aggregate: RequirementAggregateValue;
28
+ }
29
+ /**
30
+ * 需求聚合投影(纯函数;无 IO、无 this 依赖,给定输入相同输出)。
31
+ * done 分支**委托** allLinkedStagesDone(含空集守卫同源)——禁第二份 done 表达式(REV-83-002)。
32
+ * 零关联阶段 → aggregate = null(不参与 done 判定——空集守卫,禁误报)。
33
+ */
34
+ export declare function computeRequirementAggregate(data: FlowData, requirementId: string): RequirementAggregate;
35
+ /**
36
+ * 单阶段 → 其关联需求的目标状态(纯函数;供回写入口消费)。
37
+ * 阶段不存在 / 无关联(null / undefined / 空串)→ null(早返回单点——零动作)。
38
+ */
39
+ export declare function resolveRequirementStatusForStage(data: FlowData, stageId: string): {
40
+ requirementId: string;
41
+ target: Exclude<RequirementAggregateValue, null>;
42
+ } | null;
43
+ /**
44
+ * 需求聚合对称回写入口(纯内存;返回受影响需求 ID 列表)。
45
+ * 规则(聚合视图表述——不绑定事件,REV-83-005 / plan 不变量 8):
46
+ * - 聚合 done ∧ status ∈ AUTO_DONE_PRECONDITION → 置 done + 审计 requirement_auto_done;
47
+ * - 聚合 ≠ done ∧ status === 'done' → 回退 'in_progress'(不做 done→scheduled 细粒度回退,S-83-5)+ 审计 requirement_auto_reopen;
48
+ * - 其余(前置集外 / 悬空关联 / 状态无变化)→ 零动作零审计。
49
+ * 触发点由调用方约束:advance 仅 done 分支 / reset 写入后(op-002);dry-run 路径均不可达。
50
+ */
51
+ export declare function syncRequirementStatus(data: FlowData, stageId: string): string[];
52
+ /**
53
+ * 需求对账检查项(只读纯函数):① 悬空 requirement_id(阶段引用的需求不存在);
54
+ * ② done 漂移(**前置集内**(AUTO_DONE_PRECONDITION 同口径单点)∧ 聚合 done ∧ status ≠ done——
55
+ * draft/blocked/终态为设计豁免不报)。恒无 fail → 不改退出码、不参与 --fix(对齐归档对账范式)。
56
+ */
57
+ export declare function requirementHealthItems(input: {
58
+ data: FlowData;
59
+ lang?: string;
60
+ }): HealthCheckItem[];
61
+ //# sourceMappingURL=aggregate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aggregate.d.ts","sourceRoot":"","sources":["../../../src/core/req/aggregate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAEpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAGpD;gEACgE;AAChE,eAAO,MAAM,sBAAsB,EAAE,SAAS,iBAAiB,EAAiC,CAAC;AAEjG,2CAA2C;AAC3C,MAAM,MAAM,yBAAyB,GAAG,WAAW,GAAG,aAAa,GAAG,MAAM,GAAG,IAAI,CAAC;AAEpF,wCAAwC;AACxC,MAAM,WAAW,oBAAoB;IACnC,iCAAiC;IACjC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,+FAA+F;IAC/F,SAAS,EAAE,yBAAyB,CAAC;CACtC;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,GAAG,oBAAoB,CAgBvG;AAED;;;GAGG;AACH,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,MAAM,GACd;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAA;CAAE,GAAG,IAAI,CAOpF;AAOD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAwB/E;AAOD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,eAAe,EAAE,CA6BlG"}
@@ -0,0 +1,134 @@
1
+ import { allLinkedStagesDone } from './requirement-ops.js'; // done 判定唯一原语(REV-83-002)
2
+ import { t } from '../i18n.js'; // 对账文案(新键 flow.health.req*;双表成对)
3
+ /** auto-done 前置集(REV-83-004):聚合 done 时自动置 done 的合法来源状态。
4
+ * health 漂移判据与此**同口径**(结构化单点,禁第二份列表);draft/blocked/终态为设计豁免。 */
5
+ export const AUTO_DONE_PRECONDITION = ['scheduled', 'in_progress'];
6
+ /**
7
+ * 需求聚合投影(纯函数;无 IO、无 this 依赖,给定输入相同输出)。
8
+ * done 分支**委托** allLinkedStagesDone(含空集守卫同源)——禁第二份 done 表达式(REV-83-002)。
9
+ * 零关联阶段 → aggregate = null(不参与 done 判定——空集守卫,禁误报)。
10
+ */
11
+ export function computeRequirementAggregate(data, requirementId) {
12
+ const linked = Object.entries(data.stages ?? {}).filter(([, s]) => (s.requirement_id ?? null) === requirementId);
13
+ const stageIds = linked.map(([stageId]) => stageId);
14
+ const stageCount = stageIds.length;
15
+ let doneCount = 0;
16
+ let anyStarted = false;
17
+ for (const [, s] of linked) {
18
+ if (s.phase === 'done') {
19
+ doneCount += 1;
20
+ }
21
+ if (s.phase !== 'plan_pending') {
22
+ anyStarted = true;
23
+ }
24
+ }
25
+ // 零关联 → null(空集守卫);done 判定唯一经 allLinkedStagesDone 委托(禁第二份表达式)
26
+ let aggregate = null;
27
+ if (stageCount > 0) {
28
+ aggregate = allLinkedStagesDone(data, requirementId) ? 'done' : (anyStarted ? 'in_progress' : 'scheduled');
29
+ }
30
+ return { stageIds, stageCount, doneCount, aggregate };
31
+ }
32
+ /**
33
+ * 单阶段 → 其关联需求的目标状态(纯函数;供回写入口消费)。
34
+ * 阶段不存在 / 无关联(null / undefined / 空串)→ null(早返回单点——零动作)。
35
+ */
36
+ export function resolveRequirementStatusForStage(data, stageId) {
37
+ const stage = data.stages?.[stageId];
38
+ const requirementId = stage?.requirement_id ?? null;
39
+ if (!requirementId) {
40
+ return null;
41
+ }
42
+ const agg = computeRequirementAggregate(data, requirementId);
43
+ if (agg.aggregate === null) {
44
+ return null;
45
+ } // 不可达(该阶段自身即关联)——防御
46
+ return { requirementId, target: agg.aggregate };
47
+ }
48
+ /** 追加聚合回写审计日志(纯内存;save 由调用方承担;与需求原语审计同形——agent 'cli',S-83-6) */
49
+ function appendAggregateLog(data, action, detail) {
50
+ data.log.push({ time: new Date().toISOString(), agent: 'cli', action, detail });
51
+ }
52
+ /**
53
+ * 需求聚合对称回写入口(纯内存;返回受影响需求 ID 列表)。
54
+ * 规则(聚合视图表述——不绑定事件,REV-83-005 / plan 不变量 8):
55
+ * - 聚合 done ∧ status ∈ AUTO_DONE_PRECONDITION → 置 done + 审计 requirement_auto_done;
56
+ * - 聚合 ≠ done ∧ status === 'done' → 回退 'in_progress'(不做 done→scheduled 细粒度回退,S-83-5)+ 审计 requirement_auto_reopen;
57
+ * - 其余(前置集外 / 悬空关联 / 状态无变化)→ 零动作零审计。
58
+ * 触发点由调用方约束:advance 仅 done 分支 / reset 写入后(op-002);dry-run 路径均不可达。
59
+ */
60
+ export function syncRequirementStatus(data, stageId) {
61
+ const resolved = resolveRequirementStatusForStage(data, stageId);
62
+ if (!resolved) {
63
+ return [];
64
+ }
65
+ // raw find 改本体(禁经浅副本——与需求原语写路径同纪律);非数组视同空集(读侧宽容,零注入)
66
+ const req = (Array.isArray(data.requirements) ? data.requirements : []).find((r) => r?.id === resolved.requirementId);
67
+ if (!req) {
68
+ return [];
69
+ } // 悬空 requirement_id → 零动作(health 对账报告,不自动修)
70
+ const affected = [];
71
+ if (resolved.target === 'done') {
72
+ // 正向:聚合 done ∧ 前置集内 → done(前置集外零动作零审计——REV-83-004)
73
+ if (AUTO_DONE_PRECONDITION.includes(req.status)) {
74
+ const from = req.status;
75
+ req.status = 'done';
76
+ req.updated_at = new Date().toISOString();
77
+ appendAggregateLog(data, 'requirement_auto_done', { requirementId: req.id, from, to: 'done', triggerStage: stageId });
78
+ affected.push(req.id);
79
+ }
80
+ }
81
+ else if (req.status === 'done') {
82
+ // 对称回退(聚合视图,不绑定事件):聚合 ≠ done ∧ status === done → in_progress(REV-83-005)
83
+ req.status = 'in_progress';
84
+ req.updated_at = new Date().toISOString();
85
+ appendAggregateLog(data, 'requirement_auto_reopen', { requirementId: req.id, from: 'done', to: 'in_progress', triggerStage: stageId });
86
+ affected.push(req.id);
87
+ }
88
+ return affected;
89
+ }
90
+ /** 需求对账 section(悬空关联;恒产生 1 条 pass/warn——对齐归档对账 a 项先例) */
91
+ const SECTION_REQ_LINKS = '需求对账';
92
+ /** 需求漂移 section(仅非空时产生 warn——对齐归档对账 b 项先例) */
93
+ const SECTION_REQ_DRIFT = '需求漂移';
94
+ /**
95
+ * 需求对账检查项(只读纯函数):① 悬空 requirement_id(阶段引用的需求不存在);
96
+ * ② done 漂移(**前置集内**(AUTO_DONE_PRECONDITION 同口径单点)∧ 聚合 done ∧ status ≠ done——
97
+ * draft/blocked/终态为设计豁免不报)。恒无 fail → 不改退出码、不参与 --fix(对齐归档对账范式)。
98
+ */
99
+ export function requirementHealthItems(input) {
100
+ const { data } = input;
101
+ const lang = input.lang ?? 'zh-CN';
102
+ const items = [];
103
+ const requirements = Array.isArray(data.requirements) ? data.requirements : [];
104
+ const ids = new Set(requirements.map((r) => r?.id).filter((x) => typeof x === 'string'));
105
+ // ① 悬空需求关联(阶段 → 不存在需求)
106
+ const dangling = [];
107
+ for (const [stageId, s] of Object.entries(data.stages ?? {})) {
108
+ const rid = s?.requirement_id ?? null;
109
+ if (rid !== null && rid !== '' && !ids.has(rid)) {
110
+ dangling.push(`${stageId} → ${rid}`);
111
+ }
112
+ }
113
+ if (dangling.length === 0) {
114
+ items.push({ section: SECTION_REQ_LINKS, status: 'pass', message: t('flow.health.reqLinksPassTmpl', lang, { n: String(requirements.length) }) });
115
+ }
116
+ else {
117
+ items.push({ section: SECTION_REQ_LINKS, status: 'warn', message: t('flow.health.reqDanglingTmpl', lang, { items: dangling.slice(0, 5).join(', ') }) });
118
+ }
119
+ // ② done 漂移:与回写守卫**同口径**(AUTO_DONE_PRECONDITION 单点——禁第二份前置集列表)
120
+ const drifted = [];
121
+ for (const r of requirements) {
122
+ if (!AUTO_DONE_PRECONDITION.includes(r.status)) {
123
+ continue;
124
+ } // 前置集外(含 draft/blocked/终态)设计豁免
125
+ if (computeRequirementAggregate(data, r.id).aggregate === 'done') {
126
+ drifted.push(r.id);
127
+ }
128
+ }
129
+ if (drifted.length > 0) {
130
+ items.push({ section: SECTION_REQ_DRIFT, status: 'warn', message: t('flow.health.reqDriftTmpl', lang, { items: drifted.slice(0, 5).join(', ') }) });
131
+ }
132
+ return items;
133
+ }
134
+ //# sourceMappingURL=aggregate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aggregate.js","sourceRoot":"","sources":["../../../src/core/req/aggregate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { RequirementData } from './types.js';
2
+ /** 需求正文目录:{projectPath}/.openfeel/requirements(**不纳入 WORKSPACE_DIRS**,按需 mkdir 幂等创建——与归档目录同口径) */
3
+ export declare function getRequirementsDir(projectPath: string): string;
4
+ /** 正文**存储**相对路径(恒 POSIX 正斜杠,跨平台一致;禁 path.join——Windows 产反斜杠) */
5
+ export declare function getRequirementBodyRelPath(id: string): string;
6
+ /** 正文**文件系统**路径(单点;FS 访问用原生分隔符) */
7
+ export declare function getRequirementBodyPath(projectPath: string, id: string): string;
8
+ /**
9
+ * 机械铺需求正文骨架(人读副本)。
10
+ * - mkdir 幂等;atomicWriteFileSync(backup 缺省 false)
11
+ * - 目标文件已存在 → **no-op 不覆盖**(保留人工补充内容)
12
+ * - 恒将 req.body_path 设为本函数单点派生的 POSIX 相对路径(传入须为 addRequirement 返回的本体)
13
+ * @returns 目标文件的绝对路径
14
+ */
15
+ export declare function writeRequirementBodySkeleton(projectPath: string, req: RequirementData): string;
16
+ //# sourceMappingURL=body-file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"body-file.d.ts","sourceRoot":"","sources":["../../../src/core/req/body-file.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,kGAAkG;AAClG,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED,gEAAgE;AAChE,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,mCAAmC;AACnC,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAE9E;AA0CD;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe,GAAG,MAAM,CAQ9F"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * 需求正文文件原语 — 正文路径单点与骨架机械铺
3
+ *
4
+ * 职责:`.openfeel/requirements/REQ-NNN.md` 正文文件(人读副本)的路径派生与骨架写入。
5
+ * 正交声明:路径全由 `projectPath` 参数传入,零全局路径依赖;不依赖归档层 / 不引用工作流模式字段。
6
+ * 唯一 IO 点:骨架经 `atomicWriteFileSync` 落盘(目录按需 mkdir 幂等创建)。
7
+ */
8
+ import { join } from 'node:path';
9
+ import { existsSync, mkdirSync } from 'node:fs';
10
+ import { atomicWriteFileSync } from '../fs/atomic-write.js';
11
+ /** 需求正文目录:{projectPath}/.openfeel/requirements(**不纳入 WORKSPACE_DIRS**,按需 mkdir 幂等创建——与归档目录同口径) */
12
+ export function getRequirementsDir(projectPath) {
13
+ return join(projectPath, '.openfeel', 'requirements');
14
+ }
15
+ /** 正文**存储**相对路径(恒 POSIX 正斜杠,跨平台一致;禁 path.join——Windows 产反斜杠) */
16
+ export function getRequirementBodyRelPath(id) {
17
+ return `.openfeel/requirements/${id}.md`;
18
+ }
19
+ /** 正文**文件系统**路径(单点;FS 访问用原生分隔符) */
20
+ export function getRequirementBodyPath(projectPath, id) {
21
+ return join(getRequirementsDir(projectPath), `${id}.md`);
22
+ }
23
+ /**
24
+ * 渲染需求正文骨架(裁定 6 模板逐字)。
25
+ * 状态取当前值(新需求恒为 draft 快照);`target_version` 缺省渲染为 `(未指定)`。
26
+ */
27
+ function renderRequirementBodySkeleton(req) {
28
+ const targetVersion = req.target_version !== undefined && req.target_version !== ''
29
+ ? req.target_version
30
+ : '(未指定)';
31
+ return [
32
+ `# ${req.id}:${req.title}`,
33
+ '',
34
+ '> 本文件为需求正文(人读副本,由 req add 机械铺骨架)。**机读权威恒为 `.openfeel/flow.json` 的 `requirements` 条目**;两者不一致时以 flow.json 为准。下方状态为创建时快照,不追写实时状态。',
35
+ '',
36
+ '## 状态',
37
+ '',
38
+ `${req.status}(创建时快照;以 flow.json 为准)`,
39
+ '',
40
+ '## 摘要',
41
+ '',
42
+ '(待补充)',
43
+ '',
44
+ '## 目标与验收',
45
+ '',
46
+ '(待补充)',
47
+ '',
48
+ '## 预估版本',
49
+ '',
50
+ targetVersion,
51
+ '',
52
+ '## 关联阶段',
53
+ '',
54
+ '(以 flow.json 的 `stages[*].requirement_id` 为准;此处可人工补充说明)',
55
+ '',
56
+ '## 变更记录',
57
+ '',
58
+ `- ${req.created_at} 创建(${req.id},初始状态 draft)`,
59
+ '',
60
+ ].join('\n');
61
+ }
62
+ /**
63
+ * 机械铺需求正文骨架(人读副本)。
64
+ * - mkdir 幂等;atomicWriteFileSync(backup 缺省 false)
65
+ * - 目标文件已存在 → **no-op 不覆盖**(保留人工补充内容)
66
+ * - 恒将 req.body_path 设为本函数单点派生的 POSIX 相对路径(传入须为 addRequirement 返回的本体)
67
+ * @returns 目标文件的绝对路径
68
+ */
69
+ export function writeRequirementBodySkeleton(projectPath, req) {
70
+ const dir = getRequirementsDir(projectPath);
71
+ mkdirSync(dir, { recursive: true }); // 幂等
72
+ const filePath = getRequirementBodyPath(projectPath, req.id);
73
+ req.body_path = getRequirementBodyRelPath(req.id); // 单点赋值(no-op 路径亦保证一致)
74
+ if (existsSync(filePath)) {
75
+ return filePath;
76
+ } // 已存在 → 不覆盖
77
+ atomicWriteFileSync(filePath, renderRequirementBodySkeleton(req));
78
+ return filePath;
79
+ }
80
+ //# sourceMappingURL=body-file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"body-file.js","sourceRoot":"","sources":["../../../src/core/req/body-file.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAG5D,kGAAkG;AAClG,MAAM,UAAU,kBAAkB,CAAC,WAAmB;IACpD,OAAO,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;AACxD,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,yBAAyB,CAAC,EAAU;IAClD,OAAO,0BAA0B,EAAE,KAAK,CAAC;AAC3C,CAAC;AAED,mCAAmC;AACnC,MAAM,UAAU,sBAAsB,CAAC,WAAmB,EAAE,EAAU;IACpE,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAC3D,CAAC;AAED;;;GAGG;AACH,SAAS,6BAA6B,CAAC,GAAoB;IACzD,MAAM,aAAa,GAAG,GAAG,CAAC,cAAc,KAAK,SAAS,IAAI,GAAG,CAAC,cAAc,KAAK,EAAE;QACjF,CAAC,CAAC,GAAG,CAAC,cAAc;QACpB,CAAC,CAAC,OAAO,CAAC;IACZ,OAAO;QACL,KAAK,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,KAAK,EAAE;QAC1B,EAAE;QACF,gIAAgI;QAChI,EAAE;QACF,OAAO;QACP,EAAE;QACF,GAAG,GAAG,CAAC,MAAM,wBAAwB;QACrC,EAAE;QACF,OAAO;QACP,EAAE;QACF,OAAO;QACP,EAAE;QACF,UAAU;QACV,EAAE;QACF,OAAO;QACP,EAAE;QACF,SAAS;QACT,EAAE;QACF,aAAa;QACb,EAAE;QACF,SAAS;QACT,EAAE;QACF,yDAAyD;QACzD,EAAE;QACF,SAAS;QACT,EAAE;QACF,KAAK,GAAG,CAAC,UAAU,OAAO,GAAG,CAAC,EAAE,cAAc;QAC9C,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,4BAA4B,CAAC,WAAmB,EAAE,GAAoB;IACpF,MAAM,GAAG,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC5C,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAuB,KAAK;IAChE,MAAM,QAAQ,GAAG,sBAAsB,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7D,GAAG,CAAC,SAAS,GAAG,yBAAyB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAS,sBAAsB;IACjF,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAC,OAAO,QAAQ,CAAC;IAAC,CAAC,CAAa,YAAY;IACvE,mBAAmB,CAAC,QAAQ,EAAE,6BAA6B,CAAC,GAAG,CAAC,CAAC,CAAC;IAClE,OAAO,QAAQ,CAAC;AAClB,CAAC"}