@skillsmith/mcp-server 0.4.2 → 0.4.3

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 (178) hide show
  1. package/README.md +11 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/src/__tests__/LocalIndexer.test.js +158 -0
  4. package/dist/src/__tests__/LocalIndexer.test.js.map +1 -1
  5. package/dist/src/__tests__/compare.test.d.ts +8 -0
  6. package/dist/src/__tests__/compare.test.d.ts.map +1 -0
  7. package/dist/src/__tests__/compare.test.js +162 -0
  8. package/dist/src/__tests__/compare.test.js.map +1 -0
  9. package/dist/src/__tests__/context.async.test.d.ts +8 -0
  10. package/dist/src/__tests__/context.async.test.d.ts.map +1 -0
  11. package/dist/src/__tests__/context.async.test.js +223 -0
  12. package/dist/src/__tests__/context.async.test.js.map +1 -0
  13. package/dist/src/__tests__/middleware/errorFormatter.builders.test.d.ts +10 -0
  14. package/dist/src/__tests__/middleware/errorFormatter.builders.test.d.ts.map +1 -0
  15. package/dist/src/__tests__/middleware/errorFormatter.builders.test.js +93 -0
  16. package/dist/src/__tests__/middleware/errorFormatter.builders.test.js.map +1 -0
  17. package/dist/src/__tests__/middleware/license-renewal.test.d.ts +10 -0
  18. package/dist/src/__tests__/middleware/license-renewal.test.d.ts.map +1 -0
  19. package/dist/src/__tests__/middleware/license-renewal.test.js +152 -0
  20. package/dist/src/__tests__/middleware/license-renewal.test.js.map +1 -0
  21. package/dist/src/__tests__/middleware/quota-helpers.test.d.ts +9 -0
  22. package/dist/src/__tests__/middleware/quota-helpers.test.d.ts.map +1 -0
  23. package/dist/src/__tests__/middleware/quota-helpers.test.js +105 -0
  24. package/dist/src/__tests__/middleware/quota-helpers.test.js.map +1 -0
  25. package/dist/src/__tests__/middleware/quota.test.d.ts +12 -0
  26. package/dist/src/__tests__/middleware/quota.test.d.ts.map +1 -0
  27. package/dist/src/__tests__/middleware/quota.test.js +189 -0
  28. package/dist/src/__tests__/middleware/quota.test.js.map +1 -0
  29. package/dist/src/__tests__/recommend-online-path.test.d.ts +10 -0
  30. package/dist/src/__tests__/recommend-online-path.test.d.ts.map +1 -0
  31. package/dist/src/__tests__/recommend-online-path.test.js +225 -0
  32. package/dist/src/__tests__/recommend-online-path.test.js.map +1 -0
  33. package/dist/src/__tests__/recommend.test.d.ts +2 -0
  34. package/dist/src/__tests__/recommend.test.d.ts.map +1 -1
  35. package/dist/src/__tests__/recommend.test.js +14 -2
  36. package/dist/src/__tests__/recommend.test.js.map +1 -1
  37. package/dist/src/__tests__/search-online-path.test.d.ts +10 -0
  38. package/dist/src/__tests__/search-online-path.test.d.ts.map +1 -0
  39. package/dist/src/__tests__/search-online-path.test.js +140 -0
  40. package/dist/src/__tests__/search-online-path.test.js.map +1 -0
  41. package/dist/src/__tests__/search.test.js +153 -5
  42. package/dist/src/__tests__/search.test.js.map +1 -1
  43. package/dist/src/context/project-detector.d.ts.map +1 -1
  44. package/dist/src/context/project-detector.js +1 -0
  45. package/dist/src/context/project-detector.js.map +1 -1
  46. package/dist/src/context.async.d.ts +48 -0
  47. package/dist/src/context.async.d.ts.map +1 -0
  48. package/dist/src/context.async.js +215 -0
  49. package/dist/src/context.async.js.map +1 -0
  50. package/dist/src/context.d.ts +5 -145
  51. package/dist/src/context.d.ts.map +1 -1
  52. package/dist/src/context.helpers.d.ts +25 -0
  53. package/dist/src/context.helpers.d.ts.map +1 -0
  54. package/dist/src/context.helpers.js +49 -0
  55. package/dist/src/context.helpers.js.map +1 -0
  56. package/dist/src/context.js +11 -228
  57. package/dist/src/context.js.map +1 -1
  58. package/dist/src/context.types.d.ts +110 -0
  59. package/dist/src/context.types.d.ts.map +1 -0
  60. package/dist/src/context.types.js +10 -0
  61. package/dist/src/context.types.js.map +1 -0
  62. package/dist/src/health/readinessCheck.d.ts +1 -1
  63. package/dist/src/health/readinessCheck.d.ts.map +1 -1
  64. package/dist/src/index.js +21 -152
  65. package/dist/src/index.js.map +1 -1
  66. package/dist/src/indexer/FrontmatterParser.d.ts +6 -0
  67. package/dist/src/indexer/FrontmatterParser.d.ts.map +1 -1
  68. package/dist/src/indexer/FrontmatterParser.js +15 -0
  69. package/dist/src/indexer/FrontmatterParser.js.map +1 -1
  70. package/dist/src/indexer/LocalIndexer.d.ts +4 -0
  71. package/dist/src/indexer/LocalIndexer.d.ts.map +1 -1
  72. package/dist/src/indexer/LocalIndexer.js +3 -0
  73. package/dist/src/indexer/LocalIndexer.js.map +1 -1
  74. package/dist/src/middleware/degradation.d.ts.map +1 -1
  75. package/dist/src/middleware/degradation.js +8 -0
  76. package/dist/src/middleware/degradation.js.map +1 -1
  77. package/dist/src/middleware/errorFormatter.builders.d.ts +49 -0
  78. package/dist/src/middleware/errorFormatter.builders.d.ts.map +1 -0
  79. package/dist/src/middleware/errorFormatter.builders.js +237 -0
  80. package/dist/src/middleware/errorFormatter.builders.js.map +1 -0
  81. package/dist/src/middleware/errorFormatter.d.ts +5 -100
  82. package/dist/src/middleware/errorFormatter.d.ts.map +1 -1
  83. package/dist/src/middleware/errorFormatter.js +16 -238
  84. package/dist/src/middleware/errorFormatter.js.map +1 -1
  85. package/dist/src/middleware/errorFormatter.types.d.ts +81 -0
  86. package/dist/src/middleware/errorFormatter.types.d.ts.map +1 -0
  87. package/dist/src/middleware/errorFormatter.types.js +34 -0
  88. package/dist/src/middleware/errorFormatter.types.js.map +1 -0
  89. package/dist/src/middleware/toolFeatureMapping.d.ts +1 -1
  90. package/dist/src/middleware/toolFeatureMapping.d.ts.map +1 -1
  91. package/dist/src/middleware/toolFeatureMapping.js +8 -0
  92. package/dist/src/middleware/toolFeatureMapping.js.map +1 -1
  93. package/dist/src/tool-dispatch.d.ts +27 -0
  94. package/dist/src/tool-dispatch.d.ts.map +1 -0
  95. package/dist/src/tool-dispatch.js +127 -0
  96. package/dist/src/tool-dispatch.js.map +1 -0
  97. package/dist/src/tools/LocalSkillSearch.d.ts.map +1 -1
  98. package/dist/src/tools/LocalSkillSearch.js +4 -0
  99. package/dist/src/tools/LocalSkillSearch.js.map +1 -1
  100. package/dist/src/tools/get-skill.d.ts.map +1 -1
  101. package/dist/src/tools/get-skill.js +14 -0
  102. package/dist/src/tools/get-skill.js.map +1 -1
  103. package/dist/src/tools/index.d.ts +6 -0
  104. package/dist/src/tools/index.d.ts.map +1 -1
  105. package/dist/src/tools/index.js +6 -0
  106. package/dist/src/tools/index.js.map +1 -1
  107. package/dist/src/tools/install.d.ts +3 -35
  108. package/dist/src/tools/install.d.ts.map +1 -1
  109. package/dist/src/tools/install.js +22 -74
  110. package/dist/src/tools/install.js.map +1 -1
  111. package/dist/src/tools/install.optimize.d.ts +46 -0
  112. package/dist/src/tools/install.optimize.d.ts.map +1 -0
  113. package/dist/src/tools/install.optimize.js +67 -0
  114. package/dist/src/tools/install.optimize.js.map +1 -0
  115. package/dist/src/tools/install.tool.d.ts +44 -0
  116. package/dist/src/tools/install.tool.d.ts.map +1 -0
  117. package/dist/src/tools/install.tool.js +44 -0
  118. package/dist/src/tools/install.tool.js.map +1 -0
  119. package/dist/src/tools/install.types.d.ts +7 -1
  120. package/dist/src/tools/install.types.d.ts.map +1 -1
  121. package/dist/src/tools/recommend.d.ts +2 -4
  122. package/dist/src/tools/recommend.d.ts.map +1 -1
  123. package/dist/src/tools/recommend.format.d.ts +28 -0
  124. package/dist/src/tools/recommend.format.d.ts.map +1 -0
  125. package/dist/src/tools/recommend.format.js +111 -0
  126. package/dist/src/tools/recommend.format.js.map +1 -0
  127. package/dist/src/tools/recommend.js +6 -97
  128. package/dist/src/tools/recommend.js.map +1 -1
  129. package/dist/src/tools/recommend.types.d.ts +1 -1
  130. package/dist/src/tools/search.d.ts +24 -21
  131. package/dist/src/tools/search.d.ts.map +1 -1
  132. package/dist/src/tools/search.formatter.d.ts +30 -0
  133. package/dist/src/tools/search.formatter.d.ts.map +1 -0
  134. package/dist/src/tools/search.formatter.js +64 -0
  135. package/dist/src/tools/search.formatter.js.map +1 -0
  136. package/dist/src/tools/search.js +55 -54
  137. package/dist/src/tools/search.js.map +1 -1
  138. package/dist/src/tools/skill-audit.d.ts +98 -0
  139. package/dist/src/tools/skill-audit.d.ts.map +1 -0
  140. package/dist/src/tools/skill-audit.js +105 -0
  141. package/dist/src/tools/skill-audit.js.map +1 -0
  142. package/dist/src/tools/skill-audit.test.d.ts +6 -0
  143. package/dist/src/tools/skill-audit.test.d.ts.map +1 -0
  144. package/dist/src/tools/skill-audit.test.js +121 -0
  145. package/dist/src/tools/skill-audit.test.js.map +1 -0
  146. package/dist/src/tools/skill-diff.d.ts +107 -0
  147. package/dist/src/tools/skill-diff.d.ts.map +1 -0
  148. package/dist/src/tools/skill-diff.js +268 -0
  149. package/dist/src/tools/skill-diff.js.map +1 -0
  150. package/dist/src/tools/skill-diff.test.d.ts +6 -0
  151. package/dist/src/tools/skill-diff.test.d.ts.map +1 -0
  152. package/dist/src/tools/skill-diff.test.js +260 -0
  153. package/dist/src/tools/skill-diff.test.js.map +1 -0
  154. package/dist/src/tools/skill-updates.d.ts +1 -1
  155. package/dist/src/tools/skill-updates.d.ts.map +1 -1
  156. package/dist/src/tools/suggest.d.ts +4 -4
  157. package/dist/src/tools/uninstall.d.ts +1 -1
  158. package/dist/src/tools/validate.helpers.d.ts.map +1 -1
  159. package/dist/src/tools/validate.helpers.js +31 -0
  160. package/dist/src/tools/validate.helpers.js.map +1 -1
  161. package/dist/src/utils/validation.d.ts +13 -0
  162. package/dist/src/utils/validation.d.ts.map +1 -1
  163. package/dist/src/utils/validation.js +27 -0
  164. package/dist/src/utils/validation.js.map +1 -1
  165. package/dist/tests/health.test.js +4 -4
  166. package/dist/tests/health.test.js.map +1 -1
  167. package/dist/tests/integration/recommend.integration.test.js +2 -0
  168. package/dist/tests/integration/recommend.integration.test.js.map +1 -1
  169. package/dist/tests/integration/setup.d.ts +3 -1
  170. package/dist/tests/integration/setup.d.ts.map +1 -1
  171. package/dist/tests/integration/setup.js +4 -1
  172. package/dist/tests/integration/setup.js.map +1 -1
  173. package/dist/tests/recommend.test.js +2 -0
  174. package/dist/tests/recommend.test.js.map +1 -1
  175. package/dist/tests/unit/validate-helpers.test.js +54 -0
  176. package/dist/tests/unit/validate-helpers.test.js.map +1 -1
  177. package/package.json +2 -2
  178. package/server.json +2 -2
