@winspan/claude-forge 1.19.0 → 1.23.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 (75) hide show
  1. package/README.md +10 -10
  2. package/dist/pipeline/store.d.ts +12 -0
  3. package/dist/pipeline/store.d.ts.map +1 -1
  4. package/dist/pipeline/store.js +29 -5
  5. package/dist/pipeline/store.js.map +1 -1
  6. package/dist/storage/repositories/project-meta-repository.d.ts +19 -0
  7. package/dist/storage/repositories/project-meta-repository.d.ts.map +1 -0
  8. package/dist/storage/repositories/project-meta-repository.js +46 -0
  9. package/dist/storage/repositories/project-meta-repository.js.map +1 -0
  10. package/dist/storage/sqlite.d.ts +2 -0
  11. package/dist/storage/sqlite.d.ts.map +1 -1
  12. package/dist/storage/sqlite.js +8 -0
  13. package/dist/storage/sqlite.js.map +1 -1
  14. package/dist/web/routes/claudemd.d.ts.map +1 -1
  15. package/dist/web/routes/claudemd.js +16 -13
  16. package/dist/web/routes/claudemd.js.map +1 -1
  17. package/dist/web/routes/config.d.ts.map +1 -1
  18. package/dist/web/routes/config.js +15 -13
  19. package/dist/web/routes/config.js.map +1 -1
  20. package/dist/web/routes/convention.d.ts.map +1 -1
  21. package/dist/web/routes/convention.js +12 -10
  22. package/dist/web/routes/convention.js.map +1 -1
  23. package/dist/web/routes/events.d.ts.map +1 -1
  24. package/dist/web/routes/events.js +21 -9
  25. package/dist/web/routes/events.js.map +1 -1
  26. package/dist/web/routes/knowledge.d.ts.map +1 -1
  27. package/dist/web/routes/knowledge.js +14 -10
  28. package/dist/web/routes/knowledge.js.map +1 -1
  29. package/dist/web/routes/logs.d.ts.map +1 -1
  30. package/dist/web/routes/logs.js +16 -2
  31. package/dist/web/routes/logs.js.map +1 -1
  32. package/dist/web/routes/memory.d.ts +7 -0
  33. package/dist/web/routes/memory.d.ts.map +1 -0
  34. package/dist/web/routes/memory.js +94 -0
  35. package/dist/web/routes/memory.js.map +1 -0
  36. package/dist/web/routes/pipelines.d.ts.map +1 -1
  37. package/dist/web/routes/pipelines.js +13 -13
  38. package/dist/web/routes/pipelines.js.map +1 -1
  39. package/dist/web/routes/project-meta.d.ts +8 -0
  40. package/dist/web/routes/project-meta.d.ts.map +1 -0
  41. package/dist/web/routes/project-meta.js +63 -0
  42. package/dist/web/routes/project-meta.js.map +1 -0
  43. package/dist/web/routes/projects.d.ts.map +1 -1
  44. package/dist/web/routes/projects.js +13 -20
  45. package/dist/web/routes/projects.js.map +1 -1
  46. package/dist/web/routes/quality.d.ts.map +1 -1
  47. package/dist/web/routes/quality.js +13 -9
  48. package/dist/web/routes/quality.js.map +1 -1
  49. package/dist/web/routes/sessions.d.ts.map +1 -1
  50. package/dist/web/routes/sessions.js +7 -7
  51. package/dist/web/routes/sessions.js.map +1 -1
  52. package/dist/web/routes/stats.d.ts.map +1 -1
  53. package/dist/web/routes/stats.js +38 -0
  54. package/dist/web/routes/stats.js.map +1 -1
  55. package/dist/web/server.d.ts.map +1 -1
  56. package/dist/web/server.js +4 -0
  57. package/dist/web/server.js.map +1 -1
  58. package/dist/web/utils/errors.d.ts +31 -0
  59. package/dist/web/utils/errors.d.ts.map +1 -0
  60. package/dist/web/utils/errors.js +56 -0
  61. package/dist/web/utils/errors.js.map +1 -0
  62. package/dist/web/utils/path-validation.d.ts +20 -0
  63. package/dist/web/utils/path-validation.d.ts.map +1 -0
  64. package/dist/web/utils/path-validation.js +55 -0
  65. package/dist/web/utils/path-validation.js.map +1 -0
  66. package/dist/web/utils/validation.d.ts +59 -0
  67. package/dist/web/utils/validation.d.ts.map +1 -0
  68. package/dist/web/utils/validation.js +101 -0
  69. package/dist/web/utils/validation.js.map +1 -0
  70. package/dist/web-static/assets/index-By5SlI38.css +1 -0
  71. package/dist/web-static/assets/index-CJOVpN6F.js +74 -0
  72. package/dist/web-static/index.html +2 -2
  73. package/package.json +1 -1
  74. package/dist/web-static/assets/index-B4-1Ik3H.css +0 -1
  75. package/dist/web-static/assets/index-CzccBOr0.js +0 -74
