@winspan/claude-forge 1.58.0 → 1.66.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 (51) hide show
  1. package/README.md +4 -4
  2. package/dist/convention/convention-manager.d.ts +8 -1
  3. package/dist/convention/convention-manager.d.ts.map +1 -1
  4. package/dist/convention/convention-manager.js +38 -5
  5. package/dist/convention/convention-manager.js.map +1 -1
  6. package/dist/convention/types.d.ts +57 -0
  7. package/dist/convention/types.d.ts.map +1 -1
  8. package/dist/daemon/index.d.ts.map +1 -1
  9. package/dist/daemon/index.js +6 -0
  10. package/dist/daemon/index.js.map +1 -1
  11. package/dist/pipeline/artifact-collector.d.ts +31 -0
  12. package/dist/pipeline/artifact-collector.d.ts.map +1 -0
  13. package/dist/pipeline/artifact-collector.js +105 -0
  14. package/dist/pipeline/artifact-collector.js.map +1 -0
  15. package/dist/pipeline/artifact-validator.d.ts +26 -0
  16. package/dist/pipeline/artifact-validator.d.ts.map +1 -0
  17. package/dist/pipeline/artifact-validator.js +108 -0
  18. package/dist/pipeline/artifact-validator.js.map +1 -0
  19. package/dist/pipeline/dynamic-node-executor.d.ts +2 -0
  20. package/dist/pipeline/dynamic-node-executor.d.ts.map +1 -1
  21. package/dist/pipeline/dynamic-node-executor.js +35 -3
  22. package/dist/pipeline/dynamic-node-executor.js.map +1 -1
  23. package/dist/pipeline/i-node-executor.d.ts +2 -0
  24. package/dist/pipeline/i-node-executor.d.ts.map +1 -1
  25. package/dist/pipeline/index.d.ts.map +1 -1
  26. package/dist/pipeline/index.js +3 -2
  27. package/dist/pipeline/index.js.map +1 -1
  28. package/dist/pipeline/node-type-registry.d.ts.map +1 -1
  29. package/dist/pipeline/node-type-registry.js +53 -1
  30. package/dist/pipeline/node-type-registry.js.map +1 -1
  31. package/dist/pipeline/node-type-sync.d.ts +17 -0
  32. package/dist/pipeline/node-type-sync.d.ts.map +1 -0
  33. package/dist/pipeline/node-type-sync.js +147 -0
  34. package/dist/pipeline/node-type-sync.js.map +1 -0
  35. package/dist/pipeline/template-registry.d.ts +1 -1
  36. package/dist/pipeline/template-registry.d.ts.map +1 -1
  37. package/dist/pipeline/template-registry.js +54 -3
  38. package/dist/pipeline/template-registry.js.map +1 -1
  39. package/dist/storage/repositories/node-type-repository.d.ts +52 -0
  40. package/dist/storage/repositories/node-type-repository.d.ts.map +1 -0
  41. package/dist/storage/repositories/node-type-repository.js +130 -0
  42. package/dist/storage/repositories/node-type-repository.js.map +1 -0
  43. package/dist/storage/sqlite.d.ts +2 -0
  44. package/dist/storage/sqlite.d.ts.map +1 -1
  45. package/dist/storage/sqlite.js +26 -1
  46. package/dist/storage/sqlite.js.map +1 -1
  47. package/dist/web-static/assets/index-80GT9jgH.js +76 -0
  48. package/dist/web-static/assets/{index-Bv6kBfyq.css → index-CqOaxWJz.css} +1 -1
  49. package/dist/web-static/index.html +2 -2
  50. package/package.json +1 -1
  51. package/dist/web-static/assets/index-hI3x8Pl0.js +0 -76
