agentic-qe 2.0.0 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. package/.claude/agents/qx-partner.md +17 -4
  2. package/.claude/skills/accessibility-testing/SKILL.md +144 -692
  3. package/.claude/skills/agentic-quality-engineering/SKILL.md +176 -529
  4. package/.claude/skills/api-testing-patterns/SKILL.md +180 -560
  5. package/.claude/skills/brutal-honesty-review/SKILL.md +113 -603
  6. package/.claude/skills/bug-reporting-excellence/SKILL.md +116 -517
  7. package/.claude/skills/chaos-engineering-resilience/SKILL.md +127 -72
  8. package/.claude/skills/cicd-pipeline-qe-orchestrator/SKILL.md +209 -404
  9. package/.claude/skills/code-review-quality/SKILL.md +158 -608
  10. package/.claude/skills/compatibility-testing/SKILL.md +148 -38
  11. package/.claude/skills/compliance-testing/SKILL.md +132 -63
  12. package/.claude/skills/consultancy-practices/SKILL.md +114 -446
  13. package/.claude/skills/context-driven-testing/SKILL.md +117 -381
  14. package/.claude/skills/contract-testing/SKILL.md +176 -141
  15. package/.claude/skills/database-testing/SKILL.md +137 -130
  16. package/.claude/skills/exploratory-testing-advanced/SKILL.md +160 -629
  17. package/.claude/skills/holistic-testing-pact/SKILL.md +140 -188
  18. package/.claude/skills/localization-testing/SKILL.md +145 -33
  19. package/.claude/skills/mobile-testing/SKILL.md +132 -448
  20. package/.claude/skills/mutation-testing/SKILL.md +147 -41
  21. package/.claude/skills/performance-testing/SKILL.md +200 -546
  22. package/.claude/skills/quality-metrics/SKILL.md +164 -519
  23. package/.claude/skills/refactoring-patterns/SKILL.md +132 -699
  24. package/.claude/skills/regression-testing/SKILL.md +120 -926
  25. package/.claude/skills/risk-based-testing/SKILL.md +157 -660
  26. package/.claude/skills/security-testing/SKILL.md +199 -538
  27. package/.claude/skills/sherlock-review/SKILL.md +163 -699
  28. package/.claude/skills/shift-left-testing/SKILL.md +161 -465
  29. package/.claude/skills/shift-right-testing/SKILL.md +161 -519
  30. package/.claude/skills/six-thinking-hats/SKILL.md +175 -1110
  31. package/.claude/skills/skills-manifest.json +71 -20
  32. package/.claude/skills/tdd-london-chicago/SKILL.md +131 -448
  33. package/.claude/skills/technical-writing/SKILL.md +103 -154
  34. package/.claude/skills/test-automation-strategy/SKILL.md +166 -772
  35. package/.claude/skills/test-data-management/SKILL.md +126 -910
  36. package/.claude/skills/test-design-techniques/SKILL.md +179 -89
  37. package/.claude/skills/test-environment-management/SKILL.md +136 -91
  38. package/.claude/skills/test-reporting-analytics/SKILL.md +169 -92
  39. package/.claude/skills/testability-scoring/SKILL.md +172 -538
  40. package/.claude/skills/testability-scoring/scripts/generate-html-report.js +0 -0
  41. package/.claude/skills/visual-testing-advanced/SKILL.md +155 -78
  42. package/.claude/skills/xp-practices/SKILL.md +151 -587
  43. package/CHANGELOG.md +86 -0
  44. package/README.md +23 -16
  45. package/dist/agents/QXPartnerAgent.d.ts +47 -1
  46. package/dist/agents/QXPartnerAgent.d.ts.map +1 -1
  47. package/dist/agents/QXPartnerAgent.js +2086 -125
  48. package/dist/agents/QXPartnerAgent.js.map +1 -1
  49. package/dist/agents/lifecycle/AgentLifecycleManager.d.ts.map +1 -1
  50. package/dist/agents/lifecycle/AgentLifecycleManager.js +34 -31
  51. package/dist/agents/lifecycle/AgentLifecycleManager.js.map +1 -1
  52. package/dist/cli/commands/init-claude-md-template.d.ts.map +1 -1
  53. package/dist/cli/commands/init-claude-md-template.js +14 -0
  54. package/dist/cli/commands/init-claude-md-template.js.map +1 -1
  55. package/dist/core/SwarmCoordinator.d.ts +180 -0
  56. package/dist/core/SwarmCoordinator.d.ts.map +1 -0
  57. package/dist/core/SwarmCoordinator.js +473 -0
  58. package/dist/core/SwarmCoordinator.js.map +1 -0
  59. package/dist/core/memory/ReflexionMemoryAdapter.d.ts +109 -0
  60. package/dist/core/memory/ReflexionMemoryAdapter.d.ts.map +1 -0
  61. package/dist/core/memory/ReflexionMemoryAdapter.js +306 -0
  62. package/dist/core/memory/ReflexionMemoryAdapter.js.map +1 -0
  63. package/dist/core/memory/RuVectorPatternStore.d.ts +28 -0
  64. package/dist/core/memory/RuVectorPatternStore.d.ts.map +1 -1
  65. package/dist/core/memory/RuVectorPatternStore.js +70 -0
  66. package/dist/core/memory/RuVectorPatternStore.js.map +1 -1
  67. package/dist/core/memory/SparseVectorSearch.d.ts +55 -0
  68. package/dist/core/memory/SparseVectorSearch.d.ts.map +1 -0
  69. package/dist/core/memory/SparseVectorSearch.js +130 -0
  70. package/dist/core/memory/SparseVectorSearch.js.map +1 -0
  71. package/dist/core/memory/TieredCompression.d.ts +81 -0
  72. package/dist/core/memory/TieredCompression.d.ts.map +1 -0
  73. package/dist/core/memory/TieredCompression.js +270 -0
  74. package/dist/core/memory/TieredCompression.js.map +1 -0
  75. package/dist/core/memory/index.d.ts +6 -0
  76. package/dist/core/memory/index.d.ts.map +1 -1
  77. package/dist/core/memory/index.js +29 -1
  78. package/dist/core/memory/index.js.map +1 -1
  79. package/dist/core/metrics/MetricsAggregator.d.ts +228 -0
  80. package/dist/core/metrics/MetricsAggregator.d.ts.map +1 -0
  81. package/dist/core/metrics/MetricsAggregator.js +482 -0
  82. package/dist/core/metrics/MetricsAggregator.js.map +1 -0
  83. package/dist/core/metrics/index.d.ts +5 -0
  84. package/dist/core/metrics/index.d.ts.map +1 -0
  85. package/dist/core/metrics/index.js +11 -0
  86. package/dist/core/metrics/index.js.map +1 -0
  87. package/dist/core/optimization/SwarmOptimizer.d.ts +5 -0
  88. package/dist/core/optimization/SwarmOptimizer.d.ts.map +1 -1
  89. package/dist/core/optimization/SwarmOptimizer.js +17 -0
  90. package/dist/core/optimization/SwarmOptimizer.js.map +1 -1
  91. package/dist/core/orchestration/AdaptiveScheduler.d.ts +190 -0
  92. package/dist/core/orchestration/AdaptiveScheduler.d.ts.map +1 -0
  93. package/dist/core/orchestration/AdaptiveScheduler.js +460 -0
  94. package/dist/core/orchestration/AdaptiveScheduler.js.map +1 -0
  95. package/dist/core/orchestration/WorkflowOrchestrator.d.ts +13 -0
  96. package/dist/core/orchestration/WorkflowOrchestrator.d.ts.map +1 -1
  97. package/dist/core/orchestration/WorkflowOrchestrator.js +32 -0
  98. package/dist/core/orchestration/WorkflowOrchestrator.js.map +1 -1
  99. package/dist/core/recovery/CircuitBreaker.d.ts +176 -0
  100. package/dist/core/recovery/CircuitBreaker.d.ts.map +1 -0
  101. package/dist/core/recovery/CircuitBreaker.js +382 -0
  102. package/dist/core/recovery/CircuitBreaker.js.map +1 -0
  103. package/dist/core/recovery/RecoveryOrchestrator.d.ts +186 -0
  104. package/dist/core/recovery/RecoveryOrchestrator.d.ts.map +1 -0
  105. package/dist/core/recovery/RecoveryOrchestrator.js +476 -0
  106. package/dist/core/recovery/RecoveryOrchestrator.js.map +1 -0
  107. package/dist/core/recovery/RetryStrategy.d.ts +127 -0
  108. package/dist/core/recovery/RetryStrategy.d.ts.map +1 -0
  109. package/dist/core/recovery/RetryStrategy.js +314 -0
  110. package/dist/core/recovery/RetryStrategy.js.map +1 -0
  111. package/dist/core/recovery/index.d.ts +8 -0
  112. package/dist/core/recovery/index.d.ts.map +1 -0
  113. package/dist/core/recovery/index.js +27 -0
  114. package/dist/core/recovery/index.js.map +1 -0
  115. package/dist/core/skills/DependencyResolver.d.ts +99 -0
  116. package/dist/core/skills/DependencyResolver.d.ts.map +1 -0
  117. package/dist/core/skills/DependencyResolver.js +260 -0
  118. package/dist/core/skills/DependencyResolver.js.map +1 -0
  119. package/dist/core/skills/ManifestGenerator.d.ts +114 -0
  120. package/dist/core/skills/ManifestGenerator.d.ts.map +1 -0
  121. package/dist/core/skills/ManifestGenerator.js +449 -0
  122. package/dist/core/skills/ManifestGenerator.js.map +1 -0
  123. package/dist/core/skills/index.d.ts +9 -0
  124. package/dist/core/skills/index.d.ts.map +1 -0
  125. package/dist/core/skills/index.js +24 -0
  126. package/dist/core/skills/index.js.map +1 -0
  127. package/dist/mcp/handlers/chaos/chaos-inject-failure.d.ts +5 -0
  128. package/dist/mcp/handlers/chaos/chaos-inject-failure.d.ts.map +1 -1
  129. package/dist/mcp/handlers/chaos/chaos-inject-failure.js +36 -2
  130. package/dist/mcp/handlers/chaos/chaos-inject-failure.js.map +1 -1
  131. package/dist/mcp/handlers/chaos/chaos-inject-latency.d.ts +5 -0
  132. package/dist/mcp/handlers/chaos/chaos-inject-latency.d.ts.map +1 -1
  133. package/dist/mcp/handlers/chaos/chaos-inject-latency.js +36 -2
  134. package/dist/mcp/handlers/chaos/chaos-inject-latency.js.map +1 -1
  135. package/dist/mcp/server.d.ts +9 -9
  136. package/dist/mcp/server.d.ts.map +1 -1
  137. package/dist/mcp/server.js +1 -2
  138. package/dist/mcp/server.js.map +1 -1
  139. package/dist/types/qx.d.ts +113 -7
  140. package/dist/types/qx.d.ts.map +1 -1
  141. package/dist/types/qx.js.map +1 -1
  142. package/dist/visualization/api/RestEndpoints.js +1 -1
  143. package/dist/visualization/api/RestEndpoints.js.map +1 -1
  144. package/package.json +15 -54