@@ -0,0 +1,94 @@
1
+ import { memoryManager } from '../../utils/memory-manager.js';
2
+ import { handleError } from '../utils/errors.js';
3
+ /**
4
+ * 内存统计路由
5
+ * 提供 LRU 缓存使用情况和进程内存信息
6
+ */
7
+ export function registerMemoryRoutes(app) {
8
+ // 获取 LRU 缓存统计
9
+ app.get('/api/memory/caches', (req, res) => {
10
+ try {
11
+ const report = memoryManager.getCapacityReport();
12
+ res.json(report);
13
+ }
14
+ catch (err) {
15
+ handleError(err, res, 'memory-caches');
16
+ }
17
+ });
18
+ // 获取进程内存使用情况
19
+ app.get('/api/memory/process', (req, res) => {
20
+ try {
21
+ const usage = process.memoryUsage();
22
+ res.json({
23
+ rss: usage.rss, // 常驻集大小(总物理内存)
24
+ heapTotal: usage.heapTotal, // V8 堆总大小
25
+ heapUsed: usage.heapUsed, // V8 堆已使用
26
+ external: usage.external, // C++ 对象绑定的内存
27
+ arrayBuffers: usage.arrayBuffers, // ArrayBuffer 和 SharedArrayBuffer
28
+ rssMB: (usage.rss / 1024 / 1024).toFixed(2),
29
+ heapTotalMB: (usage.heapTotal / 1024 / 1024).toFixed(2),
30
+ heapUsedMB: (usage.heapUsed / 1024 / 1024).toFixed(2),
31
+ externalMB: (usage.external / 1024 / 1024).toFixed(2),
32
+ });
33
+ }
34
+ catch (err) {
35
+ handleError(err, res, 'memory-process');
36
+ }
37
+ });
38
+ // 清空指定缓存
39
+ app.post('/api/memory/caches/:name/clear', (req, res) => {
40
+ try {
41
+ const name = Array.isArray(req.params.name) ? req.params.name[0] : req.params.name;
42
+ memoryManager.clear(name);
43
+ res.json({ success: true, message: `缓存 ${name} 已清空` });
44
+ }
45
+ catch (err) {
46
+ handleError(err, res, 'memory-clear-cache');
47
+ }
48
+ });
49
+ // 清空所有缓存
50
+ app.post('/api/memory/caches/clear-all', (req, res) => {
51
+ try {
52
+ memoryManager.clearAll();
53
+ res.json({ success: true, message: '所有缓存已清空' });
54
+ }
55
+ catch (err) {
56
+ handleError(err, res, 'memory-clear-all');
57
+ }
58
+ });
59
+ // 触发 V8 垃圾回收(需要 --expose-gc 启动)
60
+ app.post('/api/memory/gc', (req, res) => {
61
+ try {
62
+ if (global.gc) {
63
+ const before = process.memoryUsage();
64
+ global.gc();
65
+ const after = process.memoryUsage();
66
+ res.json({
67
+ success: true,
68
+ message: 'GC 已触发',
69
+ before: {
70
+ heapUsedMB: (before.heapUsed / 1024 / 1024).toFixed(2),
71
+ rssMB: (before.rss / 1024 / 1024).toFixed(2),
72
+ },
73
+ after: {
74
+ heapUsedMB: (after.heapUsed / 1024 / 1024).toFixed(2),
75
+ rssMB: (after.rss / 1024 / 1024).toFixed(2),
76
+ },
77
+ freed: {
78
+ heapMB: ((before.heapUsed - after.heapUsed) / 1024 / 1024).toFixed(2),
79
+ rssMB: ((before.rss - after.rss) / 1024 / 1024).toFixed(2),
80
+ },
81
+ });
82
+ }
83
+ else {
84
+ res.status(503).json({
85
+ error: 'GC 未启用,请使用 --expose-gc 启动 daemon',
86
+ });
87
+ }
88
+ }
89
+ catch (err) {
90
+ handleError(err, res, 'memory-gc');
91
+ }
92
+ });
93
+ }
94
+ //# sourceMappingURL=memory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../src/web/routes/memory.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"pipelines.d.ts","sourceRoot":"","sources":["../../../src/web/routes/pipelines.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,SAAS,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAU7D,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CA2QjF"}
1
+ {"version":3,"file":"pipelines.d.ts","sourceRoot":"","sources":["../../../src/web/routes/pipelines.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,SAAS,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAY7D,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAyQjF"}
@@ -2,6 +2,8 @@ import { PipelineStore } from '../../pipeline/store.js';
2
2
  import { PHASE_LABELS } from '../../pipeline/types.js';
3
3
  import { pendingPromptsManager } from '../../daemon/pending-prompts.js';
4
4
  import { QUERY_LIMIT } from '../../constants.js';
5
+ import { validateLimit, validateArray } from '../utils/validation.js';
6
+ import { handleError } from '../utils/errors.js';
5
7
  const getPhaseLabel = (phase) => PHASE_LABELS[phase] || phase;
6
8
  export function registerPipelineRoutes(app, storage) {
7
9
  const store = new PipelineStore(storage);
@@ -18,16 +20,16 @@ export function registerPipelineRoutes(app, storage) {
18
20
  });
19
21
  }