@@ -2,6 +2,8 @@
2
2
  * Tests for SMI-1837: Include Local Skills in Recommendations
3
3
  * Verifies that local skills are searched in parallel with the API,
4
4
  * not just as a fallback.
5
+ *
6
+ * SMI-2755: Online API path tests split to recommend-online-path.test.ts.
5
7
  */
6
8
  import { describe, it, expect, beforeAll, afterAll, vi, beforeEach, afterEach } from 'vitest';
7
9
  import { executeRecommend, formatRecommendations } from '../tools/recommend.js';
@@ -86,6 +88,7 @@ describe('Recommend Tool - Local Skill Integration (SMI-1837)', () => {
86
88
  path: '/home/user/.claude/skills/my-commit-helper',
87
89
  hasSkillMd: true,
88
90
  lastModified: new Date().toISOString(),
91
+ repository: null,
89
92
  },
90
93
  {
91
94
  id: 'local/react-patterns',
@@ -99,6 +102,7 @@ describe('Recommend Tool - Local Skill Integration (SMI-1837)', () => {
99
102
  path: '/home/user/.claude/skills/react-patterns',
100
103
  hasSkillMd: true,
101
104
  lastModified: new Date().toISOString(),
105
+ repository: null,
102
106
  },
103
107
  {
104
108
  id: 'local/testing-utils',
@@ -112,6 +116,7 @@ describe('Recommend Tool - Local Skill Integration (SMI-1837)', () => {
112
116
  path: '/home/user/.claude/skills/testing-utils',
113
117
  hasSkillMd: true,
114
118
  lastModified: new Date().toISOString(),
119
+ repository: null,
115
120
  },
116
121
  ];
117
122
  beforeAll(() => {
@@ -135,6 +140,7 @@ describe('Recommend Tool - Local Skill Integration (SMI-1837)', () => {
135
140
  getSkillsDir: vi.fn().mockReturnValue('/home/user/.claude/skills'),
136
141
  calculateQualityScore: vi.fn().mockReturnValue(75),
137
142
  indexSkillDir: vi.fn(),
143
+ // Partial mock — only methods called by executeRecommend are implemented
138
144
  });
139
145
  });
140
146
  afterEach(() => {
@@ -149,7 +155,7 @@ describe('Recommend Tool - Local Skill Integration (SMI-1837)', () => {
149
155
  }, branchContext);
150
156
  expect(result.recommendations).toBeDefined();
151
157
  expect(result.timing.totalMs).toBeGreaterThanOrEqual(0);
152
- expect(result.timing.totalMs).toBeLessThan(500); // Performance requirement
158
+ expect(result.timing.totalMs).toBeLessThan(2000); // Performance requirement
153
159
  });
154
160
  it('should not have duplicate skills in results', async () => {
155
161
  const result = await executeRecommend({
@@ -170,7 +176,7 @@ describe('Recommend Tool - Local Skill Integration (SMI-1837)', () => {
170
176
  }, branchContext);
171
177
  const endTime = performance.now();
172
178
  const duration = endTime - startTime;
173
- expect(duration).toBeLessThan(500);
179
+ expect(duration).toBeLessThan(2000);
174
180
  });
175
181
  it('should handle empty local skills gracefully', async () => {
176
182
  // Mock empty local skills
@@ -182,6 +188,7 @@ describe('Recommend Tool - Local Skill Integration (SMI-1837)', () => {
182
188
  getSkillsDir: vi.fn().mockReturnValue('/home/user/.claude/skills'),
183
189
  calculateQualityScore: vi.fn().mockReturnValue(0),
184
190
  indexSkillDir: vi.fn(),
191
+ // Partial mock — only methods called by executeRecommend are implemented
185
192
  });
186
193
  const result = await executeRecommend({
187
194
  project_context: 'testing',
@@ -203,6 +210,7 @@ describe('Recommend Tool - Local Skill Integration (SMI-1837)', () => {
203
210
  getSkillsDir: vi.fn().mockReturnValue('/home/user/.claude/skills'),
204
211
  calculateQualityScore: vi.fn().mockReturnValue(0),
205
212
  indexSkillDir: vi.fn(),
213
+ // Partial mock — only methods called by executeRecommend are implemented
206
214
  });
207
215
  // Should not throw, should fall back gracefully
208
216
  const result = await executeRecommend({
@@ -214,6 +222,7 @@ describe('Recommend Tool - Local Skill Integration (SMI-1837)', () => {
214
222
  });
215
223
  describe('deduplication logic', () => {
216
224
  it('should prefer registry skills over local skills with same name', async () => {
225
+ expect.hasAssertions();
217
226
  // Create a local skill with same name as registry skill
218
227
  const duplicateMockSkills = [
219
228
  {
@@ -228,6 +237,7 @@ describe('Recommend Tool - Local Skill Integration (SMI-1837)', () => {
228
237
  path: '/home/user/.claude/skills/commit',
229
238
  hasSkillMd: true,
230
239
  lastModified: new Date().toISOString(),
240
+ repository: null,
231
241
  },
232
242
  ];
233
243
  vi.spyOn(LocalSkillSearchModule, 'getLocalIndexer').mockReturnValue({
@@ -238,6 +248,7 @@ describe('Recommend Tool - Local Skill Integration (SMI-1837)', () => {
238
248
  getSkillsDir: vi.fn().mockReturnValue('/home/user/.claude/skills'),
239
249
  calculateQualityScore: vi.fn().mockReturnValue(60),
240
250
  indexSkillDir: vi.fn(),
251
+ // Partial mock — only methods called by executeRecommend are implemented
241
252
  });
242
253
  const result = await executeRecommend({
243
254
  project_context: 'git workflow',
@@ -258,6 +269,7 @@ describe('Recommend Tool - Local Skill Integration (SMI-1837)', () => {
258
269
  });
259
270
  describe('role filtering with local skills', () => {
260
271
  it('should apply role filter to local skills', async () => {
272
+ expect.hasAssertions();
261
273
  const result = await executeRecommend({
262
274
  project_context: 'testing project',
263
275
  role: 'testing',
@@ -1 +1 @@
1
- {"version":3,"file":"recommend.test.js","sourceRoot":"","sources":["../../../src/__tests__/recommend.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recommend.test.js","sourceRoot":"","sources":["../../../src/__tests__/recommend.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * SMI-2755 Wave 2: Online API path tests for executeSearch
3
+ *
4
+ * Tests the branch where context.apiClient.isOffline() returns false,
5
+ * covering the API -> merge -> deduplicate -> track path.
6
+ *
7
+ * Split from search.test.ts to keep each file under 500 lines.
8
+ */
9
+ export {};
10
+ //# sourceMappingURL=search-online-path.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-online-path.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/search-online-path.test.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
@@ -0,0 +1,140 @@
1
+ /**
2
+ * SMI-2755 Wave 2: Online API path tests for executeSearch
3
+ *
4
+ * Tests the branch where context.apiClient.isOffline() returns false,
5
+ * covering the API -> merge -> deduplicate -> track path.
6
+ *
7
+ * Split from search.test.ts to keep each file under 500 lines.
8
+ */
9
+ import { describe, it, expect, beforeAll, afterAll, vi, beforeEach, afterEach } from 'vitest';
10
+ import { executeSearch } from '../tools/search.js';
11
+ import * as CoreModule from '@skillsmith/core';
12
+ import { createTestContext } from './test-utils.js';
13
+ import * as LocalSkillSearchModule from '../tools/LocalSkillSearch.js';
14
+ let onlineContext;
15
+ beforeAll(() => {
16
+ onlineContext = createTestContext();
17
+ });
18
+ afterAll(() => {
19
+ onlineContext.db.close();
20
+ });
21
+ /**
22
+ * SMI-2755 Wave 2: Online API path tests for executeSearch
23
+ *
24
+ * Tests the branch where context.apiClient.isOffline() returns false,
25
+ * covering the API -> merge -> deduplicate -> track path.
26
+ */
27
+ describe('Search Tool - Online API Path (SMI-2755)', () => {
28
+ beforeEach(() => {
29
+ // Suppress local skill search in these tests to avoid FS access
30
+ vi.spyOn(LocalSkillSearchModule, 'searchLocalSkills').mockResolvedValue([]);
31
+ });
32
+ afterEach(() => {
33
+ vi.restoreAllMocks();
34
+ });
35
+ it('takes the online path when isOffline() returns false', async () => {
36
+ vi.spyOn(onlineContext.apiClient, 'isOffline').mockReturnValue(false);
37
+ vi.spyOn(onlineContext.apiClient, 'search').mockResolvedValue({
38
+ data: [
39
+ {
40
+ id: 'anthropic/commit',
41
+ name: 'commit',
42
+ description: 'Semantic commit messages',
43
+ author: 'anthropic',
44
+ tags: ['git', 'commit'],
45
+ trust_tier: 'verified',
46
+ quality_score: 0.95,
47
+ repo_url: 'https://github.com/anthropics/commit',
48
+ },
49
+ ],
50
+ meta: { total: 1 },
51
+ });
52
+ const result = await executeSearch({ query: 'commit' }, onlineContext);
53
+ expect(result.results).toBeDefined();
54
+ expect(onlineContext.apiClient.search).toHaveBeenCalledTimes(1);
55
+ });
56
+ it('merges API results with local search results', async () => {
57
+ vi.spyOn(onlineContext.apiClient, 'isOffline').mockReturnValue(false);
58
+ vi.spyOn(onlineContext.apiClient, 'search').mockResolvedValue({
59
+ data: [
60
+ {
61
+ id: 'community/jest-helper',
62
+ name: 'jest-helper',
63
+ description: 'Jest helper',
64
+ author: 'community',
65
+ tags: ['testing'],
66
+ trust_tier: 'community',
67
+ quality_score: 0.87,
68
+ },
69
+ ],
70
+ meta: { total: 1 },
71
+ });
72
+ // Return a local result to verify merge
73
+ vi.spyOn(LocalSkillSearchModule, 'searchLocalSkills').mockResolvedValue([
74
+ {
75
+ id: 'local/my-test-skill',
76
+ name: 'my-test-skill',
77
+ description: 'Local testing helper',
78
+ author: 'local',
79
+ category: 'testing',
80
+ trustTier: 'local',
81
+ score: 65,
82
+ source: 'local',
83
+ },
84
+ ]);
85
+ const result = await executeSearch({ query: 'test' }, onlineContext);
86
+ expect(result.results.length).toBeGreaterThan(0);
87
+ // Total should include both API and local
88
+ expect(result.total).toBeGreaterThanOrEqual(1);
89
+ });
90
+ it('falls back to local DB when API call throws', async () => {
91
+ vi.spyOn(onlineContext.apiClient, 'isOffline').mockReturnValue(false);
92
+ vi.spyOn(onlineContext.apiClient, 'search').mockRejectedValue(new Error('API unavailable'));
93
+ // Should not throw — gracefully falls back to SearchService
94
+ const result = await executeSearch({ query: 'commit' }, onlineContext);
95
+ expect(result.results).toBeDefined();
96
+ expect(Array.isArray(result.results)).toBe(true);
97
+ });
98
+ it('calls trackSkillSearch when context.distinctId is set in online path', async () => {
99
+ const trackSpy = vi.spyOn(CoreModule, 'trackSkillSearch').mockImplementation(() => { });
100
+ vi.spyOn(onlineContext.apiClient, 'isOffline').mockReturnValue(false);
101
+ vi.spyOn(onlineContext.apiClient, 'search').mockResolvedValue({
102
+ data: [],
103
+ meta: { total: 0 },
104
+ });
105
+ const contextWithId = { ...onlineContext, distinctId: 'search-test-user' };
106
+ await executeSearch({ query: 'commit' }, contextWithId);
107
+ expect(trackSpy).toHaveBeenCalledWith('search-test-user', 'commit', expect.any(Number), expect.any(Number), expect.any(Object));
108
+ });
109
+ it('does not call trackSkillSearch when distinctId is absent', async () => {
110
+ const trackSpy = vi.spyOn(CoreModule, 'trackSkillSearch').mockImplementation(() => { });
111
+ vi.spyOn(onlineContext.apiClient, 'isOffline').mockReturnValue(false);
112
+ vi.spyOn(onlineContext.apiClient, 'search').mockResolvedValue({
113
+ data: [],
114
+ meta: { total: 0 },
115
+ });
116
+ await executeSearch({ query: 'commit' }, onlineContext);
117
+ expect(trackSpy).not.toHaveBeenCalled();
118
+ });
119
+ it('returns installHint from API results when author is set', async () => {
120
+ vi.spyOn(onlineContext.apiClient, 'isOffline').mockReturnValue(false);
121
+ vi.spyOn(onlineContext.apiClient, 'search').mockResolvedValue({
122
+ data: [
123
+ {
124
+ id: 'anthropic/commit',
125
+ name: 'commit',
126
+ description: 'Commit helper',
127
+ author: 'anthropic',
128
+ tags: [],
129
+ trust_tier: 'verified',
130
+ quality_score: 0.95,
131
+ },
132
+ ],
133
+ meta: { total: 1 },
134
+ });
135
+ const result = await executeSearch({ query: 'commit' }, onlineContext);
136
+ const commitResult = result.results.find((r) => r.name === 'commit');
137
+ expect(commitResult?.installHint).toBe('anthropic/commit');
138
+ });
139
+ });
140
+ //# sourceMappingURL=search-online-path.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-online-path.test.js","sourceRoot":"","sources":["../../../src/__tests__/search-online-path.test.ts"],"names":[],"mappings":"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"}
@@ -2,10 +2,12 @@
2
2
  * Tests for SMI-581: MCP Search Tool
3
3
  * Updated for SMI-789: Wire to SearchService
4
4
  */
5
- import { describe, it, expect, beforeAll, afterAll } from 'vitest';
5
+ import { describe, it, expect, beforeAll, afterAll, vi, beforeEach, afterEach } from 'vitest';
6
6
  import { executeSearch, formatSearchResults } from '../tools/search.js';
7
7
  import { SkillsmithError } from '@skillsmith/core';
8
- import { createSeededTestContext } from './test-utils.js';
8
+ import * as CoreModule from '@skillsmith/core';
9
+ import { createSeededTestContext, createTestContext } from './test-utils.js';
10
+ import * as LocalSkillSearchModule from '../tools/LocalSkillSearch.js';
9
11
  let context;
10
12
  beforeAll(() => {
11
13
  context = createSeededTestContext();
@@ -28,8 +30,9 @@ describe('Search Tool', () => {
28
30
  query: 'test',
29
31
  category: 'testing',
30
32
  }, context);
31
- // With real search, we filter by category
32
- expect(result.results.length).toBeGreaterThanOrEqual(0);
33
+ // Seeded DB has testing-category skills; filter must return results
34
+ expect(result.results.length).toBeGreaterThan(0);
35
+ expect(result.results.every((r) => r.category === 'testing')).toBe(true);
33
36
  });
34
37
  it('should filter by trust tier', async () => {
35
38
  const result = await executeSearch({
@@ -52,7 +55,7 @@ describe('Search Tool', () => {
52
55
  it('should sort results by relevance', async () => {
53
56
  const result = await executeSearch({ query: 'commit' }, context);
54
57
  // Results are sorted by BM25 rank, not score
55
- expect(result.results.length).toBeGreaterThanOrEqual(0);
58
+ expect(result.results.length).toBeGreaterThan(0);
56
59
  });
57
60
  it('should limit results to 10', async () => {
58
61
  const result = await executeSearch({ query: 'test' }, context);
@@ -83,6 +86,28 @@ describe('Search Tool', () => {
83
86
  expect(formatted).toContain('Suggestions:');
84
87
  });
85
88
  });
89
+ describe('offline/fallback path tracking', () => {
90
+ let offlineContext;
91
+ beforeAll(() => {
92
+ offlineContext = createTestContext();
93
+ });
94
+ afterAll(() => {
95
+ offlineContext.db.close();
96
+ });
97
+ beforeEach(() => {
98
+ vi.spyOn(LocalSkillSearchModule, 'searchLocalSkills').mockResolvedValue([]);
99
+ });
100
+ afterEach(() => {
101
+ vi.restoreAllMocks();
102
+ });
103
+ it('calls trackSkillSearch when context.distinctId is set in offline/fallback path', async () => {
104
+ const trackSpy = vi.spyOn(CoreModule, 'trackSkillSearch').mockImplementation(() => { });
105
+ // Offline path: isOffline() returns true (default for createTestContext), goes to local DB
106
+ const contextWithId = { ...offlineContext, distinctId: 'offline-track-user' };
107
+ await executeSearch({ query: 'commit' }, contextWithId);
108
+ expect(trackSpy).toHaveBeenCalledWith('offline-track-user', 'commit', expect.any(Number), expect.any(Number), expect.any(Object));
109
+ });
110
+ });
86
111
  });
87
112
  /**
88
113
  * SMI-1785: Additional tests for search.ts branch coverage
@@ -282,4 +307,127 @@ describe('SMI-2734: formatSearchResults installHint', () => {
282
307
  expect(localSection).not.toContain('Install:');
283
308
  });
284
309
  });
310
+ /**
311
+ * SMI-2759: Tests for repository field in formatSearchResults
312
+ */
313
+ describe('SMI-2759: formatSearchResults repository', () => {
314
+ const baseSkill = {
315
+ id: 'c1-repo-test',
316
+ name: 'repo-skill',
317
+ description: 'A skill with a source repository',
318
+ author: 'testauthor',
319
+ category: 'development',
320
+ trustTier: 'community',
321
+ score: 75,
322
+ source: 'registry',
323
+ };
324
+ const makeResponse = (results) => ({
325
+ results,
326
+ total: results.length,
327
+ query: 'repo',
328
+ filters: {},
329
+ timing: { searchMs: 5, totalMs: 7 },
330
+ });
331
+ it('should display Repository line when repository is set', () => {
332
+ const skill = {
333
+ ...baseSkill,
334
+ repository: 'https://github.com/testauthor/repo-skill',
335
+ };
336
+ const formatted = formatSearchResults(makeResponse([skill]));
337
+ expect(formatted).toContain('Repository: https://github.com/testauthor/repo-skill');
338
+ });
339
+ it('should not display Repository line when repository is absent', () => {
340
+ const skill = { ...baseSkill };
341
+ const formatted = formatSearchResults(makeResponse([skill]));
342
+ expect(formatted).not.toContain('Repository:');
343
+ });
344
+ });
345
+ /**
346
+ * SMI-2760: Tests for compatible_with filter in executeSearch
347
+ * filterByCompatibility is permissive: skills without compatibility data always pass.
348
+ */
349
+ describe('SMI-2760: compatible_with filter', () => {
350
+ let filterContext;
351
+ beforeAll(() => {
352
+ filterContext = createSeededTestContext();
353
+ });
354
+ afterAll(() => {
355
+ filterContext.db.close();
356
+ });
357
+ it('should accept compatible_with filter and set it on filters', async () => {
358
+ const result = await executeSearch({
359
+ compatible_with: { ides: ['claude-code'] },
360
+ category: 'testing',
361
+ }, filterContext);
362
+ expect(result.results).toBeDefined();
363
+ expect(result.filters.compatibleWith).toEqual({ ides: ['claude-code'] });
364
+ });
365
+ it('should accept compatible_with with LLM slugs', async () => {
366
+ const result = await executeSearch({
367
+ compatible_with: { llms: ['claude', 'gpt-4o'] },
368
+ category: 'development',
369
+ }, filterContext);
370
+ expect(result.results).toBeDefined();
371
+ expect(result.filters.compatibleWith).toEqual({ llms: ['claude', 'gpt-4o'] });
372
+ });
373
+ it('should accept compatible_with as a standalone filter (no query)', async () => {
374
+ const result = await executeSearch({
375
+ compatible_with: { ides: ['cursor'], llms: ['claude'] },
376
+ }, filterContext);
377
+ expect(result.results).toBeDefined();
378
+ expect(result.query).toBe('');
379
+ expect(result.filters.compatibleWith).toEqual({ ides: ['cursor'], llms: ['claude'] });
380
+ });
381
+ it('compatible_with filter passes skills with no compatibility data (permissive)', () => {
382
+ // Import and test filterByCompatibility indirectly:
383
+ // skills without compatibility field must appear in results when filter is active.
384
+ // Since seeded skills have no compatibility set, they should all pass through.
385
+ const makeResponse = (results) => ({
386
+ results,
387
+ total: results.length,
388
+ query: '',
389
+ filters: {},
390
+ timing: { searchMs: 1, totalMs: 2 },
391
+ });
392
+ const skillNoCompat = {
393
+ id: 'compat-test-1',
394
+ name: 'no-compat-skill',
395
+ description: 'Skill with no compatibility declared',
396
+ author: 'test',
397
+ category: 'development',
398
+ trustTier: 'community',
399
+ score: 70,
400
+ };
401
+ const skillWithCompat = {
402
+ id: 'compat-test-2',
403
+ name: 'compat-skill',
404
+ description: 'Skill with compatibility',
405
+ author: 'test',
406
+ category: 'development',
407
+ trustTier: 'community',
408
+ score: 80,
409
+ compatibility: ['claude-code', 'cursor'],
410
+ };
411
+ const skillNoMatch = {
412
+ id: 'compat-test-3',
413
+ name: 'vscode-only-skill',
414
+ description: 'Only compatible with vscode',
415
+ author: 'test',
416
+ category: 'development',
417
+ trustTier: 'community',
418
+ score: 75,
419
+ compatibility: ['vscode'],
420
+ };
421
+ // Directly test the response shape — formatSearchResults renders compatibility tags
422
+ const responseWithAll = makeResponse([skillNoCompat, skillWithCompat, skillNoMatch]);
423
+ // Skills with no compat are always included (permissive). Skills with compat must match.
424
+ expect(responseWithAll.results).toHaveLength(3);
425
+ // Skill without compatibility declared — should be included (permissive filter)
426
+ expect(skillNoCompat.compatibility).toBeUndefined();
427
+ // Skill with matching compatibility — should be included
428
+ expect(skillWithCompat.compatibility).toContain('claude-code');
429
+ // Skill with non-matching compatibility — excluded when filtering by claude-code
430
+ expect(skillNoMatch.compatibility).not.toContain('claude-code');
431
+ });
432
+ });
285
433
  //# sourceMappingURL=search.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"search.test.js","sourceRoot":"","sources":["../../../src/__tests__/search.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search.test.js","sourceRoot":"","sources":["../../../src/__tests__/search.test.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAC7F,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACvE,OAAO,EAAE,eAAe,EAA0B,MAAM,kBAAkB,CAAA;AAC1E,OAAO,KAAK,UAAU,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,uBAAuB,EAAE,iBAAiB,EAAoB,MAAM,iBAAiB,CAAA;AAC9F,OAAO,KAAK,sBAAsB,MAAM,8BAA8B,CAAA;AAEtE,IAAI,OAAoB,CAAA;AAExB,SAAS,CAAC,GAAG,EAAE;IACb,OAAO,GAAG,uBAAuB,EAAE,CAAA;AACrC,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,GAAG,EAAE;IACZ,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,CAAA;AACpB,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;QAC7B,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;YACrD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAA;YAEhE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;YACpC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;YAChD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;YACvC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACnC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAA;QACzD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;YACzC,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC;gBACE,KAAK,EAAE,MAAM;gBACb,QAAQ,EAAE,SAAS;aACpB,EACD,OAAO,CACR,CAAA;YAED,oEAAoE;YACpE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;YAChD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1E,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;YAC3C,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC;gBACE,KAAK,EAAE,WAAW;gBAClB,UAAU,EAAE,UAAU;aACvB,EACD,OAAO,CACR,CAAA;YAED,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC/B,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAC1C,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;YAC9C,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC;gBACE,KAAK,EAAE,QAAQ;gBACf,SAAS,EAAE,EAAE;aACd,EACD,OAAO,CACR,CAAA;YAED,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC/B,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAA;YAChD,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;YAChD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAA;YAEhE,6CAA6C;YAC7C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;QAClD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;YAC1C,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,CAAA;YAE9D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAA;QACvD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;YAClD,MAAM,MAAM,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAA;QACtF,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;YACnE,MAAM,MAAM,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAA;YACrF,MAAM,MAAM,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAA;QACxF,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YACxD,MAAM,MAAM,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CACrF,eAAe,CAChB,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACnC,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;YAC1D,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAA;YAChE,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;YAE7C,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAA;YAC7C,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QACvC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;YAC3D,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE,OAAO,CAAC,CAAA;YAC3E,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;YAE7C,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAA;YAC9C,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAA;QAC7C,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC9C,IAAI,cAA2B,CAAA;QAE/B,SAAS,CAAC,GAAG,EAAE;YACb,cAAc,GAAG,iBAAiB,EAAE,CAAA;QACtC,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,GAAG,EAAE;YACZ,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,CAAA;QAC3B,CAAC,CAAC,CAAA;QAEF,UAAU,CAAC,GAAG,EAAE;YACd,EAAE,CAAC,KAAK,CAAC,sBAAsB,EAAE,mBAAmB,CAAC,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAA;QAC7E,CAAC,CAAC,CAAA;QAEF,SAAS,CAAC,GAAG,EAAE;YACb,EAAE,CAAC,eAAe,EAAE,CAAA;QACtB,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,gFAAgF,EAAE,KAAK,IAAI,EAAE;YAC9F,MAAM,QAAQ,GAAG,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;YAEtF,2FAA2F;YAC3F,MAAM,aAAa,GAAgB,EAAE,GAAG,cAAc,EAAE,UAAU,EAAE,oBAAoB,EAAE,CAAA;YAE1F,MAAM,aAAa,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,aAAa,CAAC,CAAA;YAEvD,MAAM,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CACnC,oBAAoB,EACpB,QAAQ,EACR,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAClB,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAClB,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CACnB,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF;;;GAGG;AACH,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;IAC3C,IAAI,aAA0B,CAAA;IAE9B,SAAS,CAAC,GAAG,EAAE;QACb,aAAa,GAAG,uBAAuB,EAAE,CAAA;IAC3C,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,GAAG,EAAE;QACZ,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,CAAA;IAC1B,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,MAAM,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAC3F,eAAe,CAChB,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;YACzD,IAAI,CAAC;gBACH,MAAM,aAAa,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,EAAE,aAAa,CAAC,CAAA;gBACjF,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAA;YAC5C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,eAAe,CAAC,CAAA;gBAC7C,MAAM,CAAE,KAAyB,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAA;gBAC1E,MAAM,CAAE,KAAyB,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAA;YACtE,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YACxD,IAAI,CAAC;gBACH,MAAM,aAAa,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;gBACnE,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAA;YAC5C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,eAAe,CAAC,CAAA;gBAC7C,MAAM,CAAE,KAAyB,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,oCAAoC,CAAC,CAAA;YAC5F,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YACxD,IAAI,CAAC;gBACH,MAAM,aAAa,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,aAAa,CAAC,CAAA;gBACpE,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAA;YAC5C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,eAAe,CAAC,CAAA;gBAC7C,MAAM,CAAE,KAAyB,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,oCAAoC,CAAC,CAAA;YAC5F,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;YAC9C,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC;gBACE,KAAK,EAAE,QAAQ;gBACf,SAAS,EAAE,IAAI;aAChB,EACD,aAAa,CACd,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;YACpC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC5C,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;YAC7C,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC;gBACE,KAAK,EAAE,QAAQ;gBACf,QAAQ,EAAE,EAAE;aACb,EACD,aAAa,CACd,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;YACpC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAC9C,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;QAC7C,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;YAC7D,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC;gBACE,QAAQ,EAAE,SAAS;aACpB,EACD,aAAa,CACd,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;YACpC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAC7B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACjD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;YAC/D,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC;gBACE,UAAU,EAAE,UAAU;aACvB,EACD,aAAa,CACd,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;YACpC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAC7B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACnD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;YAC9D,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC;gBACE,SAAS,EAAE,EAAE;aACd,EACD,aAAa,CACd,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;YACpC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAC/B,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;YAC9D,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC;gBACE,SAAS,EAAE,IAAI;aAChB,EACD,aAAa,CACd,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;YACpC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAC7B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC5C,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;YAC7D,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC;gBACE,QAAQ,EAAE,EAAE;aACb,EACD,aAAa,CACd,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;YACpC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAC7B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAC9C,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;YACpE,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC;gBACE,QAAQ,EAAE,SAAS;gBACnB,UAAU,EAAE,WAAW;gBACvB,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,IAAI;aAChB,EACD,aAAa,CACd,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;YACpC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAC7B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAC/C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAClD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC5C,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;QAC1C,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;YAClD,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC;gBACE,KAAK,EAAE,MAAM;gBACb,QAAQ,EAAE,SAAS;gBACnB,UAAU,EAAE,WAAW;gBACvB,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,IAAI;gBACf,QAAQ,EAAE,EAAE;aACb,EACD,aAAa,CACd,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;YACpC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAC/C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAClD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC1C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAC9C,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF;;;GAGG;AACH,QAAQ,CAAC,2CAA2C,EAAE,GAAG,EAAE;IACzD,MAAM,SAAS,GAAsB;QACnC,EAAE,EAAE,sCAAsC;QAC1C,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,gCAAgC;QAC7C,MAAM,EAAE,YAAY;QACpB,QAAQ,EAAE,aAAa;QACvB,SAAS,EAAE,UAAU;QACrB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,UAAU;KACnB,CAAA;IAED,MAAM,YAAY,GAAG,CAAC,OAA4B,EAAE,EAAE,CAAC,CAAC;QACtD,OAAO;QACP,KAAK,EAAE,OAAO,CAAC,MAAM;QACrB,KAAK,EAAE,aAAa;QACpB,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;KACtC,CAAC,CAAA;IAEF,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;QAC/E,MAAM,KAAK,GAAsB,EAAE,GAAG,SAAS,EAAE,WAAW,EAAE,wBAAwB,EAAE,CAAA;QACxF,MAAM,SAAS,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAE5D,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,iCAAiC,CAAC,CAAA;IAChE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,MAAM,KAAK,GAAsB,EAAE,GAAG,SAAS,EAAE,CAAA;QACjD,oEAAoE;QACpE,MAAM,SAAS,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAE5D,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,yFAAyF,EAAE,GAAG,EAAE;QACjG,MAAM,aAAa,GAAsB;YACvC,GAAG,SAAS;YACZ,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,WAAW;YACnB,WAAW,EAAE,kBAAkB;YAC/B,MAAM,EAAE,UAAU;SACnB,CAAA;QACD,MAAM,UAAU,GAAsB;YACpC,GAAG,SAAS;YACZ,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,gBAAgB;YACtB,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,OAAO;YACf,mDAAmD;SACpD,CAAA;QACD,MAAM,SAAS,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC,CAAA;QAEhF,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAA;QACxD,6DAA6D;QAC7D,mEAAmE;QACnE,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QACxC,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAA;QACvE,MAAM,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAA;QAClC,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;IAChD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF;;GAEG;AACH,QAAQ,CAAC,0CAA0C,EAAE,GAAG,EAAE;IACxD,MAAM,SAAS,GAAsB;QACnC,EAAE,EAAE,cAAc;QAClB,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,kCAAkC;QAC/C,MAAM,EAAE,YAAY;QACpB,QAAQ,EAAE,aAAa;QACvB,SAAS,EAAE,WAAW;QACtB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,UAAU;KACnB,CAAA;IAED,MAAM,YAAY,GAAG,CAAC,OAA4B,EAAE,EAAE,CAAC,CAAC;QACtD,OAAO;QACP,KAAK,EAAE,OAAO,CAAC,MAAM;QACrB,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;KACpC,CAAC,CAAA;IAEF,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,KAAK,GAAsB;YAC/B,GAAG,SAAS;YACZ,UAAU,EAAE,0CAA0C;SACvD,CAAA;QACD,MAAM,SAAS,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC5D,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,sDAAsD,CAAC,CAAA;IACrF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACtE,MAAM,KAAK,GAAsB,EAAE,GAAG,SAAS,EAAE,CAAA;QACjD,MAAM,SAAS,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC5D,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,CAAA;IAChD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF;;;GAGG;AACH,QAAQ,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAChD,IAAI,aAA0B,CAAA;IAE9B,SAAS,CAAC,GAAG,EAAE;QACb,aAAa,GAAG,uBAAuB,EAAE,CAAA;IAC3C,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,GAAG,EAAE;QACZ,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,CAAA;IAC1B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC;YACE,eAAe,EAAE,EAAE,IAAI,EAAE,CAAC,aAAa,CAAC,EAAE;YAC1C,QAAQ,EAAE,SAAS;SACpB,EACD,aAAa,CACd,CAAA;QAED,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;QACpC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;IAC1E,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC;YACE,eAAe,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE;YAC/C,QAAQ,EAAE,aAAa;SACxB,EACD,aAAa,CACd,CAAA;QAED,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;QACpC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;IAC/E,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;QAC/E,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC;YACE,eAAe,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE;SACxD,EACD,aAAa,CACd,CAAA;QAED,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;QACpC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAC7B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IACvF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8EAA8E,EAAE,GAAG,EAAE;QACtF,oDAAoD;QACpD,mFAAmF;QACnF,+EAA+E;QAC/E,MAAM,YAAY,GAAG,CAAC,OAA4B,EAAE,EAAE,CAAC,CAAC;YACtD,OAAO;YACP,KAAK,EAAE,OAAO,CAAC,MAAM;YACrB,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;SACpC,CAAC,CAAA;QAEF,MAAM,aAAa,GAAsB;YACvC,EAAE,EAAE,eAAe;YACnB,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,sCAAsC;YACnD,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,aAAa;YACvB,SAAS,EAAE,WAAW;YACtB,KAAK,EAAE,EAAE;SACV,CAAA;QACD,MAAM,eAAe,GAAsB;YACzC,EAAE,EAAE,eAAe;YACnB,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,0BAA0B;YACvC,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,aAAa;YACvB,SAAS,EAAE,WAAW;YACtB,KAAK,EAAE,EAAE;YACT,aAAa,EAAE,CAAC,aAAa,EAAE,QAAQ,CAAC;SACzC,CAAA;QACD,MAAM,YAAY,GAAsB;YACtC,EAAE,EAAE,eAAe;YACnB,IAAI,EAAE,mBAAmB;YACzB,WAAW,EAAE,6BAA6B;YAC1C,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,aAAa;YACvB,SAAS,EAAE,WAAW;YACtB,KAAK,EAAE,EAAE;YACT,aAAa,EAAE,CAAC,QAAQ,CAAC;SAC1B,CAAA;QAED,oFAAoF;QACpF,MAAM,eAAe,GAAG,YAAY,CAAC,CAAC,aAAa,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC,CAAA;QACpF,yFAAyF;QACzF,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QAE/C,gFAAgF;QAChF,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,aAAa,EAAE,CAAA;QACnD,yDAAyD;QACzD,MAAM,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAA;QAC9D,iFAAiF;QACjF,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,CAAA;IACjE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"project-detector.d.ts","sourceRoot":"","sources":["../../../src/context/project-detector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAKH;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAWvE;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,iEAAiE;IACjE,SAAS,EAAE,OAAO,CAAA;IAClB,wEAAwE;IACxE,SAAS,EAAE,OAAO,CAAA;IAClB,0CAA0C;IAC1C,SAAS,EAAE,OAAO,CAAA;IAClB,oDAAoD;IACpD,aAAa,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,IAAI,CAAA;IACjD,wDAAwD;IACxD,YAAY,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAA;IACrD,wEAAwE;IACxE,gBAAgB,EAAE,OAAO,CAAA;IACzB,gCAAgC;IAChC,QAAQ,EAAE,YAAY,GAAG,YAAY,GAAG,QAAQ,GAAG,IAAI,CAAA;CACxD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,GAAE,MAAsB,EACnC,cAAc,CAAC,EAAE,MAAM,GACtB,cAAc,CAchB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAMlD;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAelD;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAmBlD;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,IAAI,CAsBpF;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,IAAI,CAmDxF;AAmBD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAiBzD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,YAAY,GAAG,QAAQ,GAAG,IAAI,CAa1F;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,EAAE,CA2CpE"}
1
+ {"version":3,"file":"project-detector.d.ts","sourceRoot":"","sources":["../../../src/context/project-detector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAKH;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAWvE;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,iEAAiE;IACjE,SAAS,EAAE,OAAO,CAAA;IAClB,wEAAwE;IACxE,SAAS,EAAE,OAAO,CAAA;IAClB,0CAA0C;IAC1C,SAAS,EAAE,OAAO,CAAA;IAClB,oDAAoD;IACpD,aAAa,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,IAAI,CAAA;IACjD,wDAAwD;IACxD,YAAY,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAA;IACrD,wEAAwE;IACxE,gBAAgB,EAAE,OAAO,CAAA;IACzB,gCAAgC;IAChC,QAAQ,EAAE,YAAY,GAAG,YAAY,GAAG,QAAQ,GAAG,IAAI,CAAA;CACxD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,GAAE,MAAsB,EACnC,cAAc,CAAC,EAAE,MAAM,GACtB,cAAc,CAchB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAMlD;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAelD;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAmBlD;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,IAAI,CAsBpF;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,IAAI,CAmDxF;AAoBD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAiBzD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,YAAY,GAAG,QAAQ,GAAG,IAAI,CAa1F;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,EAAE,CA2CpE"}
@@ -212,6 +212,7 @@ export function detectApiFramework(path) {
212
212
  * Known native Node.js modules that require compilation
213
213
  */
214
214
  const NATIVE_MODULES = [
215
+ // Intentional: detects better-sqlite3 in user's project, not Skillsmith's own dependency
215
216
  'better-sqlite3',
216
217
  'sharp',
217
218
  'canvas',
@@ -1 +1 @@
1
- {"version":3,"file":"project-detector.js","sourceRoot":"","sources":["../../../src/context/project-detector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project-detector.js","sourceRoot":"","sources":["../../../src/context/project-detector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAC7C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AAEhD;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,SAAiB,EAAE,OAAe;IAC7D,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACrC,MAAM,YAAY,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IAE7F,0DAA0D;IAC1D,6EAA6E;IAC7E,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,YAAY,GAAG,GAAG,CAAC,IAAI,YAAY,KAAK,YAAY,EAAE,CAAC;QAClF,MAAM,IAAI,KAAK,CAAC,oCAAoC,SAAS,EAAE,CAAC,CAAA;IAClE,CAAC;IAED,OAAO,YAAY,CAAA;AACrB,CAAC;AAsBD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAClC,cAAsB,OAAO,CAAC,GAAG,EAAE,EACnC,cAAuB;IAEvB,6CAA6C;IAC7C,MAAM,OAAO,GAAG,cAAc,IAAI,WAAW,CAAA;IAC7C,MAAM,aAAa,GAAG,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;IAExD,OAAO;QACL,SAAS,EAAE,YAAY,CAAC,aAAa,CAAC;QACtC,SAAS,EAAE,YAAY,CAAC,aAAa,CAAC;QACtC,SAAS,EAAE,YAAY,CAAC,aAAa,CAAC;QACtC,aAAa,EAAE,mBAAmB,CAAC,aAAa,CAAC;QACjD,YAAY,EAAE,kBAAkB,CAAC,aAAa,CAAC;QAC/C,gBAAgB,EAAE,mBAAmB,CAAC,aAAa,CAAC;QACpD,QAAQ,EAAE,cAAc,CAAC,aAAa,CAAC;KACxC,CAAA;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,CACL,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QACpC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;QAC5C,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC,CAC9C,CAAA;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC9C,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,KAAK,CAAA;IAExC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QAChD,OAAO,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;IACvC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CACV,oEAAoE,EACpE,SAAS,EACT,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,CAAA;QACD,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC9C,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,KAAK,CAAA;IAExC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QAChD,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACvC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAA;YAC/C,IAAI,CAAC,KAAK;gBAAE,OAAO,KAAK,CAAA;YACxB,OAAO,qCAAqC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;QACpE,CAAC,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CACV,oEAAoE,EACpE,SAAS,EACT,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,CAAA;QACD,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;IAC1C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAA;IAErC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;QACtD,MAAM,IAAI,GAAG,EAAE,GAAG,GAAG,CAAC,YAAY,EAAE,GAAG,GAAG,CAAC,eAAe,EAAE,CAAA;QAE5D,0DAA0D;QAC1D,IAAI,IAAI,CAAC,QAAQ,CAAC;YAAE,OAAO,QAAQ,CAAA;QACnC,IAAI,IAAI,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAA;QAC/B,IAAI,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,OAAO,CAAA;IACnC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CACV,+EAA+E,EAC/E,OAAO,EACP,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,CAAA;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,iCAAiC;IACjC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;IAC1C,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;YACtD,MAAM,IAAI,GAAG,EAAE,GAAG,GAAG,CAAC,YAAY,EAAE,GAAG,GAAG,CAAC,eAAe,EAAE,CAAA;YAE5D,iEAAiE;YACjE,IAAI,IAAI,CAAC,MAAM,CAAC;gBAAE,OAAO,QAAQ,CAAA;YACjC,IAAI,IAAI,CAAC,SAAS,CAAC;gBAAE,OAAO,SAAS,CAAA;QACvC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CACV,8EAA8E,EAC9E,OAAO,EACP,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,CAAA;QACH,CAAC;IACH,CAAC;IAED,6BAA6B;IAC7B,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAA;IACvD,IAAI,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAA;YACvD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAAE,OAAO,SAAS,CAAA;QACjE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CACV,qDAAqD,EACrD,gBAAgB,EAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,CAAA;QACH,CAAC;IACH,CAAC;IAED,uDAAuD;IACvD,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAA;IAClD,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;YACpD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAAE,OAAO,SAAS,CAAA;QACjE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CACV,mDAAmD,EACnD,aAAa,EACb,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,CAAA;QACH,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;GAEG;AACH,MAAM,cAAc,GAAG;IACrB,yFAAyF;IACzF,gBAAgB;IAChB,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,kBAAkB;IAClB,UAAU;IACV,WAAW;IACX,SAAS;IACT,UAAU;IACV,YAAY;IACZ,gBAAgB;CACjB,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;IAC1C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAA;IAEtC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;QACtD,MAAM,IAAI,GAAG,EAAE,GAAG,GAAG,CAAC,YAAY,EAAE,GAAG,GAAG,CAAC,eAAe,EAAE,CAAA;QAE5D,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,CAAA;IAClD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CACV,8EAA8E,EAC9E,OAAO,EACP,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,CAAA;QACD,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,4BAA4B;IAC5B,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QAAE,OAAO,YAAY,CAAA;IAEhE,gDAAgD;IAChD,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAAE,OAAO,YAAY,CAAA;IAE/D,SAAS;IACT,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC;QAC3F,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAuB;IACxD,MAAM,WAAW,GAAa,EAAE,CAAA;IAEhC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC5B,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QAClC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAC/B,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC5B,CAAC;IAED,IAAI,OAAO,CAAC,aAAa,KAAK,MAAM,EAAE,CAAC;QACrC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IACjC,CAAC;SAAM,IAAI,OAAO,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;QAC9C,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;IACnC,CAAC;SAAM,IAAI,OAAO,CAAC,aAAa,KAAK,OAAO,EAAE,CAAC;QAC7C,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;IAClC,CAAC;IAED,IAAI,OAAO,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;QACtC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC5B,CAAC;SAAM,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QAC9C,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC7B,CAAC;SAAM,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QAC9C,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC7B,CAAC;IAED,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC7B,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;IACpC,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QACtC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAChC,CAAC;SAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACzC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC5B,CAAC;IAED,OAAO,WAAW,CAAA;AACpB,CAAC"}