@@ -1 +1 @@
1
- {"version":3,"file":"node-type-registry.js","sourceRoot":"","sources":["../../src/pipeline/node-type-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node-type-registry.js","sourceRoot":"","sources":["../../src/pipeline/node-type-registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * NodeTypeSync — 节点类型同步服务
3
+ *
4
+ * 负责在启动时从数据库恢复节点类型到内存注册表,
5
+ * 以及在 Convention 加载时将节点类型同步到数据库。
6
+ */
7
+ import type { SQLiteStorage } from '../storage/sqlite.js';
8
+ import type { Convention } from '../convention/types.js';
9
+ /**
10
+ * 启动时从数据库恢复节点类型到内存注册表
11
+ */
12
+ export declare function restoreNodeTypesFromDatabase(storage: SQLiteStorage): void;
13
+ /**
14
+ * Convention 加载时,将节点类型同步到数据库
15
+ */
16
+ export declare function syncConventionNodeTypes(storage: SQLiteStorage, conventions: Convention[]): void;
17
+ //# sourceMappingURL=node-type-sync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-type-sync.d.ts","sourceRoot":"","sources":["../../src/pipeline/node-type-sync.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAiGzD;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,CAgBzE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,IAAI,CA2B/F"}
@@ -0,0 +1,147 @@
1
+ /**
2
+ * NodeTypeSync — 节点类型同步服务
3
+ *
4
+ * 负责在启动时从数据库恢复节点类型到内存注册表,
5
+ * 以及在 Convention 加载时将节点类型同步到数据库。
6
+ */
7
+ import { NodeTypeRegistry } from './node-type-registry.js';
8
+ import { logger } from '../utils/logger.js';
9
+ // 内置节点类型(与 node-type-registry.ts 保持一致)
10
+ const BUILTIN_NODE_TYPES = [
11
+ {
12
+ id: 'analyze',
13
+ name: '需求分析',
14
+ description: '通用需求分析节点',
15
+ semantic_category: 'analyze',
16
+ completion: {
17
+ explicit_signal: 'FORGE_NODE_DONE',
18
+ heuristic: { require_write: true, keywords: ['需求', '分析', '方案'] },
19
+ },
20
+ activity_threshold: { min_tool_calls: 25, stagnation_strategy: 'read_heavy' },
21
+ default_skills: [],
22
+ expected_artifacts: [
23
+ { type: 'document', description: '需求分析文档', path_pattern: '**/*.md', required: true, min_count: 1, content_constraints: { min_length: 100 } },
24
+ ],
25
+ },
26
+ {
27
+ id: 'design',
28
+ name: '架构设计',
29
+ description: '通用架构设计节点',
30
+ semantic_category: 'design',
31
+ completion: {
32
+ explicit_signal: 'FORGE_NODE_DONE',
33
+ heuristic: { require_write: true, keywords: ['架构', '设计', 'design'] },
34
+ },
35
+ activity_threshold: { min_tool_calls: 30, stagnation_strategy: 'read_heavy' },
36
+ default_skills: ['official-architecture-decision'],
37
+ expected_artifacts: [
38
+ { type: 'document', description: '架构设计文档', path_pattern: '**/*.md', required: true, min_count: 1, content_constraints: { min_length: 100 } },
39
+ ],
40
+ },
41
+ {
42
+ id: 'profile',
43
+ name: '性能分析',
44
+ description: '通用性能分析节点',
45
+ semantic_category: 'analyze',
46
+ completion: {
47
+ explicit_signal: 'FORGE_NODE_DONE',
48
+ heuristic: { require_write: true, keywords: ['性能', 'profile', 'benchmark'] },
49
+ },
50
+ activity_threshold: { min_tool_calls: 20, stagnation_strategy: 'read_heavy' },
51
+ default_skills: ['official-performance-optimization'],
52
+ expected_artifacts: [
53
+ { type: 'document', description: '性能分析报告', path_pattern: '**/*.md', required: false },
54
+ ],
55
+ },
56
+ {
57
+ id: 'code',
58
+ name: '编码实现',
59
+ description: '通用编码节点',
60
+ semantic_category: 'code',
61
+ completion: {
62
+ explicit_signal: 'FORGE_NODE_DONE',
63
+ heuristic: { require_write: true, file_patterns: ['\\.ts$', '\\.js$', '\\.py$', '\\.go$', '\\.rs$'] },
64
+ },
65
+ activity_threshold: { min_tool_calls: 50, stagnation_strategy: 'write_heavy' },
66
+ default_skills: ['official-tdd', 'official-refactor'],
67
+ expected_artifacts: [
68
+ { type: 'code', description: '源代码文件', required: true, min_count: 1 },
69
+ ],
70
+ },
71
+ {
72
+ id: 'test',
73
+ name: '测试验证',
74
+ description: '通用测试节点',
75
+ semantic_category: 'test',
76
+ completion: {
77
+ explicit_signal: 'FORGE_NODE_DONE',
78
+ heuristic: { require_write: true, file_patterns: ['\\.test\\.', '\\.spec\\.'], keywords: ['passed', '通过', 'PASS'] },
79
+ },
80
+ activity_threshold: { min_tool_calls: 25, stagnation_strategy: 'balanced' },
81
+ default_skills: ['official-tdd'],
82
+ expected_artifacts: [
83
+ { type: 'test', description: '测试文件', required: true, min_count: 1 },
84
+ ],
85
+ },
86
+ {
87
+ id: 'review',
88
+ name: '代码审查',
89
+ description: '通用审查节点',
90
+ semantic_category: 'review',
91
+ completion: {
92
+ explicit_signal: 'FORGE_NODE_DONE',
93
+ heuristic: { require_write: true },
94
+ },
95
+ activity_threshold: { min_tool_calls: 25, stagnation_strategy: 'balanced' },
96
+ default_skills: ['official-pr-review'],
97
+ expected_artifacts: [
98
+ { type: 'document', description: '审查报告', path_pattern: '**/*.md', required: false },
99
+ ],
100
+ },
101
+ ];
102
+ /**
103
+ * 启动时从数据库恢复节点类型到内存注册表
104
+ */
105
+ export function restoreNodeTypesFromDatabase(storage) {
106
+ const registry = NodeTypeRegistry.getInstance();
107
+ const repo = storage.repositories.nodeTypes;
108
+ // 1. 确保内置节点类型已写入数据库
109
+ const builtinData = BUILTIN_NODE_TYPES.map(nt => ({ nodeType: nt, source: 'builtin' }));
110
+ repo.batchUpsert(builtinData);
111
+ logger.info(`[NodeTypeSync] 已同步 ${BUILTIN_NODE_TYPES.length} 个内置节点类型到数据库`);
112
+ // 2. 从数据库加载所有节点类型到内存注册表
113
+ const allNodeTypes = repo.getAll();
114
+ logger.info(`[NodeTypeSync] 从数据库恢复 ${allNodeTypes.length} 个节点类型到内存`);
115
+ // 注意:这里不需要调用 registry.registerFromConvention(),
116
+ // 因为 NodeTypeRegistry 的构造函数已经注册了内置节点类型。
117
+ // Convention 节点类型会在 ConventionManager.getActiveConventions() 时注册。
118
+ }
119
+ /**
120
+ * Convention 加载时,将节点类型同步到数据库
121
+ */
122
+ export function syncConventionNodeTypes(storage, conventions) {
123
+ const repo = storage.repositories.nodeTypes;
124
+ // 1. 清除所有 Convention 节点类型(重新同步)
125
+ const deleted = repo.deleteAllExternal();
126
+ if (deleted > 0) {
127
+ logger.info(`[NodeTypeSync] 已清除 ${deleted} 个旧的 Convention 节点类型`);
128
+ }
129
+ // 2. 批量写入新的 Convention 节点类型
130
+ const conventionData = [];
131
+ for (const convention of conventions) {
132
+ if (convention.node_types && convention.node_types.length > 0) {
133
+ for (const nt of convention.node_types) {
134
+ conventionData.push({
135
+ nodeType: nt,
136
+ source: 'convention',
137
+ conventionId: convention.id,
138
+ });
139
+ }
140
+ }
141
+ }
142
+ if (conventionData.length > 0) {
143
+ repo.batchUpsert(conventionData);
144
+ logger.info(`[NodeTypeSync] 已同步 ${conventionData.length} 个 Convention 节点类型到数据库`);
145
+ }
146
+ }
147
+ //# sourceMappingURL=node-type-sync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-type-sync.js","sourceRoot":"","sources":["../../src/pipeline/node-type-sync.ts"],"names":[],"mappings":"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"}
@@ -41,7 +41,7 @@ export declare class TemplateRegistry {
41
41
  invalidateProjectCache(projectPath: string): void;
42
42
  /**
43
43
  * 获取项目可用的动态节点模板(builtin + convention)
44
- * 从 Convention node_types 字段生成模板
44
+ * 从 NodeTypeRegistry 中按 Convention 分组,自动生成模板
45
45
  */
46
46
  getDynamicTemplates(projectPath: string): DynamicPipelineTemplate[];
47
47
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"template-registry.d.ts","sourceRoot":"","sources":["../../src/pipeline/template-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,OAAO,KAAK,EAAE,gBAAgB,EAAyB,MAAM,YAAY,CAAC;AAE1E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AA8WvE,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,gBAAgB,CAAyC;IACjE,OAAO,CAAC,aAAa,CAA0B;IAC/C,uCAAuC;IACvC,OAAO,CAAC,qBAAqB,CAA0E;IACvG,gDAAgD;IAChD,OAAO,CAAC,qBAAqB,CAAiF;IAC9G,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAa;IAEjD;;OAEG;IACH,iBAAiB,IAAI,IAAI;IA8BzB;;OAEG;IACH,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAKrD;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAQ7C;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IA2C5B;;OAEG;IACH,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAOjD;;;OAGG;IACH,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,uBAAuB,EAAE;IAYnE;;OAEG;IACH,uBAAuB,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,uBAAuB,GAAG,IAAI;CAO1F"}
1
+ {"version":3,"file":"template-registry.d.ts","sourceRoot":"","sources":["../../src/pipeline/template-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,OAAO,KAAK,EAAE,gBAAgB,EAAyB,MAAM,YAAY,CAAC;AAE1E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AA+WvE,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,gBAAgB,CAAyC;IACjE,OAAO,CAAC,aAAa,CAA0B;IAC/C,uCAAuC;IACvC,OAAO,CAAC,qBAAqB,CAA0E;IACvG,gDAAgD;IAChD,OAAO,CAAC,qBAAqB,CAAiF;IAC9G,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAa;IAEjD;;OAEG;IACH,iBAAiB,IAAI,IAAI;IA8BzB;;OAEG;IACH,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAKrD;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAQ7C;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IA2C5B;;OAEG;IACH,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAOjD;;;OAGG;IACH,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,uBAAuB,EAAE;IAmEnE;;OAEG;IACH,uBAAuB,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,uBAAuB,GAAG,IAAI;CAO1F"}
@@ -12,6 +12,7 @@ import fs from 'fs';
12
12
  import path from 'path';
13
13
  import yaml from 'js-yaml';
14
14
  import { logger } from '../utils/logger.js';
15
+ import { NodeTypeRegistry } from './node-type-registry.js';
15
16
  import { TIME } from '../constants.js';
16
17
  /** 内置模板:与 PipelineEngine.startPipeline 原有 5 阶段对齐 */
17
18
  const BUILTIN_TEMPLATES = [
@@ -478,15 +479,65 @@ export class TemplateRegistry {
478
479
  // ── 动态节点模板 ──────────────────────────────────────────────────────────
479
480
  /**
480
481
  * 获取项目可用的动态节点模板(builtin + convention)
481
- * 从 Convention node_types 字段生成模板
482
+ * 从 NodeTypeRegistry 中按 Convention 分组,自动生成模板
482
483
  */
483
484
  getDynamicTemplates(projectPath) {
484
485
  const cached = this.dynamicTemplatesCache.get(projectPath);
485
486
  if (cached && Date.now() < cached.expireAt)
486
487
  return cached.templates;
487
- // TODO: 从 ConventionManager 加载 Convention,提取 node_types 生成模板
488
- // 当前返回空数组,Phase 8 实施时补充
489
488
  const templates = [];
489
+ const registry = NodeTypeRegistry.getInstance();
490
+ const allTypes = registry.getAll();
491
+ // 按 Convention 分组(conventionId:nodeTypeId 格式)
492
+ const conventionMap = new Map();
493
+ for (const nodeType of allTypes) {
494
+ // 跳过内置节点类型
495
+ const builtinIds = new Set(['analyze', 'design', 'profile', 'code', 'test', 'review']);
496
+ if (builtinIds.has(nodeType.id))
497
+ continue;
498
+ // 提取 conventionId(格式:conventionId:nodeTypeId)
499
+ const colonIdx = nodeType.id.indexOf(':');
500
+ if (colonIdx === -1)
501
+ continue;
502
+ const conventionId = nodeType.id.slice(0, colonIdx);
503
+ if (!conventionMap.has(conventionId)) {
504
+ conventionMap.set(conventionId, []);
505
+ }
506
+ conventionMap.get(conventionId).push(nodeType);
507
+ }
508
+ // 为每个 Convention 生成动态模板
509
+ for (const [conventionId, nodeTypes] of conventionMap) {
510
+ if (nodeTypes.length === 0)
511
+ continue;
512
+ // 按 semantic_category 排序(analyze → design → code → test → review → deploy)
513
+ const categoryOrder = ['analyze', 'design', 'code', 'test', 'review', 'deploy'];
514
+ const sorted = [...nodeTypes].sort((a, b) => {
515
+ const ai = categoryOrder.indexOf(a.semantic_category);
516
+ const bi = categoryOrder.indexOf(b.semantic_category);
517
+ return (ai === -1 ? 99 : ai) - (bi === -1 ? 99 : bi);
518
+ });
519
+ const template = {
520
+ id: `convention:${conventionId}`,
521
+ name: `${conventionId} 流程`,
522
+ description: `由 Convention ${conventionId} 定义的自定义流程(${sorted.length} 个节点)`,
523
+ source: 'convention',
524
+ version: '1.0.0',
525
+ trigger: {
526
+ intent_patterns: [],
527
+ complexity: ['moderate', 'complex'],
528
+ keywords: [conventionId],
529
+ },
530
+ nodes: sorted.map(nt => ({
531
+ nodeTypeId: nt.id,
532
+ boundSkillName: nt.default_skills?.[0],
533
+ })),
534
+ };
535
+ templates.push(template);
536
+ logger.debug(`[模板注册表] 从 Convention ${conventionId} 生成动态模板,节点数:${sorted.length}`);
537
+ }
538
+ if (templates.length > 0) {
539
+ logger.info(`[模板注册表] 已生成 Convention 动态模板 ${templates.length} 个`);
540
+ }
490
541
  this.dynamicTemplatesCache.set(projectPath, { templates, expireAt: Date.now() + TemplateRegistry.CACHE_TTL_MS });
491
542
  return templates;
492
543
  }
@@ -1 +1 @@
1
- {"version":3,"file":"template-registry.js","sourceRoot":"","sources":["../../src/pipeline/template-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAI5C,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAEvC,oDAAoD;AACpD,MAAM,iBAAiB,GAAuB;IAC5C;QACE,EAAE,EAAE,iBAAiB;QACrB,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,wDAAwD;QACrE,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE;YACP,eAAe,EAAE;gBACf,OAAO;gBACP,OAAO;gBACP,MAAM;gBACN,MAAM;aACP;YACD,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,CAAC;SACpE;QACD,MAAM,EAAE;YACN,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,kBAAkB,EAAE;YACjE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,oBAAoB,EAAE;YAClE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE;YAC5D,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,kBAAkB,EAAE;YAC9D,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,iBAAiB,EAAE;SAChE;QACD,iBAAiB,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC;KAC3C;IACD;QACE,EAAE,EAAE,gBAAgB;QACpB,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,oCAAoC;QACjD,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE;YACP,eAAe,EAAE;gBACf,QAAQ;gBACR,MAAM;gBACN,MAAM;gBACN,MAAM;aACP;YACD,UAAU,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;YACnC,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;SAC7D;QACD,MAAM,EAAE;YACN,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,oBAAoB,EAAE;YACnE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE;YAC3D,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE;SAC3D;KACF;IACD;QACE,EAAE,EAAE,kBAAkB;QACtB,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,2CAA2C;QACxD,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE;YACP,eAAe,EAAE;gBACf,MAAM;gBACN,MAAM;gBACN,MAAM;gBACN,OAAO;aACR;YACD,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,CAAC;SACtE;QACD,MAAM,EAAE;YACN,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,iBAAiB,EAAE;YAChE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE;YAC7D,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE;YAC5D,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE;YAC1D,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE;SAC3D;KACF;IAED,qEAAqE;IAErE;QACE,EAAE,EAAE,uBAAuB;QAC3B,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,8CAA8C;QAC3D,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,eAAe;QACzB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE;YACP,eAAe,EAAE;gBACf,MAAM;gBACN,MAAM;gBACN,MAAM;gBACN,MAAM;gBACN,OAAO;gBACP,OAAO;gBACP,QAAQ;gBACR,QAAQ;aACT;YACD,UAAU,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC;YAC7C,QAAQ,EAAE;gBACR,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI;gBAC3C,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,uBAAuB;aACrE;SACF;QACD,MAAM,EAAE;YACN,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,uBAAuB,EAAE;YACtE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,oBAAoB,EAAE;SACnE;QACD,iBAAiB,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;KACxC;IAED,sEAAsE;IAEtE;QACE,EAAE,EAAE,mBAAmB;QACvB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,yDAAyD;QACtE,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE;YACP,eAAe,EAAE;gBACf,UAAU;gBACV,MAAM;gBACN,MAAM;gBACN,MAAM;gBACN,MAAM;gBACN,MAAM;aACP;YACD,UAAU,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC;YAC7C,QAAQ,EAAE;gBACR,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;gBACxC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;gBACzE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ;aACpC;SACF;QACD,MAAM,EAAE;YACN,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,sBAAsB,EAAE;YACrE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,6BAA6B,EAAE;YAC9E,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,2BAA2B,EAAE;YACvE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,0BAA0B,EAAE;SACvE;QACD,iBAAiB,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC;KACjD;IAED;QACE,EAAE,EAAE,4BAA4B;QAChC,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,uDAAuD;QACpE,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE;YACP,eAAe,EAAE;gBACf,QAAQ;gBACR,QAAQ;gBACR,QAAQ;gBACR,MAAM;gBACN,OAAO;gBACP,MAAM;aACP;YACD,UAAU,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;YACnC,QAAQ,EAAE;gBACR,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK;gBAC/C,aAAa,EAAE,IAAI,EAAE,iBAAiB,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW;aACjF;SACF;QACD,MAAM,EAAE;YACN,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,yBAAyB,EAAE;YACxE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,2BAA2B,EAAE;YACzE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE;YAC5D,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,wBAAwB,EAAE;YACrE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE;SAC/D;QACD,iBAAiB,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC;KACtD;IAED,qEAAqE;IAErE;QACE,EAAE,EAAE,yBAAyB;QAC7B,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,kEAAkE;QAC/E,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE;YACP,eAAe,EAAE;gBACf,OAAO;gBACP,MAAM;gBACN,OAAO;gBACP,YAAY;gBACZ,OAAO;gBACP,SAAS;aACV;YACD,UAAU,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC;YAC7C,QAAQ,EAAE;gBACR,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;gBACxD,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK;gBACzE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS;aAClD;SACF;QACD,MAAM,EAAE;YACN,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,oBAAoB,EAAE;YACnE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,oCAAoC,EAAE;YAClF,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,qBAAqB,EAAE;YACtE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,wBAAwB,EAAE;SACrE;QACD,iBAAiB,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC;KAClD;IAED,wEAAwE;IAExE;QACE,EAAE,EAAE,yBAAyB;QAC7B,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,4DAA4D;QACzE,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE;YACP,eAAe,EAAE;gBACf,SAAS;gBACT,QAAQ;gBACR,QAAQ;gBACR,QAAQ;gBACR,QAAQ;gBACR,WAAW;aACZ;YACD,UAAU,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC;YAC7C,QAAQ,EAAE;gBACR,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;gBACpD,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM;gBAC5E,YAAY,EAAE,SAAS,EAAE,SAAS;aACnC;SACF;QACD,MAAM,EAAE;YACN,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,wBAAwB,EAAE;YACvE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,sBAAsB,EAAE;YACpE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,yBAAyB,EAAE;YACrE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,2BAA2B,EAAE;SACxE;QACD,iBAAiB,EAAE,CAAC,YAAY,EAAE,OAAO,EAAE,YAAY,CAAC;KACzD;IAED,sEAAsE;IAEtE;QACE,EAAE,EAAE,qBAAqB;QACzB,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,oDAAoD;QACjE,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE;YACP,eAAe,EAAE;gBACf,MAAM;gBACN,QAAQ;gBACR,QAAQ;gBACR,QAAQ;gBACR,QAAQ;gBACR,MAAM;aACP;YACD,UAAU,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;YACnC,QAAQ,EAAE;gBACR,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW;gBACxD,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW;aAC9E;SACF;QACD,MAAM,EAAE;YACN,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,4CAA4C,EAAE;YAC3F,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,qBAAqB,EAAE;YACpE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE;YAC3D,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,8BAA8B,EAAE;SAC3E;QACD,iBAAiB,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,eAAe,CAAC;KAC3D;IAED,wEAAwE;IAExE;QACE,EAAE,EAAE,oBAAoB;QACxB,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,4DAA4D;QACzE,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE;YACP,eAAe,EAAE;gBACf,QAAQ;gBACR,MAAM;gBACN,YAAY;gBACZ,YAAY;gBACZ,QAAQ;gBACR,QAAQ;aACT;YACD,UAAU,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC;YAC7C,QAAQ,EAAE;gBACR,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;gBACnE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS;aACrF;SACF;QACD,MAAM,EAAE;YACN,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,2BAA2B,EAAE;YAC1E,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,2CAA2C,EAAE;YAC3F,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,4BAA4B,EAAE;YACxE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,wBAAwB,EAAE;YACpE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,oBAAoB,EAAE;SACnE;QACD,iBAAiB,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC;KAChD;IAED,sEAAsE;IAEtE;QACE,EAAE,EAAE,gBAAgB;QACpB,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,6DAA6D;QAC1E,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE;YACP,eAAe,EAAE;gBACf,UAAU;gBACV,OAAO;gBACP,eAAe;gBACf,mBAAmB;gBACnB,SAAS;gBACT,MAAM;aACP;YACD,UAAU,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;YACnC,QAAQ,EAAE;gBACR,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK;gBACpE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ;aACpF;SACF;QACD,MAAM,EAAE;YACN,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,uBAAuB,EAAE;YACtE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,2BAA2B,EAAE;YACzE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,kBAAkB,EAAE;YAC9D,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE;SACnE;QACD,iBAAiB,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,UAAU,CAAC;KACvD;CACF,CAAC;AAEF;;GAEG;AACH,SAAS,iBAAiB,CAAC,OAAgB;IACzC,MAAM,MAAM,GAA4B,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACnE,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,IAAI,EAAE,KAAK,CAAC,UAAU;QACtB,YAAY,EAAE,KAAK,CAAC,eAAe;QACnC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,SAAS;QACrD,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;KACjF,CAAC,CAAC,CAAC;IAEJ,OAAO;QACL,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,MAAM,EAAE,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;QAC1D,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,OAAO,EAAE;YACP,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,eAAe,IAAI,EAAE;YACtD,UAAU,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAA6C;YAC/G,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE;SACzC;QACD,MAAM;KACP,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,gBAAgB;IACnB,gBAAgB,GAAuB,iBAAiB,CAAC;IACzD,aAAa,GAAuB,EAAE,CAAC;IAC/C,uCAAuC;IAC/B,qBAAqB,GAAG,IAAI,GAAG,EAA+D,CAAC;IACvG,gDAAgD;IACxC,qBAAqB,GAAG,IAAI,GAAG,EAAsE,CAAC;IACtG,MAAM,CAAU,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK;IAEvD;;OAEG;IACH,iBAAiB;QACf,MAAM,IAAI,GAAG;YACX,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,eAAe,EAAE,UAAU,CAAC;SAClE,CAAC;QACF,MAAM,MAAM,GAAuB,EAAE,CAAC;QACtC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAS;YAClC,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;gBACzF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,IAAI,CAAC;wBACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;wBAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAY,CAAC;wBAC9C,IAAI,OAAO,EAAE,EAAE,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;4BACnC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC1C,CAAC;oBACH,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,MAAM,CAAC,IAAI,CAAC,oBAAoB,IAAI,MAAM,GAAG,EAAE,CAAC,CAAC;oBACnD,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,sBAAsB,GAAG,MAAM,GAAG,EAAE,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;QAC5B,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,mBAAmB,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,WAAmB;QAC9B,MAAM,gBAAgB,GAAG,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,gBAAgB,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,EAAU;QACjB,MAAM,UAAU,GAAG;YACjB,GAAG,IAAI,CAAC,gBAAgB;YACxB,GAAG,IAAI,CAAC,aAAa;SACtB,CAAC;QACF,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,IAAI,CAAC;IACnD,CAAC;IAED;;;OAGG;IACK,oBAAoB,CAAC,WAAmB;QAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC3D,IAAI,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,QAAQ;YAAE,OAAO,MAAM,CAAC,SAAS,CAAC;QAEpE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;QACxE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,gBAAgB,CAAC,YAAY,EAAE,CAAC,CAAC;YACrH,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,SAAS,GAAuB,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;YACjG,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;oBAAE,SAAS;gBACnC,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;oBACvE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAY,CAAC;oBAC9C,IAAI,OAAO,EAAE,EAAE,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;wBACnC,MAAM,GAAG,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;wBACvC,GAAG,CAAC,MAAM,GAAG,YAAY,CAAC;wBAC1B,uCAAuC;wBACvC,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;wBACjC,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;4BAAE,GAAG,CAAC,cAAc,GAAG,QAAQ,KAAK,EAAE,CAAC;6BAC5D,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC;4BAAE,GAAG,CAAC,cAAc,GAAG,WAAW,KAAK,EAAE,CAAC;;4BAC3E,GAAG,CAAC,cAAc,GAAG,KAAK,IAAI,OAAO,CAAC;wBAC3C,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACtB,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,aAAa;gBACf,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAC;QAC3C,CAAC;QAED,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,gBAAgB,CAAC,YAAY,EAAE,CAAC,CAAC;QACjH,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,mBAAmB,SAAS,CAAC,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC;QACvE,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,sBAAsB,CAAC,WAAmB;QACxC,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC/C,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACjD,CAAC;IAED,uEAAuE;IAEvE;;;OAGG;IACH,mBAAmB,CAAC,WAAmB;QACrC,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC3D,IAAI,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,QAAQ;YAAE,OAAO,MAAM,CAAC,SAAS,CAAC;QAEpE,6DAA6D;QAC7D,wBAAwB;QACxB,MAAM,SAAS,GAA8B,EAAE,CAAC;QAEhD,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,gBAAgB,CAAC,YAAY,EAAE,CAAC,CAAC;QACjH,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,uBAAuB,CAAC,EAAU,EAAE,WAAoB;QACtD,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,SAAS,GAAG,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;YACxD,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,IAAI,CAAC;QAClD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC"}
1
+ {"version":3,"file":"template-registry.js","sourceRoot":"","sources":["../../src/pipeline/template-registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * NodeTypeRepository — 节点类型持久化
3
+ *
4
+ * 负责将 NodeType 定义持久化到数据库,解决重启丢失问题。
5
+ */
6
+ import type Database from 'better-sqlite3';
7
+ import type { ConventionNodeType } from '../../convention/types.js';
8
+ export declare class NodeTypeRepository {
9
+ private db;
10
+ constructor(db: Database.Database);
11
+ /**
12
+ * 插入或更新节点类型(UPSERT)
13
+ */
14
+ upsert(nodeType: ConventionNodeType, source: 'builtin' | 'convention', conventionId?: string): void;
15
+ /**
16
+ * 批量插入或更新节点类型
17
+ */
18
+ batchUpsert(nodeTypes: Array<{
19
+ nodeType: ConventionNodeType;
20
+ source: 'builtin' | 'convention';
21
+ conventionId?: string;
22
+ }>): void;
23
+ /**
24
+ * 根据 ID 查询节点类型
25
+ */
26
+ getById(id: string): ConventionNodeType | null;
27
+ /**
28
+ * 查询所有节点类型
29
+ */
30
+ getAll(): ConventionNodeType[];
31
+ /**
32
+ * 根据来源查询节点类型
33
+ */
34
+ getBySource(source: 'builtin' | 'convention'): ConventionNodeType[];
35
+ /**
36
+ * 删除指定 Convention 的所有节点类型
37
+ */
38
+ deleteByConvention(conventionId: string): number;
39
+ /**
40
+ * 删除所有非内置节点类型
41
+ */
42
+ deleteAllExternal(): number;
43
+ /**
44
+ * 统计节点类型数量
45
+ */
46
+ count(): {
47
+ total: number;
48
+ builtin: number;
49
+ convention: number;
50
+ };
51
+ }
52
+ //# sourceMappingURL=node-type-repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-type-repository.d.ts","sourceRoot":"","sources":["../../../src/storage/repositories/node-type-repository.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGpE,qBAAa,kBAAkB;IACjB,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,QAAQ,CAAC,QAAQ;IAEzC;;OAEG;IACH,MAAM,CAAC,QAAQ,EAAE,kBAAkB,EAAE,MAAM,EAAE,SAAS,GAAG,YAAY,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI;IAgCnG;;OAEG;IACH,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,kBAAkB,CAAC;QAAC,MAAM,EAAE,SAAS,GAAG,YAAY,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI;IAS9H;;OAEG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,kBAAkB,GAAG,IAAI;IA4B9C;;OAEG;IACH,MAAM,IAAI,kBAAkB,EAAE;IAwB9B;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,SAAS,GAAG,YAAY,GAAG,kBAAkB,EAAE;IAwBnE;;OAEG;IACH,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;IAOhD;;OAEG;IACH,iBAAiB,IAAI,MAAM;IAO3B;;OAEG;IACH,KAAK,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE;CAWhE"}
@@ -0,0 +1,130 @@
1
+ /**
2
+ * NodeTypeRepository — 节点类型持久化
3
+ *
4
+ * 负责将 NodeType 定义持久化到数据库,解决重启丢失问题。
5
+ */
6
+ export class NodeTypeRepository {
7
+ db;
8
+ constructor(db) {
9
+ this.db = db;
10
+ }
11
+ /**
12
+ * 插入或更新节点类型(UPSERT)
13
+ */
14
+ upsert(nodeType, source, conventionId) {
15
+ const stmt = this.db.prepare(`
16
+ INSERT INTO node_types (
17
+ id, name, description, semantic_category,
18
+ completion_config, activity_threshold, default_skills,
19
+ source, convention_id, updated_at
20
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, datetime('now'))
21
+ ON CONFLICT(id) DO UPDATE SET
22
+ name = excluded.name,
23
+ description = excluded.description,
24
+ semantic_category = excluded.semantic_category,
25
+ completion_config = excluded.completion_config,
26
+ activity_threshold = excluded.activity_threshold,
27
+ default_skills = excluded.default_skills,
28
+ source = excluded.source,
29
+ convention_id = excluded.convention_id,
30
+ updated_at = datetime('now')
31
+ `);
32
+ stmt.run(nodeType.id, nodeType.name, nodeType.description || null, nodeType.semantic_category || null, JSON.stringify(nodeType.completion), JSON.stringify(nodeType.activity_threshold), nodeType.default_skills ? JSON.stringify(nodeType.default_skills) : null, source, conventionId || null);
33
+ }
34
+ /**
35
+ * 批量插入或更新节点类型
36
+ */
37
+ batchUpsert(nodeTypes) {
38
+ const transaction = this.db.transaction(() => {
39
+ for (const { nodeType, source, conventionId } of nodeTypes) {
40
+ this.upsert(nodeType, source, conventionId);
41
+ }
42
+ });
43
+ transaction();
44
+ }
45
+ /**
46
+ * 根据 ID 查询节点类型
47
+ */
48
+ getById(id) {
49
+ const row = this.db.prepare(`
50
+ SELECT * FROM node_types WHERE id = ?
51
+ `).get(id);
52
+ if (!row)
53
+ return null;
54
+ return {
55
+ id: row.id,
56
+ name: row.name,
57
+ description: row.description || '',
58
+ semantic_category: (row.semantic_category || 'analyze'),
59
+ completion: JSON.parse(row.completion_config),
60
+ activity_threshold: JSON.parse(row.activity_threshold),
61
+ default_skills: row.default_skills ? JSON.parse(row.default_skills) : undefined,
62
+ };
63
+ }
64
+ /**
65
+ * 查询所有节点类型
66
+ */
67
+ getAll() {
68
+ const rows = this.db.prepare(`
69
+ SELECT * FROM node_types ORDER BY source, id
70
+ `).all();
71
+ return rows.map(row => ({
72
+ id: row.id,
73
+ name: row.name,
74
+ description: row.description || '',
75
+ semantic_category: (row.semantic_category || 'analyze'),
76
+ completion: JSON.parse(row.completion_config),
77
+ activity_threshold: JSON.parse(row.activity_threshold),
78
+ default_skills: row.default_skills ? JSON.parse(row.default_skills) : undefined,
79
+ }));
80
+ }
81
+ /**
82
+ * 根据来源查询节点类型
83
+ */
84
+ getBySource(source) {
85
+ const rows = this.db.prepare(`
86
+ SELECT * FROM node_types WHERE source = ? ORDER BY id
87
+ `).all(source);
88
+ return rows.map(row => ({
89
+ id: row.id,
90
+ name: row.name,
91
+ description: row.description || '',
92
+ semantic_category: (row.semantic_category || 'analyze'),
93
+ completion: JSON.parse(row.completion_config),
94
+ activity_threshold: JSON.parse(row.activity_threshold),
95
+ default_skills: row.default_skills ? JSON.parse(row.default_skills) : undefined,
96
+ }));
97
+ }
98
+ /**
99
+ * 删除指定 Convention 的所有节点类型
100
+ */
101
+ deleteByConvention(conventionId) {
102
+ const result = this.db.prepare(`
103
+ DELETE FROM node_types WHERE convention_id = ?
104
+ `).run(conventionId);
105
+ return result.changes;
106
+ }
107
+ /**
108
+ * 删除所有非内置节点类型
109
+ */
110
+ deleteAllExternal() {
111
+ const result = this.db.prepare(`
112
+ DELETE FROM node_types WHERE source = 'convention'
113
+ `).run();
114
+ return result.changes;
115
+ }
116
+ /**
117
+ * 统计节点类型数量
118
+ */
119
+ count() {
120
+ const row = this.db.prepare(`
121
+ SELECT
122
+ COUNT(*) as total,
123
+ SUM(CASE WHEN source = 'builtin' THEN 1 ELSE 0 END) as builtin,
124
+ SUM(CASE WHEN source = 'convention' THEN 1 ELSE 0 END) as convention
125
+ FROM node_types
126
+ `).get();
127
+ return row;
128
+ }
129
+ }
130
+ //# sourceMappingURL=node-type-repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-type-repository.js","sourceRoot":"","sources":["../../../src/storage/repositories/node-type-repository.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ import { DistillRepository } from './repositories/distill-repository.js';
16
16
  import { MaintenanceRepository } from './repositories/maintenance-repository.js';
17
17
  import { ProjectMetaRepository } from './repositories/project-meta-repository.js';
18
18
  import { DynamicPipelineRepository } from './repositories/dynamic-pipeline-repository.js';
19
+ import { NodeTypeRepository } from './repositories/node-type-repository.js';
19
20
  export declare class SQLiteStorage implements StorageEngine {
20
21
  private db;
21
22
  private dbPath;
@@ -34,6 +35,7 @@ export declare class SQLiteStorage implements StorageEngine {
34
35
  maintenance: MaintenanceRepository;
35
36
  projectMeta: ProjectMetaRepository;
36
37
  dynamicPipelines: DynamicPipelineRepository;
38
+ nodeTypes: NodeTypeRepository;
37
39
  };
38
40
  /** FTS5 查询停用词表:过滤无意义的高频词,提升关键词质量 */
39
41
  private static readonly STOPWORDS;