20
22
  catch (err) {
21
- res.status(500).json({ error: String(err) });
23
+ handleError(err, res, 'pipelines');
22
24
  }
23
25
  });
24
26
  // 获取 Pipeline 列表(含已完成)
25
27
  app.get('/api/pipelines', (req, res) => {
26
28
  try {
27
- const { limit = 50 } = req.query;
29
+ const limit = validateLimit(req.query.limit, 1, QUERY_LIMIT.SESSIONS, 50);
28
30
  // 从 pipelines 表直接查询
29
31
  const db = storage.getDatabase();
30
- const rows = db.prepare('SELECT id, requirement, project_path, session_id, phase, task_type, complexity, created_at, updated_at FROM pipelines ORDER BY updated_at DESC LIMIT ?').all(Number(limit));
32
+ const rows = db.prepare('SELECT id, requirement, project_path, session_id, phase, task_type, complexity, created_at, updated_at FROM pipelines ORDER BY updated_at DESC LIMIT ?').all(limit);
31
33
  res.json({
32
34
  total: rows.length,
33
35
  items: rows.map(r => ({
@@ -47,7 +49,7 @@ export function registerPipelineRoutes(app, storage) {
47
49
  });
48
50
  }
49
51
  catch (err) {
50
- res.status(500).json({ error: String(err) });
52
+ handleError(err, res, 'pipelines-list');
51
53
  }
52
54
  });
53
55
  // 获取 Pipeline 详情(含任务列表 + 关联事件 + 产物 + 质量)
@@ -138,16 +140,14 @@ export function registerPipelineRoutes(app, storage) {
138
140
  });
139
141
  }
140
142
  catch (err) {
141
- res.status(500).json({ error: String(err) });
143
+ handleError(err, res, 'pipelines');
142
144
  }
143
145
  });
144
146
  // 批量关闭 Pipeline