@@ -0,0 +1,449 @@
1
+ "use strict";
2
+ /**
3
+ * Manifest Generator for Dynamic Skill Loading
4
+ * Scans skill directories and generates/updates skills-manifest.json
5
+ */
6
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = { enumerable: true, get: function() { return m[k]; } };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
18
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
19
+ }) : function(o, v) {
20
+ o["default"] = v;
21
+ });
22
+ var __importStar = (this && this.__importStar) || (function () {
23
+ var ownKeys = function(o) {
24
+ ownKeys = Object.getOwnPropertyNames || function (o) {
25
+ var ar = [];
26
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
27
+ return ar;
28
+ };
29
+ return ownKeys(o);
30
+ };
31
+ return function (mod) {
32
+ if (mod && mod.__esModule) return mod;
33
+ var result = {};
34
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
35
+ __setModuleDefault(result, mod);
36
+ return result;
37
+ };
38
+ })();
39
+ Object.defineProperty(exports, "__esModule", { value: true });
40
+ exports.ManifestGenerator = void 0;
41
+ exports.generateManifest = generateManifest;
42
+ exports.updateManifest = updateManifest;
43
+ exports.validateManifest = validateManifest;
44
+ const fs = __importStar(require("fs/promises"));
45
+ const path = __importStar(require("path"));
46
+ /**
47
+ * Category detection rules based on skill name patterns
48
+ */
49
+ const CATEGORY_PATTERNS = {
50
+ 'agentic-quality': 'qe-core',
51
+ 'holistic-testing': 'qe-core',
52
+ 'tdd-': 'qe-methodology',
53
+ 'context-driven': 'qe-methodology',
54
+ 'exploratory': 'qe-methodology',
55
+ 'api-testing': 'qe-specialized',
56
+ 'performance-': 'qe-specialized',
57
+ 'security-': 'qe-specialized',
58
+ 'accessibility-': 'qe-specialized',
59
+ 'mobile-': 'qe-specialized',
60
+ 'mutation-': 'qe-advanced',
61
+ 'chaos-': 'qe-advanced',
62
+ 'contract-': 'qe-advanced',
63
+ 'github-': 'integration',
64
+ 'flow-nexus': 'integration',
65
+ 'hooks-': 'advanced',
66
+ 'swarm-': 'advanced',
67
+ 'hive-mind': 'advanced',
68
+ };
69
+ /**
70
+ * Priority detection based on skill characteristics
71
+ */
72
+ const PRIORITY_KEYWORDS = {
73
+ critical: ['agentic-quality-engineering', 'holistic-testing-pact'],
74
+ high: ['tdd', 'context-driven', 'api-testing', 'security'],
75
+ medium: ['performance', 'exploratory', 'regression', 'integration'],
76
+ low: ['localization', 'compatibility', 'visual'],
77
+ };
78
+ /**
79
+ * Manifest Generator for creating and updating skill manifests
80
+ */
81
+ class ManifestGenerator {
82
+ constructor(config = {}) {
83
+ this.config = {
84
+ skillsDir: path.resolve(process.cwd(), '.claude/skills'),
85
+ outputPath: path.resolve(process.cwd(), '.claude/skills/skills-manifest.json'),
86
+ defaultPriority: 'medium',
87
+ tokensPerLine: 4, // Approximate tokens per line
88
+ ...config,
89
+ };
90
+ }
91
+ /**
92
+ * Generate manifest from skill directories
93
+ */
94
+ async generate() {
95
+ const skills = await this.scanSkillDirectories();
96
+ const categoryCounts = this.calculateCategoryCounts(skills);
97
+ const manifest = {
98
+ version: '1.1.0',
99
+ generatedAt: new Date().toISOString(),
100
+ totalSkills: skills.length,
101
+ categoryCounts,
102
+ skills,
103
+ };
104
+ await this.writeManifest(manifest);
105
+ return manifest;
106
+ }
107
+ /**
108
+ * Update existing manifest with new/changed skills
109
+ */
110
+ async update() {
111
+ let existingManifest = null;
112
+ try {
113
+ const content = await fs.readFile(this.config.outputPath, 'utf-8');
114
+ existingManifest = JSON.parse(content);
115
+ }
116
+ catch {
117
+ // No existing manifest, generate from scratch
118
+ return this.generate();
119
+ }
120
+ const currentSkills = await this.scanSkillDirectories();
121
+ // TypeScript flow analysis: existingManifest is guaranteed non-null here
122
+ // because catch block returns early via this.generate()
123
+ const existingSkillMap = new Map(existingManifest.skills.map(s => [s.id, s]));
124
+ // Merge: keep existing metadata where possible, add new skills
125
+ const mergedSkills = [];
126
+ for (const skill of currentSkills) {
127
+ const existing = existingSkillMap.get(skill.id);
128
+ if (existing) {
129
+ // Update only if file changed (check lastUpdated)
130
+ const fileStats = await this.getFileStats(skill.id);
131
+ if (fileStats && fileStats > new Date(existing.lastUpdated)) {
132
+ mergedSkills.push(skill);
133
+ }
134
+ else {
135
+ mergedSkills.push(existing);
136
+ }
137
+ }
138
+ else {
139
+ mergedSkills.push(skill);
140
+ }
141
+ }
142
+ const manifest = {
143
+ version: '1.1.0',
144
+ generatedAt: new Date().toISOString(),
145
+ totalSkills: mergedSkills.length,
146
+ categoryCounts: this.calculateCategoryCounts(mergedSkills),
147
+ skills: mergedSkills,
148
+ };
149
+ await this.writeManifest(manifest);
150
+ return manifest;
151
+ }
152
+ /**
153
+ * Validate existing manifest against actual skill files
154
+ */
155
+ async validate() {
156
+ const errors = [];
157
+ const warnings = [];
158
+ let manifest;
159
+ try {
160
+ const content = await fs.readFile(this.config.outputPath, 'utf-8');
161
+ manifest = JSON.parse(content);
162
+ }
163
+ catch (error) {
164
+ return {
165
+ valid: false,
166
+ errors: [`Cannot read manifest: ${error instanceof Error ? error.message : String(error)}`],
167
+ warnings: [],
168
+ };
169
+ }
170
+ // Check each skill exists
171
+ for (const skill of manifest.skills) {
172
+ const skillPath = path.join(this.config.skillsDir, skill.path);
173
+ try {
174
+ await fs.access(skillPath);
175
+ }
176
+ catch {
177
+ errors.push(`Skill file missing: ${skill.id} (${skill.path})`);
178
+ }
179
+ }
180
+ // Check for orphan skills (files without manifest entries)
181
+ const manifestIds = new Set(manifest.skills.map(s => s.id));
182
+ const actualSkills = await this.getSkillDirectories();
183
+ for (const skillId of actualSkills) {
184
+ if (!manifestIds.has(skillId)) {
185
+ warnings.push(`Skill not in manifest: ${skillId}`);
186
+ }
187
+ }
188
+ // Validate category counts
189
+ const actualCounts = this.calculateCategoryCounts(manifest.skills);
190
+ for (const [category, count] of Object.entries(manifest.categoryCounts)) {
191
+ if (actualCounts[category] !== count) {
192
+ warnings.push(`Category count mismatch for ${category}: manifest=${count}, actual=${actualCounts[category] || 0}`);
193
+ }
194
+ }
195
+ return {
196
+ valid: errors.length === 0,
197
+ errors,
198
+ warnings,
199
+ };
200
+ }
201
+ /**
202
+ * Scan skill directories and extract metadata
203
+ */
204
+ async scanSkillDirectories() {
205
+ const skillDirs = await this.getSkillDirectories();
206
+ const skills = [];
207
+ for (const skillId of skillDirs) {
208
+ try {
209
+ const metadata = await this.extractMetadata(skillId);
210
+ if (metadata) {
211
+ skills.push(metadata);
212
+ }
213
+ }
214
+ catch (error) {
215
+ console.warn(`Failed to extract metadata for ${skillId}: ${error}`);
216
+ }
217
+ }
218
+ // Sort by priority then name
219
+ return skills.sort((a, b) => {
220
+ const priorityOrder = { critical: 0, high: 1, medium: 2, low: 3 };
221
+ const priorityDiff = priorityOrder[a.priority] - priorityOrder[b.priority];
222
+ return priorityDiff !== 0 ? priorityDiff : a.name.localeCompare(b.name);
223
+ });
224
+ }
225
+ /**
226
+ * Get list of skill directories
227
+ */
228
+ async getSkillDirectories() {
229
+ try {
230
+ const entries = await fs.readdir(this.config.skillsDir, { withFileTypes: true });
231
+ return entries
232
+ .filter(e => e.isDirectory() && !e.name.startsWith('.'))
233
+ .map(e => e.name);
234
+ }
235
+ catch {
236
+ return [];
237
+ }
238
+ }
239
+ /**
240
+ * Extract metadata from a skill directory
241
+ */
242
+ async extractMetadata(skillId) {
243
+ const skillDir = path.join(this.config.skillsDir, skillId);
244
+ const skillFile = path.join(skillDir, 'SKILL.md');
245
+ try {
246
+ const content = await fs.readFile(skillFile, 'utf-8');
247
+ const frontmatter = this.parseFrontmatter(content);
248
+ const stats = await fs.stat(skillFile);
249
+ return {
250
+ id: skillId,
251
+ name: frontmatter.name || this.formatName(skillId),
252
+ category: this.detectCategory(skillId, frontmatter),
253
+ description: frontmatter.description || this.extractDescription(content),
254
+ keywords: this.extractKeywords(frontmatter, content),
255
+ dependencies: frontmatter.dependencies?.split(',').map((d) => d.trim()) || [],
256
+ estimatedTokens: this.estimateTokens(content),
257
+ priority: this.detectPriority(skillId, frontmatter),
258
+ path: `${skillId}/SKILL.md`,
259
+ lastUpdated: stats.mtime.toISOString(),
260
+ };
261
+ }
262
+ catch {
263
+ return null;
264
+ }
265
+ }
266
+ /**
267
+ * Parse YAML frontmatter from markdown
268
+ */
269
+ parseFrontmatter(content) {
270
+ const match = content.match(/^---\n([\s\S]*?)\n---/);
271
+ if (!match)
272
+ return {};
273
+ const frontmatter = {};
274
+ const lines = match[1].split('\n');
275
+ for (const line of lines) {
276
+ const colonIndex = line.indexOf(':');
277
+ if (colonIndex === -1)
278
+ continue;
279
+ const key = line.substring(0, colonIndex).trim();
280
+ let value = line.substring(colonIndex + 1).trim();
281
+ // Handle arrays in YAML
282
+ if (value.startsWith('[') && value.endsWith(']')) {
283
+ value = value.slice(1, -1);
284
+ frontmatter[key] = value.split(',').map(v => v.trim().replace(/['"]/g, ''));
285
+ }
286
+ else {
287
+ frontmatter[key] = value.replace(/['"]/g, '');
288
+ }
289
+ }
290
+ return frontmatter;
291
+ }
292
+ /**
293
+ * Detect category based on skill ID and frontmatter
294
+ */
295
+ detectCategory(skillId, frontmatter) {
296
+ // Prefer explicit category from frontmatter
297
+ if (frontmatter.category && this.isValidCategory(frontmatter.category)) {
298
+ return frontmatter.category;
299
+ }
300
+ // Pattern matching
301
+ for (const [pattern, category] of Object.entries(CATEGORY_PATTERNS)) {
302
+ if (skillId.includes(pattern)) {
303
+ return category;
304
+ }
305
+ }
306
+ // Default based on skill characteristics
307
+ if (skillId.includes('testing') || skillId.includes('test')) {
308
+ return 'qe-specialized';
309
+ }
310
+ return 'qe-methodology';
311
+ }
312
+ /**
313
+ * Check if category is valid
314
+ */
315
+ isValidCategory(category) {
316
+ const validCategories = [
317
+ 'qe-core', 'qe-methodology', 'qe-specialized', 'qe-advanced', 'advanced', 'integration'
318
+ ];
319
+ return validCategories.includes(category);
320
+ }
321
+ /**
322
+ * Detect priority based on skill ID and frontmatter
323
+ */
324
+ detectPriority(skillId, frontmatter) {
325
+ // Prefer explicit priority from frontmatter
326
+ if (frontmatter.priority && ['critical', 'high', 'medium', 'low'].includes(frontmatter.priority)) {
327
+ return frontmatter.priority;
328
+ }
329
+ // Keyword matching
330
+ for (const [priority, keywords] of Object.entries(PRIORITY_KEYWORDS)) {
331
+ for (const keyword of keywords) {
332
+ if (skillId.includes(keyword)) {
333
+ return priority;
334
+ }
335
+ }
336
+ }
337
+ return this.config.defaultPriority;
338
+ }
339
+ /**
340
+ * Extract description from content (first paragraph after frontmatter)
341
+ */
342
+ extractDescription(content) {
343
+ const withoutFrontmatter = content.replace(/^---\n[\s\S]*?\n---\n?/, '');
344
+ const lines = withoutFrontmatter.split('\n').filter(l => l.trim() && !l.startsWith('#'));
345
+ if (lines.length > 0) {
346
+ return lines[0].trim().substring(0, 100);
347
+ }
348
+ return 'No description available';
349
+ }
350
+ /**
351
+ * Extract keywords from frontmatter and content
352
+ */
353
+ extractKeywords(frontmatter, content) {
354
+ const keywords = new Set();
355
+ // From frontmatter tags
356
+ if (Array.isArray(frontmatter.tags)) {
357
+ frontmatter.tags.forEach((tag) => keywords.add(tag.toLowerCase()));
358
+ }
359
+ // From frontmatter keywords
360
+ if (Array.isArray(frontmatter.keywords)) {
361
+ frontmatter.keywords.forEach((kw) => keywords.add(kw.toLowerCase()));
362
+ }
363
+ // Extract from headers
364
+ const headers = content.match(/^#+\s+(.+)$/gm) || [];
365
+ headers.forEach(h => {
366
+ const text = h.replace(/^#+\s+/, '').toLowerCase();
367
+ if (text.length <= 30) {
368
+ keywords.add(text);
369
+ }
370
+ });
371
+ return Array.from(keywords).slice(0, 10);
372
+ }
373
+ /**
374
+ * Estimate token count for content
375
+ */
376
+ estimateTokens(content) {
377
+ const lines = content.split('\n').length;
378
+ return Math.ceil(lines * this.config.tokensPerLine);
379
+ }
380
+ /**
381
+ * Format skill ID as human-readable name
382
+ */
383
+ formatName(skillId) {
384
+ return skillId
385
+ .split('-')
386
+ .map(word => word.charAt(0).toUpperCase() + word.slice(1))
387
+ .join(' ');
388
+ }
389
+ /**
390
+ * Calculate category counts
391
+ */
392
+ calculateCategoryCounts(skills) {
393
+ const counts = {
394
+ 'qe-core': 0,
395
+ 'qe-methodology': 0,
396
+ 'qe-specialized': 0,
397
+ 'qe-advanced': 0,
398
+ 'advanced': 0,
399
+ 'integration': 0,
400
+ };
401
+ for (const skill of skills) {
402
+ counts[skill.category]++;
403
+ }
404
+ return counts;
405
+ }
406
+ /**
407
+ * Get file modification time
408
+ */
409
+ async getFileStats(skillId) {
410
+ try {
411
+ const skillPath = path.join(this.config.skillsDir, skillId, 'SKILL.md');
412
+ const stats = await fs.stat(skillPath);
413
+ return stats.mtime;
414
+ }
415
+ catch {
416
+ return null;
417
+ }
418
+ }
419
+ /**
420
+ * Write manifest to file
421
+ */
422
+ async writeManifest(manifest) {
423
+ const content = JSON.stringify(manifest, null, 2);
424
+ await fs.writeFile(this.config.outputPath, content, 'utf-8');
425
+ }
426
+ }
427
+ exports.ManifestGenerator = ManifestGenerator;
428
+ /**
429
+ * CLI entry point for manifest generation
430
+ */
431
+ async function generateManifest(options = {}) {
432
+ const generator = new ManifestGenerator(options);
433
+ return generator.generate();
434
+ }
435
+ /**
436
+ * CLI entry point for manifest update
437
+ */
438
+ async function updateManifest(options = {}) {
439
+ const generator = new ManifestGenerator(options);
440
+ return generator.update();
441
+ }
442
+ /**
443
+ * CLI entry point for manifest validation
444
+ */
445
+ async function validateManifest(options = {}) {
446
+ const generator = new ManifestGenerator(options);
447
+ return generator.validate();
448
+ }
449
+ //# sourceMappingURL=ManifestGenerator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ManifestGenerator.js","sourceRoot":"","sources":["../../../src/core/skills/ManifestGenerator.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkcH,4CAGC;AAKD,wCAGC;AAKD,4CAGC;AAndD,gDAAkC;AAClC,2CAA6B;AAiB7B;;GAEG;AACH,MAAM,iBAAiB,GAAkC;IACvD,iBAAiB,EAAE,SAAS;IAC5B,kBAAkB,EAAE,SAAS;IAC7B,MAAM,EAAE,gBAAgB;IACxB,gBAAgB,EAAE,gBAAgB;IAClC,aAAa,EAAE,gBAAgB;IAC/B,aAAa,EAAE,gBAAgB;IAC/B,cAAc,EAAE,gBAAgB;IAChC,WAAW,EAAE,gBAAgB;IAC7B,gBAAgB,EAAE,gBAAgB;IAClC,SAAS,EAAE,gBAAgB;IAC3B,WAAW,EAAE,aAAa;IAC1B,QAAQ,EAAE,aAAa;IACvB,WAAW,EAAE,aAAa;IAC1B,SAAS,EAAE,aAAa;IACxB,YAAY,EAAE,aAAa;IAC3B,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,WAAW,EAAE,UAAU;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,iBAAiB,GAAoC;IACzD,QAAQ,EAAE,CAAC,6BAA6B,EAAE,uBAAuB,CAAC;IAClE,IAAI,EAAE,CAAC,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,UAAU,CAAC;IAC1D,MAAM,EAAE,CAAC,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,CAAC;IACnE,GAAG,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,QAAQ,CAAC;CACjD,CAAC;AAEF;;GAEG;AACH,MAAa,iBAAiB;IAG5B,YAAY,SAA2C,EAAE;QACvD,IAAI,CAAC,MAAM,GAAG;YACZ,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC;YACxD,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,qCAAqC,CAAC;YAC9E,eAAe,EAAE,QAAQ;YACzB,aAAa,EAAE,CAAC,EAAE,8BAA8B;YAChD,GAAG,MAAM;SACV,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ;QACZ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACjD,MAAM,cAAc,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;QAE5D,MAAM,QAAQ,GAAkB;YAC9B,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACrC,WAAW,EAAE,MAAM,CAAC,MAAM;YAC1B,cAAc;YACd,MAAM;SACP,CAAC;QAEF,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACnC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM;QACV,IAAI,gBAAgB,GAAyB,IAAI,CAAC;QAElD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACnE,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC;QAAC,MAAM,CAAC;YACP,8CAA8C;YAC9C,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;QACzB,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACxD,yEAAyE;QACzE,wDAAwD;QACxD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,gBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/E,+DAA+D;QAC/D,MAAM,YAAY,GAAoB,EAAE,CAAC;QAEzC,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChD,IAAI,QAAQ,EAAE,CAAC;gBACb,kDAAkD;gBAClD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACpD,IAAI,SAAS,IAAI,SAAS,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC5D,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC;qBAAM,CAAC;oBACN,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAkB;YAC9B,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACrC,WAAW,EAAE,YAAY,CAAC,MAAM;YAChC,cAAc,EAAE,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC;YAC1D,MAAM,EAAE,YAAY;SACrB,CAAC;QAEF,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACnC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ;QACZ,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAa,EAAE,CAAC;QAE9B,IAAI,QAAuB,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACnE,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,CAAC,yBAAyB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3F,QAAQ,EAAE,EAAE;aACb,CAAC;QACJ,CAAC;QAED,0BAA0B;QAC1B,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YACpC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAC/D,IAAI,CAAC;gBACH,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC7B,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,CAAC,IAAI,CAAC,uBAAuB,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;QAED,2DAA2D;QAC3D,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAEtD,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;YACnC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC9B,QAAQ,CAAC,IAAI,CAAC,0BAA0B,OAAO,EAAE,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;QAED,2BAA2B;QAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACnE,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;YACxE,IAAI,YAAY,CAAC,QAAyB,CAAC,KAAK,KAAK,EAAE,CAAC;gBACtD,QAAQ,CAAC,IAAI,CAAC,+BAA+B,QAAQ,cAAc,KAAK,YAAY,YAAY,CAAC,QAAyB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACtI,CAAC;QACH,CAAC;QAED,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;YAC1B,MAAM;YACN,QAAQ;SACT,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,oBAAoB;QAChC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACnD,MAAM,MAAM,GAAoB,EAAE,CAAC;QAEnC,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;gBACrD,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACxB,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,kCAAkC,OAAO,KAAK,KAAK,EAAE,CAAC,CAAC;YACtE,CAAC;QACH,CAAC;QAED,6BAA6B;QAC7B,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1B,MAAM,aAAa,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;YAClE,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC3E,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,mBAAmB;QAC/B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;YACjF,OAAO,OAAO;iBACX,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;iBACvD,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe,CAAC,OAAe;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAElD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACtD,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACnD,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAEvC,OAAO;gBACL,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,WAAW,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;gBAClD,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,WAAW,CAAC;gBACnD,WAAW,EAAE,WAAW,CAAC,WAAW,IAAI,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC;gBACxE,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC;gBACpD,YAAY,EAAE,WAAW,CAAC,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE;gBACrF,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;gBAC7C,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,WAAW,CAAC;gBACnD,IAAI,EAAE,GAAG,OAAO,WAAW;gBAC3B,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE;aACvC,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,OAAe;QACtC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QACrD,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,CAAC;QAEtB,MAAM,WAAW,GAAwB,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEnC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACrC,IAAI,UAAU,KAAK,CAAC,CAAC;gBAAE,SAAS;YAEhC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC;YACjD,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAElD,wBAAwB;YACxB,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjD,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC3B,WAAW,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;YAC9E,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,OAAe,EAAE,WAAgC;QACtE,4CAA4C;QAC5C,IAAI,WAAW,CAAC,QAAQ,IAAI,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvE,OAAO,WAAW,CAAC,QAAyB,CAAC;QAC/C,CAAC;QAED,mBAAmB;QACnB,KAAK,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACpE,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC9B,OAAO,QAAQ,CAAC;YAClB,CAAC;QACH,CAAC;QAED,yCAAyC;QACzC,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5D,OAAO,gBAAgB,CAAC;QAC1B,CAAC;QAED,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,QAAgB;QACtC,MAAM,eAAe,GAAoB;YACvC,SAAS,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,aAAa,EAAE,UAAU,EAAE,aAAa;SACxF,CAAC;QACF,OAAO,eAAe,CAAC,QAAQ,CAAC,QAAyB,CAAC,CAAC;IAC7D,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,OAAe,EAAE,WAAgC;QACtE,4CAA4C;QAC5C,IAAI,WAAW,CAAC,QAAQ,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjG,OAAO,WAAW,CAAC,QAAyB,CAAC;QAC/C,CAAC;QAED,mBAAmB;QACnB,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACrE,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC9B,OAAO,QAAyB,CAAC;gBACnC,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;IACrC,CAAC;IAED;;OAEG;IACK,kBAAkB,CAAC,OAAe;QACxC,MAAM,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;QACzE,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;QAEzF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO,0BAA0B,CAAC;IACpC,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,WAAgC,EAAE,OAAe;QACvE,MAAM,QAAQ,GAAgB,IAAI,GAAG,EAAE,CAAC;QAExC,wBAAwB;QACxB,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAC7E,CAAC;QAED,4BAA4B;QAC5B,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAC/E,CAAC;QAED,uBAAuB;QACvB,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QACrD,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAClB,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;YACnD,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;gBACtB,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,OAAe;QACpC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;QACzC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACK,UAAU,CAAC,OAAe;QAChC,OAAO,OAAO;aACX,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACzD,IAAI,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;IAED;;OAEG;IACK,uBAAuB,CAAC,MAAuB;QACrD,MAAM,MAAM,GAAkC;YAC5C,SAAS,EAAE,CAAC;YACZ,gBAAgB,EAAE,CAAC;YACnB,gBAAgB,EAAE,CAAC;YACnB,aAAa,EAAE,CAAC;YAChB,UAAU,EAAE,CAAC;YACb,aAAa,EAAE,CAAC;SACjB,CAAC;QAEF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3B,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,YAAY,CAAC,OAAe;QACxC,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;YACxE,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACvC,OAAO,KAAK,CAAC,KAAK,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,aAAa,CAAC,QAAuB;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAClD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;CACF;AApYD,8CAoYC;AAED;;GAEG;AACI,KAAK,UAAU,gBAAgB,CAAC,UAA4C,EAAE;IACnF,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACjD,OAAO,SAAS,CAAC,QAAQ,EAAE,CAAC;AAC9B,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,cAAc,CAAC,UAA4C,EAAE;IACjF,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACjD,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC;AAC5B,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,gBAAgB,CAAC,UAA4C,EAAE;IACnF,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACjD,OAAO,SAAS,CAAC,QAAQ,EAAE,CAAC;AAC9B,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Skills Module - Progressive Disclosure System
3
+ * Achieves 98% token reduction by lazy-loading skills on demand
4
+ */
5
+ export { Skill, SkillMetadata, SkillManifest, SkillLoaderConfig, SkillUsageStats, SkillSearchFilter, SkillPriority, SkillCategory, } from './types.js';
6
+ export { DynamicSkillLoader, getDefaultLoader, resetDefaultLoader, } from './DynamicSkillLoader.js';
7
+ export { ManifestGenerator, ManifestGeneratorConfig, generateManifest, updateManifest, validateManifest, } from './ManifestGenerator.js';
8
+ export { DependencyResolver, DependencyResolution, DependencyNode, ResolverOptions, createDependencyResolver, visualizeDependencyTree, } from './DependencyResolver.js';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/skills/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,KAAK,EACL,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,aAAa,GACd,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACd,eAAe,EACf,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ /**
3
+ * Skills Module - Progressive Disclosure System
4
+ * Achieves 98% token reduction by lazy-loading skills on demand
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.visualizeDependencyTree = exports.createDependencyResolver = exports.DependencyResolver = exports.validateManifest = exports.updateManifest = exports.generateManifest = exports.ManifestGenerator = exports.resetDefaultLoader = exports.getDefaultLoader = exports.DynamicSkillLoader = void 0;
8
+ // Dynamic Skill Loader
9
+ var DynamicSkillLoader_js_1 = require("./DynamicSkillLoader.js");
10
+ Object.defineProperty(exports, "DynamicSkillLoader", { enumerable: true, get: function () { return DynamicSkillLoader_js_1.DynamicSkillLoader; } });
11
+ Object.defineProperty(exports, "getDefaultLoader", { enumerable: true, get: function () { return DynamicSkillLoader_js_1.getDefaultLoader; } });
12
+ Object.defineProperty(exports, "resetDefaultLoader", { enumerable: true, get: function () { return DynamicSkillLoader_js_1.resetDefaultLoader; } });
13
+ // Manifest Generator
14
+ var ManifestGenerator_js_1 = require("./ManifestGenerator.js");
15
+ Object.defineProperty(exports, "ManifestGenerator", { enumerable: true, get: function () { return ManifestGenerator_js_1.ManifestGenerator; } });
16
+ Object.defineProperty(exports, "generateManifest", { enumerable: true, get: function () { return ManifestGenerator_js_1.generateManifest; } });
17
+ Object.defineProperty(exports, "updateManifest", { enumerable: true, get: function () { return ManifestGenerator_js_1.updateManifest; } });
18
+ Object.defineProperty(exports, "validateManifest", { enumerable: true, get: function () { return ManifestGenerator_js_1.validateManifest; } });
19
+ // Dependency Resolver
20
+ var DependencyResolver_js_1 = require("./DependencyResolver.js");
21
+ Object.defineProperty(exports, "DependencyResolver", { enumerable: true, get: function () { return DependencyResolver_js_1.DependencyResolver; } });
22
+ Object.defineProperty(exports, "createDependencyResolver", { enumerable: true, get: function () { return DependencyResolver_js_1.createDependencyResolver; } });
23
+ Object.defineProperty(exports, "visualizeDependencyTree", { enumerable: true, get: function () { return DependencyResolver_js_1.visualizeDependencyTree; } });
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/skills/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAcH,uBAAuB;AACvB,iEAIiC;AAH/B,2HAAA,kBAAkB,OAAA;AAClB,yHAAA,gBAAgB,OAAA;AAChB,2HAAA,kBAAkB,OAAA;AAGpB,qBAAqB;AACrB,+DAMgC;AAL9B,yHAAA,iBAAiB,OAAA;AAEjB,wHAAA,gBAAgB,OAAA;AAChB,sHAAA,cAAc,OAAA;AACd,wHAAA,gBAAgB,OAAA;AAGlB,sBAAsB;AACtB,iEAOiC;AAN/B,2HAAA,kBAAkB,OAAA;AAIlB,iIAAA,wBAAwB,OAAA;AACxB,gIAAA,uBAAuB,OAAA"}
@@ -3,6 +3,11 @@
3
3
  * Real fault injection for various failure types (errors, timeouts, connection issues)
4
4
  */
5
5
  import type { ChaosFailureConfig, ChaosInjectionResult, ActiveInjection } from '../../types/chaos';
6
+ /**
7
+ * Stop cleanup interval and clear all injections
8
+ * Call this during test teardown or process shutdown
9
+ */
10
+ export declare function shutdown(): void;
6
11
  /**
7
12
  * Main handler for chaos failure injection
8
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"chaos-inject-failure.d.ts","sourceRoot":"","sources":["../../../../src/mcp/handlers/chaos/chaos-inject-failure.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EAEhB,MAAM,mBAAmB,CAAC;AA6M3B;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,oBAAoB,CAAC,CAkG/B;AAED;;GAEG;AACH,wBAAgB,0BAA0B,IAAI,eAAe,EAAE,CAE9D;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAS/C"}
1
+ {"version":3,"file":"chaos-inject-failure.d.ts","sourceRoot":"","sources":["../../../../src/mcp/handlers/chaos/chaos-inject-failure.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EAEhB,MAAM,mBAAmB,CAAC;AA2B3B;;;GAGG;AACH,wBAAgB,QAAQ,IAAI,IAAI,CAa/B;AAqMD;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,oBAAoB,CAAC,CAqG/B;AAED;;GAEG;AACH,wBAAgB,0BAA0B,IAAI,eAAe,EAAE,CAE9D;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAS/C"}
@@ -4,6 +4,7 @@
4
4
  * Real fault injection for various failure types (errors, timeouts, connection issues)
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.shutdown = shutdown;
7
8
  exports.chaosInjectFailure = chaosInjectFailure;
8
9
  exports.getActiveFailureInjections = getActiveFailureInjections;
9
10
  exports.cleanupExpiredInjections = cleanupExpiredInjections;
@@ -13,6 +14,39 @@ const SecureRandom_js_1 = require("../../../utils/SecureRandom.js");
13
14
  const activeInjections = new Map();
14
15
  // Failure interceptors
15
16
  const failureHandlers = new Map();
17
+ // Cleanup interval handle (lazy-initialized to prevent memory leaks)
18
+ let cleanupIntervalHandle = null;
19
+ /**
20
+ * Start cleanup interval if not already running
21
+ * Uses unref() to prevent interval from keeping process alive
22
+ */
23
+ function ensureCleanupInterval() {
24
+ if (!cleanupIntervalHandle) {
25
+ cleanupIntervalHandle = setInterval(cleanupExpiredInjections, 60000);
26
+ // Prevent interval from keeping process alive
27
+ if (cleanupIntervalHandle.unref) {
28
+ cleanupIntervalHandle.unref();
29
+ }
30
+ }
31
+ }
32
+ /**
33
+ * Stop cleanup interval and clear all injections
34
+ * Call this during test teardown or process shutdown
35
+ */
36
+ function shutdown() {
37
+ if (cleanupIntervalHandle) {
38
+ clearInterval(cleanupIntervalHandle);
39
+ cleanupIntervalHandle = null;
40
+ }
41
+ // Rollback all active injections
42
+ for (const [id, injection] of activeInjections.entries()) {
43
+ if (injection.active) {
44
+ rollbackFailureInjection(id).catch(() => { });
45
+ }
46
+ }
47
+ activeInjections.clear();
48
+ failureHandlers.clear();
49
+ }
16
50
  /**
17
51
  * Valid HTTP error codes
18
52
  */
@@ -211,6 +245,8 @@ async function chaosInjectFailure(config) {
211
245
  active: true,
212
246
  };
213
247
  activeInjections.set(injectionId, injection);
248
+ // Start cleanup interval when first injection is created (lazy init)
249
+ ensureCleanupInterval();
214
250
  // Auto-rollback after duration
215
251
  if (config.duration) {
216
252
  setTimeout(async () => {
@@ -273,6 +309,4 @@ function cleanupExpiredInjections() {
273
309
  }
274
310
  }
275
311
  }
276
- // Run cleanup every 60 seconds
277
- setInterval(cleanupExpiredInjections, 60000);
278
312
  //# sourceMappingURL=chaos-inject-failure.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chaos-inject-failure.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/chaos/chaos-inject-failure.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chaos-inject-failure.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/chaos/chaos-inject-failure.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,11 @@
3
3
  * Real fault injection for network latency with multiple distribution types
4
4
  */
5
5
  import type { ChaosLatencyConfig, ChaosInjectionResult, ActiveInjection } from '../../types/chaos';
6
+ /**
7
+ * Stop cleanup interval and clear all injections
8
+ * Call this during test teardown or process shutdown
9
+ */
10
+ export declare function shutdown(): void;
6
11
  /**
7
12
  * Main handler for chaos latency injection
8
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"chaos-inject-latency.d.ts","sourceRoot":"","sources":["../../../../src/mcp/handlers/chaos/chaos-inject-latency.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EAChB,MAAM,mBAAmB,CAAC;AA+I3B;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,oBAAoB,CAAC,CAiG/B;AAED;;GAEG;AACH,wBAAgB,0BAA0B,IAAI,eAAe,EAAE,CAE9D;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAS/C"}
1
+ {"version":3,"file":"chaos-inject-latency.d.ts","sourceRoot":"","sources":["../../../../src/mcp/handlers/chaos/chaos-inject-latency.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EAChB,MAAM,mBAAmB,CAAC;AA2B3B;;;GAGG;AACH,wBAAgB,QAAQ,IAAI,IAAI,CAa/B;AAuID;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,oBAAoB,CAAC,CAoG/B;AAED;;GAEG;AACH,wBAAgB,0BAA0B,IAAI,eAAe,EAAE,CAE9D;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAS/C"}