openfeel 1.2.1 → 1.2.4

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 (104) hide show
  1. package/README.en.md +34 -1
  2. package/README.md +34 -1
  3. package/README.zh-CN.md +34 -1
  4. package/dist/cli/index.d.ts +17 -3
  5. package/dist/cli/index.d.ts.map +1 -1
  6. package/dist/cli/index.js +96 -8
  7. package/dist/cli/index.js.map +1 -1
  8. package/dist/cli/project-option.d.ts +40 -0
  9. package/dist/cli/project-option.d.ts.map +1 -0
  10. package/dist/cli/project-option.js +140 -0
  11. package/dist/cli/project-option.js.map +1 -0
  12. package/dist/commands/archive.d.ts.map +1 -1
  13. package/dist/commands/archive.js +45 -4
  14. package/dist/commands/archive.js.map +1 -1
  15. package/dist/commands/config.d.ts.map +1 -1
  16. package/dist/commands/config.js +103 -9
  17. package/dist/commands/config.js.map +1 -1
  18. package/dist/commands/flow.d.ts.map +1 -1
  19. package/dist/commands/flow.js +438 -125
  20. package/dist/commands/flow.js.map +1 -1
  21. package/dist/commands/instructions.d.ts.map +1 -1
  22. package/dist/commands/instructions.js +13 -3
  23. package/dist/commands/instructions.js.map +1 -1
  24. package/dist/commands/knowledge.d.ts.map +1 -1
  25. package/dist/commands/knowledge.js +113 -17
  26. package/dist/commands/knowledge.js.map +1 -1
  27. package/dist/commands/lint.d.ts.map +1 -1
  28. package/dist/commands/lint.js +78 -39
  29. package/dist/commands/lint.js.map +1 -1
  30. package/dist/commands/model.d.ts.map +1 -1
  31. package/dist/commands/model.js +86 -8
  32. package/dist/commands/model.js.map +1 -1
  33. package/dist/commands/plan.d.ts.map +1 -1
  34. package/dist/commands/plan.js +45 -7
  35. package/dist/commands/plan.js.map +1 -1
  36. package/dist/commands/project.d.ts +66 -0
  37. package/dist/commands/project.d.ts.map +1 -1
  38. package/dist/commands/project.js +122 -64
  39. package/dist/commands/project.js.map +1 -1
  40. package/dist/commands/req.d.ts.map +1 -1
  41. package/dist/commands/req.js +23 -11
  42. package/dist/commands/req.js.map +1 -1
  43. package/dist/commands/roadmap.d.ts.map +1 -1
  44. package/dist/commands/roadmap.js +21 -2
  45. package/dist/commands/roadmap.js.map +1 -1
  46. package/dist/commands/setup.d.ts.map +1 -1
  47. package/dist/commands/setup.js +11 -3
  48. package/dist/commands/setup.js.map +1 -1
  49. package/dist/commands/shared/errors.d.ts +55 -4
  50. package/dist/commands/shared/errors.d.ts.map +1 -1
  51. package/dist/commands/shared/errors.js +108 -10
  52. package/dist/commands/shared/errors.js.map +1 -1
  53. package/dist/commands/shared/json-output.d.ts +60 -0
  54. package/dist/commands/shared/json-output.d.ts.map +1 -0
  55. package/dist/commands/shared/json-output.js +152 -0
  56. package/dist/commands/shared/json-output.js.map +1 -0
  57. package/dist/commands/stage.d.ts.map +1 -1
  58. package/dist/commands/stage.js +62 -6
  59. package/dist/commands/stage.js.map +1 -1
  60. package/dist/commands/view.d.ts.map +1 -1
  61. package/dist/commands/view.js +27 -0
  62. package/dist/commands/view.js.map +1 -1
  63. package/dist/core/archive/merge.d.ts +16 -1
  64. package/dist/core/archive/merge.d.ts.map +1 -1
  65. package/dist/core/archive/merge.js +27 -4
  66. package/dist/core/archive/merge.js.map +1 -1
  67. package/dist/core/config.js +2 -2
  68. package/dist/core/errors.d.ts +105 -0
  69. package/dist/core/errors.d.ts.map +1 -0
  70. package/dist/core/errors.js +61 -0
  71. package/dist/core/errors.js.map +1 -0
  72. package/dist/core/flow-manager.d.ts +13 -0
  73. package/dist/core/flow-manager.d.ts.map +1 -1
  74. package/dist/core/flow-manager.js +22 -0
  75. package/dist/core/flow-manager.js.map +1 -1
  76. package/dist/core/fs/file-lock.d.ts +9 -0
  77. package/dist/core/fs/file-lock.d.ts.map +1 -1
  78. package/dist/core/fs/file-lock.js +27 -1
  79. package/dist/core/fs/file-lock.js.map +1 -1
  80. package/dist/core/i18n-data/en.d.ts.map +1 -1
  81. package/dist/core/i18n-data/en.js +53 -3
  82. package/dist/core/i18n-data/en.js.map +1 -1
  83. package/dist/core/i18n-data/zh-CN.d.ts.map +1 -1
  84. package/dist/core/i18n-data/zh-CN.js +53 -3
  85. package/dist/core/i18n-data/zh-CN.js.map +1 -1
  86. package/dist/core/pipeline-schema.d.ts +7 -0
  87. package/dist/core/pipeline-schema.d.ts.map +1 -1
  88. package/dist/core/pipeline-schema.js +7 -0
  89. package/dist/core/pipeline-schema.js.map +1 -1
  90. package/dist/core/plan/roadmap.d.ts +29 -0
  91. package/dist/core/plan/roadmap.d.ts.map +1 -1
  92. package/dist/core/plan/roadmap.js +95 -0
  93. package/dist/core/plan/roadmap.js.map +1 -1
  94. package/dist/core/req/aggregate.d.ts +19 -1
  95. package/dist/core/req/aggregate.d.ts.map +1 -1
  96. package/dist/core/req/aggregate.js +18 -5
  97. package/dist/core/req/aggregate.js.map +1 -1
  98. package/dist/core/template-loader.d.ts.map +1 -1
  99. package/dist/core/template-loader.js +48 -14
  100. package/dist/core/template-loader.js.map +1 -1
  101. package/dist/core/update.d.ts.map +1 -1
  102. package/dist/core/update.js +44 -10
  103. package/dist/core/update.js.map +1 -1
  104. package/package.json +1 -1