145
147
  app.post('/api/pipelines/batch-close', (req, res) => {
146
148
  try {
147
149
  const { ids } = req.body;
148
- if (!Array.isArray(ids) || ids.length === 0) {
149
- return res.status(400).json({ error: '无效的 ID 列表' });
150
- }
150
+ validateArray(ids, 'ids', 100, 1);
151
151
  let closed = 0;
152
152
  for (const id of ids) {
153
153
  try {
@@ -161,7 +161,7 @@ export function registerPipelineRoutes(app, storage) {
161
161
  res.json({ success: true, closed, message: `已关闭 ${closed} 个 Pipeline` });
162
162
  }
163
163
  catch (err) {
164
- res.status(500).json({ error: String(err) });
164
+ handleError(err, res, 'pipelines-batch-close');
165
165
  }
166
166
  });
167
167
  // 关闭 Pipeline
@@ -172,7 +172,7 @@ export function registerPipelineRoutes(app, storage) {
172
172
  res.json({ success: true, message: 'Pipeline 已关闭' });
173
173
  }
174
174
  catch (err) {
175
- res.status(500).json({ error: String(err) });
175
+ handleError(err, res, 'pipelines');
176
176
  }
177
177
  });
178
178
  // 关闭所有过期 Pipeline
@@ -182,7 +182,7 @@ export function registerPipelineRoutes(app, storage) {
182
182
  res.json({ success: true, closed, message: `已关闭 ${closed} 个过期 Pipeline` });
183
183
  }
184
184
  catch (err) {
185
- res.status(500).json({ error: String(err) });
185
+ handleError(err, res, 'pipelines');
186
186
  }
187
187
  });
188
188
  // 更新任务状态
@@ -207,7 +207,7 @@ export function registerPipelineRoutes(app, storage) {
207
207
  }
208
208
  }
209
209
  catch (err) {
210
- res.status(500).json({ error: String(err) });
210
+ handleError(err, res, 'pipelines');
211
211
  }
212
212
  });
213
213
  // 继续执行 Pipeline(注入提示)
@@ -245,7 +245,7 @@ export function registerPipelineRoutes(app, storage) {
245
245
  });
246
246
  }
247
247
  catch (err) {
248
- res.status(500).json({ error: String(err) });
248
+ handleError(err, res, 'pipelines');
249
249
  }
250
250
  });
251
251
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pipelines.js","sourceRoot":"","sources":["../../../src/web/routes/pipelines.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipelines.js","sourceRoot":"","sources":["../../../src/web/routes/pipelines.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { Express } from 'express';
2
+ import type { SQLiteStorage } from '../../storage/sqlite.js';
3
+ /**
4
+ * 项目元数据路由
5
+ * 持久化存储项目的标签、备注、归档状态
6
+ */
7
+ export declare function registerProjectMetaRoutes(app: Express, storage: SQLiteStorage): void;
8
+ //# sourceMappingURL=project-meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-meta.d.ts","sourceRoot":"","sources":["../../../src/web/routes/project-meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,SAAS,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAI7D;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAgEpF"}
@@ -0,0 +1,63 @@
1
+ import { validateProjectPath } from '../utils/path-validation.js';
2
+ import { handleError } from '../utils/errors.js';
3
+ /**
4
+ * 项目元数据路由
5
+ * 持久化存储项目的标签、备注、归档状态
6
+ */
7
+ export function registerProjectMetaRoutes(app, storage) {
8
+ // 获取项目元数据
9
+ app.get('/api/projects/:encodedPath/meta', (req, res) => {
10
+ try {
11
+ const projectPath = validateProjectPath(Array.isArray(req.params.encodedPath) ? req.params.encodedPath[0] : req.params.encodedPath);
12
+ const meta = storage.repositories.projectMeta.get(projectPath);
13
+ if (!meta) {
14
+ return res.json({ notes: '', tags: [], archived: false });
15
+ }
16
+ res.json({
17
+ notes: meta.notes,
18
+ tags: JSON.parse(meta.tags || '[]'),
19
+ archived: meta.archived === true || meta.archived === 1,
20
+ });
21
+ }
22
+ catch (err) {
23
+ handleError(err, res, 'project-meta-get');
24
+ }
25
+ });
26
+ // 更新项目元数据
27
+ app.put('/api/projects/:encodedPath/meta', (req, res) => {
28
+ try {
29
+ const projectPath = validateProjectPath(Array.isArray(req.params.encodedPath) ? req.params.encodedPath[0] : req.params.encodedPath);
30
+ const { notes = '', tags = [], archived = false } = req.body;
31
+ if (typeof notes !== 'string') {
32
+ return res.status(400).json({ error: 'notes 必须是字符串' });
33
+ }
34
+ if (!Array.isArray(tags)) {
35
+ return res.status(400).json({ error: 'tags 必须是数组' });
36
+ }
37
+ storage.repositories.projectMeta.upsert(projectPath, notes, tags, archived);
38
+ res.json({ success: true });
39
+ }
40
+ catch (err) {
41
+ handleError(err, res, 'project-meta-put');
42
+ }
43
+ });
44
+ // 批量获取所有项目元数据(用于列表页一次性加载)
45
+ app.get('/api/projects/meta/all', (req, res) => {
46
+ try {
47
+ const all = storage.repositories.projectMeta.getAll();
48
+ const result = {};
49
+ for (const m of all) {
50
+ result[m.project_path] = {
51
+ notes: m.notes,
52
+ tags: JSON.parse(m.tags || '[]'),
53
+ archived: m.archived === true || m.archived === 1,
54
+ };
55
+ }
56
+ res.json(result);
57
+ }
58
+ catch (err) {
59
+ handleError(err, res, 'project-meta-all');
60
+ }
61
+ });
62
+ }
63
+ //# sourceMappingURL=project-meta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-meta.js","sourceRoot":"","sources":["../../../src/web/routes/project-meta.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../../src/web/routes/projects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,SAAS,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAI7D,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAwLhF"}
1
+ {"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../../src/web/routes/projects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,SAAS,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAQ7D,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CA2KhF"}
@@ -1,12 +1,15 @@
1
1
  import { MaintenanceRepository } from '../../storage/repositories/maintenance-repository.js';
2
- import path from 'path';
2
+ import { validateProjectPath } from '../utils/path-validation.js';
3
+ import { validateLimit } from '../utils/validation.js';
4
+ import { handleError } from '../utils/errors.js';
5
+ import { QUERY_LIMIT } from '../../constants.js';
3
6
  export function registerProjectRoutes(app, storage) {
4
7
  const db = storage.getDatabase();
5
8
  const maintenance = new MaintenanceRepository(db, '');
6
9
  // 获取项目列表(聚合统计)
7
10
  app.get('/api/projects', (req, res) => {
8
11
  try {
9
- const { limit = 50 } = req.query;
12
+ const limit = validateLimit(req.query.limit, 1, QUERY_LIMIT.SESSIONS, 50);
10
13
  // 从所有表中聚合项目路径(使用子查询避免笛卡尔积)
11
14
  const rows = db.prepare(`
12
15
  SELECT
@@ -26,7 +29,7 @@ export function registerProjectRoutes(app, storage) {
26
29
  ) AS projects
27
30
  ORDER BY last_activity DESC
28
31
  LIMIT ?
29
- `).all(Number(limit));
32
+ `).all(limit);
30
33
  res.json({
31
34
  total: rows.length,
32
35
  items: rows.map(r => ({
@@ -34,28 +37,22 @@ export function registerProjectRoutes(app, storage) {
34
37
  projectName: r.project_path?.split('/').pop() || 'Unknown',
35
38
  sessionCount: r.session_count || 0,
36
39
  pipelineCount: r.pipeline_count || 0,
37
- eventCount: r.event_count || 0,
38
- qualityCount: r.quality_count || 0,
40
+ totalEvents: r.event_count || 0,
41
+ qualityIssueCount: r.quality_count || 0,
39
42
  knowledgeCount: r.knowledge_count || 0,
40
43
  lastActivity: r.last_activity,
41
44
  })),
42
45
  });
43
46
  }
44
47
  catch (err) {
45
- res.status(500).json({ error: String(err) });
48
+ handleError(err, res, 'projects-list');
46
49
  }
47
50
  });
48
51
  // 获取项目详情
49
52
  app.get('/api/projects/:encodedPath', (req, res) => {
50
53
  try {
51
54
  const encodedPath = Array.isArray(req.params.encodedPath) ? req.params.encodedPath[0] : req.params.encodedPath;
52
- const projectPath = decodeURIComponent(encodedPath);
53
- // 路径验证:防止路径遍历攻击
54
- if (!path.isAbsolute(projectPath)) {
55
- return res.status(400).json({ error: '项目路径必须是绝对路径' });
56
- }
57
- // 验证路径存在(可选,因为项目可能已删除但数据库仍有记录)
58
- // 这里只做基本的路径格式验证,不强制要求路径存在
55
+ const projectPath = validateProjectPath(encodedPath);
59
56
  // 会话列表(关联 task_sessions 获取第一条对话内容)
60
57
  const sessions = db.prepare(`
61
58
  SELECT
@@ -137,24 +134,20 @@ export function registerProjectRoutes(app, storage) {
137
134
  });
138
135
  }
139
136
  catch (err) {
140
- res.status(500).json({ error: String(err) });
137
+ handleError(err, res, 'project-detail');
141
138
  }
142
139
  });