@@ -2,8 +2,20 @@ import { listKnowledge, addKnowledgeEntry, searchKnowledge, getKnowledgeIndex, }
2
2
  import { t, getCliLang } from '../core/i18n.js';
3
3
  import { resolve } from 'node:path';
4
4
  import { findSimilarEntries } from '../utils/kb-dedup.js';
5
+ import { resolveProjectPathForCommand } from '../cli/project-option.js';
6
+ import { withSchemaVersion, emitJson } from './shared/json-output.js';
7
+ import { failRefusal } from './shared/errors.js';
5
8
  /** 有效分类列表 */
6
9
  const VALID_CATEGORIES = ['architecture', 'patterns', 'troubleshooting', 'setup'];
10
+ /**
11
+ * 生成内容摘要(前 100 字,超出追加省略号)。
12
+ * 人类渲染与 JSON `summary` 同源单点,保证双轨一致。
13
+ * @param content 条目全文
14
+ * @returns 摘要字符串
15
+ */
16
+ function summarizeContent(content) {
17
+ return content.length > 100 ? content.slice(0, 100) + '…' : content;
18
+ }
7
19
  export function registerKnowledgeCommand(program) {
8
20
  const knowledge = program
9
21
  .command('knowledge')
@@ -15,9 +27,18 @@ export function registerKnowledgeCommand(program) {
15
27
  .command('list')
16
28
  .description('列出知识条目')
17
29
  .option('--type <category>', '按分类过滤')
30
+ .option('--json', t('help.knowledge.list.json', getCliLang(process.cwd())))
18
31
  .action((options) => {
19
32
  const lang = getCliLang(process.cwd());
20
33
  const entries = listKnowledge(process.cwd(), options.type);
34
+ // JSON 分支须为首行纯 JSON 单文档(元素不含 content)
35
+ if (options.json) {
36
+ emitJson(withSchemaVersion({
37
+ entries: entries.map(({ title, category, date, enabled }) => ({ title, category, date, enabled })),
38
+ count: entries.length,
39
+ }));
40
+ return;
41
+ }
21
42
  if (entries.length === 0) {
22
43
  console.log(t('knowledge.list.empty', lang));
23
44
  return;
@@ -87,11 +108,29 @@ export function registerKnowledgeCommand(program) {
87
108
  .argument('<query>', '搜索关键词')
88
109
  .option('--limit <n>', '返回结果数量上限(默认 10)', '10')
89
110
  .option('--offset <n>', '结果偏移量(默认 0)', '0')
111
+ .option('--json', t('help.knowledge.search.json', getCliLang(process.cwd())))
90
112
  .action((query, options) => {
91
113
  const lang = getCliLang(process.cwd());
92
114
  const limit = Math.max(1, parseInt(options.limit, 10) || 10);
93
115
  const offset = Math.max(0, parseInt(options.offset, 10) || 0);
94
116
  const entries = searchKnowledge(process.cwd(), query, limit, offset);
117
+ // JSON 分支须为首行纯 JSON 单文档(空结果 → results:[] + exit 0)
118
+ if (options.json) {
119
+ emitJson(withSchemaVersion({
120
+ query,
121
+ limit,
122
+ offset,
123
+ results: entries.map((e) => ({
124
+ title: e.title,
125
+ category: e.category,
126
+ date: e.date,
127
+ enabled: e.enabled,
128
+ content: e.content,
129
+ summary: summarizeContent(e.content),
130
+ })),
131
+ }));
132
+ return;
133
+ }
95
134
  if (entries.length === 0) {
96
135
  console.log(t('knowledge.search.noResultsTmpl', lang, { query }));
97
136
  if (offset > 0) {
@@ -103,11 +142,8 @@ export function registerKnowledgeCommand(program) {
103
142
  for (const entry of entries) {
104
143
  const status = entry.enabled ? t('knowledge.list.enabled', lang) : t('knowledge.list.disabled', lang);
105
144
  console.log(`[${entry.category}] ${entry.title} (${entry.date}) [${status}]`);
106
- // 输出内容摘要(前 100 字)
107
- const summary = entry.content.length > 100
108
- ? entry.content.slice(0, 100) + '…'
109
- : entry.content;
110
- console.log(` ${summary}`);
145
+ // 输出内容摘要(前 100 字;与 JSON summary 同源)
146
+ console.log(` ${summarizeContent(entry.content)}`);
111
147
  console.log('');
112
148
  }
113
149
  });
@@ -117,9 +153,15 @@ export function registerKnowledgeCommand(program) {
117
153
  knowledge
118
154
  .command('index')
119
155
  .description('显示知识库索引概览')
120
- .action(() => {
156
+ .option('--json', t('help.knowledge.index.json', getCliLang(process.cwd())))
157
+ .action((options) => {
121
158
  const lang = getCliLang(process.cwd());
122
159
  const idx = getKnowledgeIndex(process.cwd());
160
+ // JSON 分支须为首行纯 JSON 单文档(getKnowledgeIndex 直出,零命令层加工)
161
+ if (options.json) {
162
+ emitJson(withSchemaVersion(idx));
163
+ return;
164
+ }
123
165
  console.log(t('knowledge.index.categoryOverview', lang));
124
166
  if (idx.categories.length === 0) {
125
167
  console.log(t('knowledge.index.noCategories', lang));
@@ -145,6 +187,9 @@ export function registerKnowledgeCommand(program) {
145
187
  });
146
188
  // -----------------------------------------------------------------------
147
189
  // knowledge dedup [content] [--project <path>] [--category <name>] [--threshold <n>]
190
+ // 扩展优先(C2):本地 --project 声明保留;根全局 --project 并行提供。
191
+ // 同名 flag 实测被根选项消费(local options.project === undefined),故经 optsWithGlobals()
192
+ // 读取并走 resolveProjectPathForCommand 单点解析。
148
193
  // -----------------------------------------------------------------------
149
194
  knowledge
150
195
  .command('dedup [content]')
@@ -152,12 +197,23 @@ export function registerKnowledgeCommand(program) {
152
197
  .option('--project <path>', '目标项目根路径(默认当前目录)')
153
198
  .option('--category <name>', '仅检查指定分类(architecture|patterns|troubleshooting|setup)')
154
199
  .option('--threshold <n>', '相似度阈值 0~1(默认 0.8)')
155
- .action(async (content, options) => {
200
+ .option('--json', t('help.knowledge.dedup.json', getCliLang(process.cwd())))
201
+ .action(async (content, options, command) => {
156
202
  const lang = getCliLang(process.cwd());
157
- const projectPath = options.project ?? process.cwd();
203
+ // D-95-12:预扫描结果优先(绝对路径);直接 parse 时回退 resolve(cwd, raw)
204
+ const globals = command.optsWithGlobals();
205
+ const projectPath = resolveProjectPathForCommand(globals.project);
158
206
  // 阈值校验(0~1)
159
207
  const threshold = options.threshold === undefined ? 0.8 : Number(options.threshold);
160
208
  if (options.threshold !== undefined && (Number.isNaN(threshold) || threshold < 0 || threshold > 1)) {
209
+ if (options.json) {
210
+ failRefusal({
211
+ code: 'INVALID_ARGUMENT',
212
+ message: t('knowledge.dedup.invalidThresholdTmpl', lang, { value: options.threshold }),
213
+ detail: { field: 'threshold', value: options.threshold },
214
+ });
215
+ return;
216
+ }
161
217
  console.error(t('knowledge.dedup.invalidThresholdTmpl', lang, { value: options.threshold }));
162
218
  process.exit(1);
163
219
  return;
@@ -166,6 +222,17 @@ export function registerKnowledgeCommand(program) {
166
222
  let categories;
167
223
  if (options.category !== undefined) {
168
224
  if (!VALID_CATEGORIES.includes(options.category)) {
225
+ if (options.json) {
226
+ failRefusal({
227
+ code: 'INVALID_ARGUMENT',
228
+ message: t('knowledge.dedup.invalidCategoryTmpl', lang, {
229
+ value: options.category,
230
+ allowed: VALID_CATEGORIES.join(' | '),
231
+ }),
232
+ detail: { field: 'category', value: options.category },
233
+ });
234
+ return;
235
+ }
169
236
  console.error(t('knowledge.dedup.invalidCategoryTmpl', lang, {
170
237
  value: options.category,
171
238
  allowed: VALID_CATEGORIES.join(' | '),
@@ -184,27 +251,56 @@ export function registerKnowledgeCommand(program) {
184
251
  text = await readStdin();
185
252
  }
186
253
  if (!text || text.trim().length === 0) {
254
+ if (options.json) {
255
+ failRefusal({
256
+ code: 'INVALID_ARGUMENT',
257
+ message: t('knowledge.dedup.noContentTmpl', lang),
258
+ detail: { field: 'content' },
259
+ });
260
+ return;
261
+ }
187
262
  console.error(t('knowledge.dedup.noContentTmpl', lang));
188
263
  process.exit(1);
189
264
  return;
190
265
  }
191
266
  // 跨阶段契约:命令层只计算 basePath 并传参(禁自行解析路径规则)
192
267
  const basePath = resolve(projectPath, '.openfeel', 'kb');
193
- console.log(t('knowledge.dedup.title', lang));
194
- let found = false;
268
+ // 统一收集匹配(人类渲染与 JSON 同源;categories 顺序 + 相似度降序)
269
+ const matches = [];
195
270
  for (const cat of categories) {
196
- const results = findSimilarEntries(text.trim(), cat, basePath);
197
- for (const r of results) {
271
+ for (const r of findSimilarEntries(text.trim(), cat, basePath)) {
198
272
  if (r.similarity <= 0) {
199
273
  continue;
200
274
  }
201
- found = true;
202
- const pct = (r.similarity * 100).toFixed(1);
203
- const flag = r.similarity > threshold ? ' ' + t('knowledge.dedup.suggestFlag', lang) : '';
204
- console.log(t('knowledge.dedup.itemTmpl', lang, { category: cat, title: r.entry.title, pct, flag }));
275
+ matches.push({
276
+ category: cat,
277
+ title: r.entry.title,
278
+ date: r.entry.date,
279
+ // KbEntry.status('+'/'-')映射为布尔 enabled(与 human/knowledge list 口径一致)
280
+ enabled: r.entry.status === '+',
281
+ similarity: r.similarity,
282
+ flagged: r.similarity > threshold,
283
+ });
205
284
  }
206
285
  }
207
- if (!found) {
286
+ // JSON 分支须为首行纯 JSON 单文档(只读语义由 readOnly 显式声明)
287
+ if (options.json) {
288
+ emitJson(withSchemaVersion({
289
+ threshold,
290
+ categories,
291
+ found: matches.length > 0,
292
+ readOnly: true,
293
+ matches,
294
+ }));
295
+ return;
296
+ }
297
+ console.log(t('knowledge.dedup.title', lang));
298
+ for (const m of matches) {
299
+ const pct = (m.similarity * 100).toFixed(1);
300
+ const flag = m.flagged ? ' ' + t('knowledge.dedup.suggestFlag', lang) : '';
301
+ console.log(t('knowledge.dedup.itemTmpl', lang, { category: m.category, title: m.title, pct, flag }));
302
+ }
303
+ if (matches.length === 0) {
208
304
  console.log(t('knowledge.dedup.noneTmpl', lang, { threshold: String(threshold) }));
209
305
  }
210
306
  // 只读声明(固定行)
@@ -1 +1 @@
1
- {"version":3,"file":"knowledge.js","sourceRoot":"","sources":["../../src/commands/knowledge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"knowledge.js","sourceRoot":"","sources":["../../src/commands/knowledge.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"lint.d.ts","sourceRoot":"","sources":["../../src/commands/lint.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA8B1D"}
1
+ {"version":3,"file":"lint.d.ts","sourceRoot":"","sources":["../../src/commands/lint.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmCpC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAqD1D"}
@@ -3,6 +3,7 @@ import { resolve, join } from 'node:path';
3
3
  import { t, getCliLang } from '../core/i18n.js';
4
4
  import { allDomains as zhAllDomains } from '../core/i18n-data/zh-CN.js';
5
5
  import { allDomains as enAllDomains } from '../core/i18n-data/en.js';
6
+ import { withSchemaVersion, emitJson } from './shared/json-output.js';
6
7
  export function registerLintCommand(program) {
7
8
  const lint = program
8
9
  .command('lint')
@@ -11,11 +12,22 @@ export function registerLintCommand(program) {
11
12
  lint
12
13
  .command('i18n')
13
14
  .description('校验 i18n 键一致性(空值/中英独有键)')
14
- .action(() => {
15
+ .option('--json', t('help.lint.i18n.json', getCliLang(process.cwd())))
16
+ .action((options) => {
15
17
  const lang = getCliLang(process.cwd());
16
- const problems = runLintI18n(lang);
17
- // R1(用户已裁定):发现问题即非 0 退出,对齐 flow health(用 process.exitCode 保证输出刷出且可测试)
18
- if (problems > 0) {
18
+ const report = collectLintI18n(lang);
19
+ if (options.json) {
20
+ emitJson(withSchemaVersion({
21
+ target: 'i18n',
22
+ ok: report.issues.length === 0,
23
+ issues: report.issues,
24
+ }));
25
+ }
26
+ else {
27
+ printLintI18n(report, lang);
28
+ }
29
+ // R1(用户已裁定):发现问题即非 0 退出,对齐 flow health(JSON 成功文档 + 同退出码)
30
+ if (report.issues.length > 0) {
19
31
  process.exitCode = 1;
20
32
  }
21
33
  });
@@ -23,22 +35,35 @@ export function registerLintCommand(program) {
23
35
  lint
24
36
  .command('kb')
25
37
  .description('检测 .openfeel/kb/ 中的过期文件引用')
26
- .action(() => {
38
+ .option('--json', t('help.lint.kb.json', getCliLang(process.cwd())))
39
+ .action((options) => {
27
40
  const lang = getCliLang(process.cwd());
28
- const stale = runLintKb(process.cwd(), lang);
41
+ const report = collectLintKb(process.cwd(), lang);
42
+ if (options.json) {
43
+ emitJson(withSchemaVersion({
44
+ target: 'kb',
45
+ ok: report.stale.length === 0,
46
+ issues: report.stale.map((s) => ({
47
+ path: `.openfeel/kb/${s.file}`,
48
+ message: t('lint.kb.issueTmpl', lang, { line: String(s.line), ref: s.ref }),
49
+ })),
50
+ }));
51
+ }
52
+ else {
53
+ printLintKb(report, lang);
54
+ }
29
55
  // R1(用户已裁定):存在过期引用即非 0 退出
30
- if (stale > 0) {
56
+ if (report.stale.length > 0) {
31
57
  process.exitCode = 1;
32
58
  }
33
59
  });
34
60
  }
35
61
  /**
36
- * 校验 zh-CN.ts 与 en.ts 的键一致性。
37
- * 检测项:目标语言字段为空(zh-CN 表中 zh 为空 / en 表中 en 为空)、
38
- * 中文版独有键、英文版独有键。
39
- * @returns 问题条数(> 0 供命令层设置非 0 退出码,R1)
62
+ * 收集中英文键一致性问题(与人类输出同源:issues[].message 即人类问题行文案)。
63
+ * 检测项:目标语言字段为空、中文版独有键、英文版独有键。
64
+ * @returns 结构化问题 + 一致键数 / 总键数(人类输出计数)
40
65
  */
41
- function runLintI18n(lang) {
66
+ function collectLintI18n(lang) {
42
67
  // 构建 key → 目标语言字段 映射(zh 表取 zh 字段,en 表取 en 字段)
43
68
  const zhMap = new Map();
44
69
  const enMap = new Map();
@@ -52,51 +77,57 @@ function runLintI18n(lang) {
52
77
  enMap.set(entry.key, entry.en);
53
78
  }
54
79
  }
55
- // 逐项检测,收集问题列表
56
- const problems = [];
80
+ // 逐项检测,收集结构化问题(path = 问题所在语言源文件)
81
+ const zhPath = 'src/core/i18n-data/zh-CN.ts';
82
+ const enPath = 'src/core/i18n-data/en.ts';
83
+ const issues = [];
57
84
  for (const [key, zh] of zhMap) {
58
85
  if (zh === '') {
59
- problems.push(t('lint.i18n.emptyZhTmpl', lang, { key }));
86
+ issues.push({ path: zhPath, message: t('lint.i18n.emptyZhTmpl', lang, { key }) });
60
87
  }
61
88
  if (!enMap.has(key)) {
62
- problems.push(t('lint.i18n.zhOnlyTmpl', lang, { key }));
89
+ issues.push({ path: zhPath, message: t('lint.i18n.zhOnlyTmpl', lang, { key }) });
63
90
  }
64
91
  }
65
92
  for (const [key, en] of enMap) {
66
93
  if (en === '') {
67
- problems.push(t('lint.i18n.emptyEnTmpl', lang, { key }));
94
+ issues.push({ path: enPath, message: t('lint.i18n.emptyEnTmpl', lang, { key }) });
68
95
  }
69
96
  if (!zhMap.has(key)) {
70
- problems.push(t('lint.i18n.enOnlyTmpl', lang, { key }));
97
+ issues.push({ path: enPath, message: t('lint.i18n.enOnlyTmpl', lang, { key }) });
71
98
  }
72
99
  }
73
100
  // 一致键:两侧都有且值非空
74
101
  const consistentCount = [...zhMap.keys()].filter((k) => zhMap.get(k) !== '' && enMap.has(k) && enMap.get(k) !== '').length;
75
- const total = zhMap.size;
76
- if (problems.length === 0) {
77
- console.log(t('lint.i18n.okTmpl', lang, { n: String(consistentCount) }));
78
- return 0;
102
+ return { issues, consistentCount, total: zhMap.size };
103
+ }
104
+ /** 打印 i18n lint 人类输出(逐字保持既有文案) */
105
+ function printLintI18n(report, lang) {
106
+ if (report.issues.length === 0) {
107
+ console.log(t('lint.i18n.okTmpl', lang, { n: String(report.consistentCount) }));
108
+ return;
79
109
  }
80
- console.log(t('lint.i18n.failTitleTmpl', lang, { m: String(problems.length) }));
81
- for (const p of problems) {
82
- console.log(` ${p}`);
110
+ console.log(t('lint.i18n.failTitleTmpl', lang, { m: String(report.issues.length) }));
111
+ for (const issue of report.issues) {
112
+ console.log(` ${issue.message}`);
83
113
  }
84
- console.log(t('lint.i18n.consistentTmpl', lang, { n: String(consistentCount), total: String(total) }));
85
- return problems.length;
114
+ console.log(t('lint.i18n.consistentTmpl', lang, {
115
+ n: String(report.consistentCount),
116
+ total: String(report.total),
117
+ }));
86
118
  }
87
119
  /**
88
- * 扫描 .openfeel/kb/*.md 中的文件引用,检测过期引用(引用的文件已不存在)。
120
+ * 扫描 .openfeel/kb/*.md 中的文件引用,收集过期引用(人类输出与 JSON issues 的共同来源)。
89
121
  * 提取来源:markdown 链接 `[text](path)` 与行内代码引用 `` `path` ``。
90
- * @returns 过期引用条数(> 0 供命令层设置非 0 退出码,R1)
122
+ * @returns kb 报告(无目录时 hasDir=false、stale 为空)
91
123
  */
92
- function runLintKb(projectPath, lang) {
124
+ function collectLintKb(projectPath, lang) {
125
+ void lang;
93
126
  const kbDir = resolve(projectPath, '.openfeel', 'kb');
94
127
  if (!existsSync(kbDir)) {
95
- console.log(t('lint.kb.noDir', lang));
96
- return 0;
128
+ return { hasDir: false, scanCount: 0, checkedCount: 0, stale: [] };
97
129
  }
98
130
  const files = readdirSync(kbDir).filter((f) => f.endsWith('.md'));
99
- console.log(t('lint.kb.scanTmpl', lang, { n: String(files.length) }));
100
131
  const stale = [];
101
132
  let checkedCount = 0;
102
133
  for (const file of files) {
@@ -117,15 +148,23 @@ function runLintKb(projectPath, lang) {
117
148
  }
118
149
  });
119
150
  }
120
- if (stale.length === 0) {
121
- console.log(t('lint.kb.okTmpl', lang, { n: String(checkedCount) }));
122
- return 0;
151
+ return { hasDir: true, scanCount: files.length, checkedCount, stale };
152
+ }
153
+ /** 打印 kb lint 人类输出(逐字保持既有文案) */
154
+ function printLintKb(report, lang) {
155
+ if (!report.hasDir) {
156
+ console.log(t('lint.kb.noDir', lang));
157
+ return;
158
+ }
159
+ console.log(t('lint.kb.scanTmpl', lang, { n: String(report.scanCount) }));
160
+ if (report.stale.length === 0) {
161
+ console.log(t('lint.kb.okTmpl', lang, { n: String(report.checkedCount) }));
162
+ return;
123
163
  }
124
- console.log(t('lint.kb.staleTmpl', lang, { n: String(stale.length) }));
125
- for (const s of stale) {
164
+ console.log(t('lint.kb.staleTmpl', lang, { n: String(report.stale.length) }));
165
+ for (const s of report.stale) {
126
166
  console.log(t('lint.kb.staleItemTmpl', lang, { file: s.file, ref: s.ref, line: String(s.line) }));
127
167
  }
128
- return stale.length;
129
168
  }
130
169
  /**
131
170
  * 从单行文本中提取文件引用候选。
@@ -1 +1 @@
1
- {"version":3,"file":"lint.js","sourceRoot":"","sources":["../../src/commands/lint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lint.js","sourceRoot":"","sources":["../../src/commands/lint.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/commands/model.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA8CpC,mBAAmB;AACnB,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA6G3D"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/commands/model.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAuFpC,mBAAmB;AACnB,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAoJ3D"}