143
140
  // 删除项目所有数据
144
141
  app.delete('/api/projects/:encodedPath', (req, res) => {
145
142
  try {
146
143
  const encodedPath = Array.isArray(req.params.encodedPath) ? req.params.encodedPath[0] : req.params.encodedPath;
147
- const projectPath = decodeURIComponent(encodedPath);
148
- // 路径验证:防止路径遍历攻击
149
- if (!path.isAbsolute(projectPath)) {
150
- return res.status(400).json({ error: '项目路径必须是绝对路径' });
151
- }
144
+ const projectPath = validateProjectPath(encodedPath);
152
145
  const { tables } = maintenance.removeProject(projectPath);
153
146
  const total = Object.values(tables).reduce((a, b) => a + b, 0);
154
147
  res.json({ success: true, projectPath, deletedRows: total, tables });
155
148
  }
156
149
  catch (err) {
157
- res.status(500).json({ error: String(err) });
150
+ handleError(err, res, 'project-delete');
158
151
  }
159
152
  });
160
153
  }
@@ -1 +1 @@
1
- {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../../src/web/routes/projects.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../../src/web/routes/projects.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAC7F,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,MAAM,UAAU,qBAAqB,CAAC,GAAY,EAAE,OAAsB;IACxE,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACjC,MAAM,WAAW,GAAG,IAAI,qBAAqB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAEtD,eAAe;IACf,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,GAAY,EAAE,GAAa,EAAE,EAAE;QACvD,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YAE1E,2BAA2B;YAC3B,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;;;;;;;;;;;;;;;;;;OAkBvB,CAAC,CAAC,GAAG,CAAC,KAAK,CAAmC,CAAC;YAEhD,GAAG,CAAC,IAAI,CAAC;gBACP,KAAK,EAAE,IAAI,CAAC,MAAM;gBAClB,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACpB,WAAW,EAAE,CAAC,CAAC,YAAY;oBAC3B,WAAW,EAAG,CAAC,CAAC,YAAuB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,SAAS;oBACtE,YAAY,EAAE,CAAC,CAAC,aAAa,IAAI,CAAC;oBAClC,aAAa,EAAE,CAAC,CAAC,cAAc,IAAI,CAAC;oBACpC,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,CAAC;oBAC/B,iBAAiB,EAAE,CAAC,CAAC,aAAa,IAAI,CAAC;oBACvC,cAAc,EAAE,CAAC,CAAC,eAAe,IAAI,CAAC;oBACtC,YAAY,EAAE,CAAC,CAAC,aAAa;iBAC9B,CAAC,CAAC;aACJ,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC;QACzC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,SAAS;IACT,GAAG,CAAC,GAAG,CAAC,4BAA4B,EAAE,CAAC,GAAY,EAAE,GAAa,EAAE,EAAE;QACpE,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC;YAC/G,MAAM,WAAW,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;YAErD,mCAAmC;YACnC,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC;;;;;;;;OAQ3B,CAAC,CAAC,GAAG,CAAC,WAAW,CAAmC,CAAC;YAEtD,cAAc;YACd,MAAM,SAAS,GAAG,EAAE,CAAC,OAAO,CAC1B,kFAAkF,CACnF,CAAC,GAAG,CAAC,WAAW,CAAmC,CAAC;YAErD,OAAO;YACP,MAAM,UAAU,GAAG,EAAE,CAAC,OAAO,CAAC;;;;;;OAM7B,CAAC,CAAC,GAAG,CAAC,WAAW,CAA4B,CAAC;YAE/C,OAAO;YACP,MAAM,aAAa,GAAG,EAAE,CAAC,OAAO,CAC9B,6FAA6F,CAC9F,CAAC,GAAG,CAAC,WAAW,CAAmC,CAAC;YAErD,SAAS;YACT,MAAM,cAAc,GAAG,EAAE,CAAC,OAAO,CAAC;;OAEjC,CAAC,CAAC,GAAG,CAAC,WAAW,CAA4B,CAAC;YAE/C,kBAAkB;YAClB,MAAM,cAAc,GAAG,EAAE,CAAC,OAAO,CAC/B,4IAA4I,CAC7I,CAAC,GAAG,CAAC,WAAW,CAAmC,CAAC;YAErD,SAAS;YACT,MAAM,WAAW,GAAG,EAAE,CAAC,OAAO,CAC5B,6DAA6D,CAC9D,CAAC,GAAG,EAAoC,CAAC;YAE1C,SAAS;YACT,MAAM,YAAY,GAAG,EAAE,CAAC,OAAO,CAC7B,wEAAwE,CACzE,CAAC,GAAG,EAAoC,CAAC;YAE1C,6BAA6B;YAC7B,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC;;;;;;;;;;;;;;;OAe3B,CAAC,CAAC,GAAG,CAAC,WAAW,CAAmC,CAAC;YAEtD,GAAG,CAAC,IAAI,CAAC;gBACP,WAAW;gBACX,WAAW,EAAE,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,SAAS;gBACtD,QAAQ,EAAE;oBACR,KAAK,EAAE,QAAQ,CAAC,MAAM;oBACtB,KAAK,EAAE,QAAQ;iBAChB;gBACD,SAAS,EAAE;oBACT,KAAK,EAAE,SAAS,CAAC,MAAM;oBACvB,KAAK,EAAE,SAAS;iBACjB;gBACD,MAAM,EAAE;oBACN,KAAK,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC;oBAC5B,WAAW,EAAE,UAAU,CAAC,YAAY,IAAI,CAAC;oBACzC,UAAU,EAAE,UAAU,CAAC,WAAW,IAAI,CAAC;iBACxC;gBACD,OAAO,EAAE;oBACP,KAAK,EAAE,aAAa,CAAC,MAAM;oBAC3B,KAAK,EAAE,aAAa;iBACrB;gBACD,SAAS,EAAE;oBACT,KAAK,EAAE,cAAc,CAAC,KAAK,IAAI,CAAC;oBAChC,KAAK,EAAE,cAAc;iBACtB;gBACD,KAAK,EAAE;oBACL,WAAW;oBACX,YAAY;iBACb;gBACD,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,gBAAgB,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,WAAW;IACX,GAAG,CAAC,MAAM,CAAC,4BAA4B,EAAE,CAAC,GAAY,EAAE,GAAa,EAAE,EAAE;QACvE,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC;YAC/G,MAAM,WAAW,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;YAErD,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YAC1D,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YAE/D,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACvE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,gBAAgB,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"quality.d.ts","sourceRoot":"","sources":["../../../src/web/routes/quality.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,SAAS,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAI7D,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,UAAU,GAAG,IAAI,CAsWzG"}
1
+ {"version":3,"file":"quality.d.ts","sourceRoot":"","sources":["../../../src/web/routes/quality.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,SAAS,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAO7D,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,UAAU,GAAG,IAAI,CAuWzG"}
@@ -1,10 +1,14 @@
1
1
  import { logger } from '../../utils/logger.js';
2
+ import { validateLimit } from '../utils/validation.js';
3
+ import { handleError } from '../utils/errors.js';
4
+ import { QUERY_LIMIT } from '../../constants.js';
2
5
  import fs from 'fs';
3
6
  export function registerQualityRoutes(app, storage, aiProvider) {
4
7
  // 获取质量门禁历史
5
8
  app.get('/api/quality/history', (req, res) => {
6
9
  try {
7
- const { session_id, project_path, limit = 100 } = req.query;
10
+ const { session_id, project_path } = req.query;
11
+ const limit = validateLimit(req.query.limit, 1, QUERY_LIMIT.SESSIONS, 100);
8
12
  const allIssues = storage.getQualityHistory();
9
13
  let filtered = allIssues;
10
14
  if (session_id && typeof session_id === 'string') {
@@ -14,11 +18,11 @@ export function registerQualityRoutes(app, storage, aiProvider) {
14
18
  filtered = filtered.filter(i => i.project_path === project_path);
15
19
  }
16
20
  const total = filtered.length;
17
- const items = filtered.slice(0, Number(limit));
21
+ const items = filtered.slice(0, limit);
18
22
  res.json({ total, items });
19
23
  }
20
24
  catch (err) {
21
- res.status(500).json({ error: String(err) });
25
+ handleError(err, res, 'quality');
22
26
  }
23
27
  });
24
28
  // 获取未解决的质量问题
@@ -29,7 +33,7 @@ export function registerQualityRoutes(app, storage, aiProvider) {
29
33
  res.json({ total: issues.length, items: issues });
30
34
  }
31
35
  catch (err) {
32
- res.status(500).json({ error: String(err) });
36
+ handleError(err, res, 'quality');
33
37
  }
34
38
  });
35
39
  // 获取质量统计
@@ -55,7 +59,7 @@ export function registerQualityRoutes(app, storage, aiProvider) {
55
59
  res.json({ stats });
56
60
  }
57
61
  catch (err) {
58
- res.status(500).json({ error: String(err) });
62
+ handleError(err, res, 'quality');
59
63
  }
60
64
  });
61
65
  // 标记质量问题已修复
@@ -67,7 +71,7 @@ export function registerQualityRoutes(app, storage, aiProvider) {
67
71
  res.json({ success: true, message: '已标记为已修复' });
68
72
  }
69
73
  catch (err) {
70
- res.status(500).json({ error: String(err) });
74
+ handleError(err, res, 'quality');
71
75
  }
72
76
  });
73
77
  // 忽略质量问题
@@ -79,7 +83,7 @@ export function registerQualityRoutes(app, storage, aiProvider) {
79
83
  res.json({ success: true, message: '已忽略' });
80
84
  }
81
85
  catch (err) {
82
- res.status(500).json({ error: String(err) });
86
+ handleError(err, res, 'quality');
83
87
  }
84
88
  });
85
89
  // 批量标记已修复
@@ -90,7 +94,7 @@ export function registerQualityRoutes(app, storage, aiProvider) {
90
94
  res.json({ success: true, resolved: result.changes, message: `已标记 ${result.changes} 个问题为已修复` });
91
95
  }
92
96
  catch (err) {
93
- res.status(500).json({ error: String(err) });
97
+ handleError(err, res, 'quality');
94
98
  }
95
99
  });
96
100
  // 自动修复质量问题(SSE 流式响应)
@@ -312,7 +316,7 @@ ${fileContent.slice(0, 5000)}
312
316
  }
313
317
  catch (err) {
314
318
  logger.error(`[质量修复] 批量修复失败:${err}`);
315
- res.status(500).json({ error: String(err) });
319
+ handleError(err, res, 'quality');
316
320
  }
317
321
  });
318
322
  }
@@ -1 +1 @@
1
- {"version":3,"file":"quality.js","sourceRoot":"","sources":["../../../src/web/routes/quality.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quality.js","sourceRoot":"","sources":["../../../src/web/routes/quality.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../../src/web/routes/sessions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,SAAS,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AA8I7D,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CA8JhF"}
1
+ {"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../../src/web/routes/sessions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,SAAS,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAgJ7D,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CA6JhF"}