@visualprd/mcp-server 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/README.md +396 -0
  2. package/dist/cli.d.ts +9 -0
  3. package/dist/cli.d.ts.map +1 -0
  4. package/dist/cli.js +27 -0
  5. package/dist/cli.js.map +1 -0
  6. package/dist/index.d.ts +20 -0
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/index.js +243 -0
  9. package/dist/index.js.map +1 -0
  10. package/dist/intelligence/context-optimizer.d.ts +93 -0
  11. package/dist/intelligence/context-optimizer.d.ts.map +1 -0
  12. package/dist/intelligence/context-optimizer.js +481 -0
  13. package/dist/intelligence/context-optimizer.js.map +1 -0
  14. package/dist/intelligence/error-analyzer.d.ts +49 -0
  15. package/dist/intelligence/error-analyzer.d.ts.map +1 -0
  16. package/dist/intelligence/error-analyzer.js +765 -0
  17. package/dist/intelligence/error-analyzer.js.map +1 -0
  18. package/dist/intelligence/gap-filler.d.ts +56 -0
  19. package/dist/intelligence/gap-filler.d.ts.map +1 -0
  20. package/dist/intelligence/gap-filler.js +410 -0
  21. package/dist/intelligence/gap-filler.js.map +1 -0
  22. package/dist/intelligence/guidance-generator.d.ts +43 -0
  23. package/dist/intelligence/guidance-generator.d.ts.map +1 -0
  24. package/dist/intelligence/guidance-generator.js +314 -0
  25. package/dist/intelligence/guidance-generator.js.map +1 -0
  26. package/dist/intelligence/index.d.ts +132 -0
  27. package/dist/intelligence/index.d.ts.map +1 -0
  28. package/dist/intelligence/index.js +683 -0
  29. package/dist/intelligence/index.js.map +1 -0
  30. package/dist/server-http.d.ts +9 -0
  31. package/dist/server-http.d.ts.map +1 -0
  32. package/dist/server-http.js +141 -0
  33. package/dist/server-http.js.map +1 -0
  34. package/dist/services/api-key-service.d.ts +68 -0
  35. package/dist/services/api-key-service.d.ts.map +1 -0
  36. package/dist/services/api-key-service.js +298 -0
  37. package/dist/services/api-key-service.js.map +1 -0
  38. package/dist/services/llm-client.d.ts +66 -0
  39. package/dist/services/llm-client.d.ts.map +1 -0
  40. package/dist/services/llm-client.js +141 -0
  41. package/dist/services/llm-client.js.map +1 -0
  42. package/dist/services/model-registry.d.ts +135 -0
  43. package/dist/services/model-registry.d.ts.map +1 -0
  44. package/dist/services/model-registry.js +276 -0
  45. package/dist/services/model-registry.js.map +1 -0
  46. package/dist/services/visualprd-client.d.ts +191 -0
  47. package/dist/services/visualprd-client.d.ts.map +1 -0
  48. package/dist/services/visualprd-client.js +805 -0
  49. package/dist/services/visualprd-client.js.map +1 -0
  50. package/dist/tools/index.d.ts +803 -0
  51. package/dist/tools/index.d.ts.map +1 -0
  52. package/dist/tools/index.js +570 -0
  53. package/dist/tools/index.js.map +1 -0
  54. package/dist/types/index.d.ts +497 -0
  55. package/dist/types/index.d.ts.map +1 -0
  56. package/dist/types/index.js +8 -0
  57. package/dist/types/index.js.map +1 -0
  58. package/package.json +48 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-analyzer.js","sourceRoot":"","sources":["../../src/intelligence/error-analyzer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Gap Filler
3
+ *
4
+ * Detects missing information, incomplete flows, and documentation gaps
5
+ * in the PRD, then suggests additions or injected build steps.
6
+ */
7
+ import { BuildPrompt, ProjectData, GapAnalysis } from '../types/index.js';
8
+ export interface GapReport {
9
+ gaps: GapAnalysis[];
10
+ suggestions: GapSuggestion[];
11
+ completenessScore: number;
12
+ }
13
+ export interface GapSuggestion {
14
+ type: 'add_step' | 'update_schema' | 'add_endpoint' | 'add_page' | 'documentation';
15
+ title: string;
16
+ description: string;
17
+ priority: 'low' | 'medium' | 'high';
18
+ suggestedContent?: any;
19
+ }
20
+ export declare class GapFiller {
21
+ private readonly flowPatterns;
22
+ private readonly commonSchemaFields;
23
+ /**
24
+ * Analyze project for gaps and missing components
25
+ */
26
+ analyzeGaps(prompt: BuildPrompt, projectData: ProjectData): Promise<GapReport>;
27
+ /**
28
+ * Detect missing flows based on what the prompt is implementing
29
+ */
30
+ private detectMissingFlows;
31
+ /**
32
+ * Check if schemas have all expected fields
33
+ */
34
+ private checkSchemaCompleteness;
35
+ /**
36
+ * Check for missing CRUD endpoints for schemas
37
+ */
38
+ private checkEndpointCompleteness;
39
+ /**
40
+ * Check if pages have corresponding API endpoints
41
+ */
42
+ private checkPageEndpointAlignment;
43
+ /**
44
+ * Check for error handling pages
45
+ */
46
+ private checkErrorPages;
47
+ /**
48
+ * Calculate overall completeness score
49
+ */
50
+ private calculateCompletenessScore;
51
+ private normalize;
52
+ private capitalize;
53
+ private identifySchemaType;
54
+ private inferFieldType;
55
+ }
56
+ //# sourceMappingURL=gap-filler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gap-filler.d.ts","sourceRoot":"","sources":["../../src/intelligence/gap-filler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,WAAW,EACX,WAAW,EACX,WAAW,EAIZ,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,WAAW,EAAE,CAAC;IACpB,WAAW,EAAE,aAAa,EAAE,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,UAAU,GAAG,eAAe,GAAG,cAAc,GAAG,UAAU,GAAG,eAAe,CAAC;IACnF,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACpC,gBAAgB,CAAC,EAAE,GAAG,CAAC;CACxB;AAUD,qBAAa,SAAS;IAEpB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAkD3B;IAGF,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAMjC;IAEF;;OAEG;IACG,WAAW,CACf,MAAM,EAAE,WAAW,EACnB,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,SAAS,CAAC;IAuCrB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA2H1B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA8D/B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAqDjC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IA8ClC;;OAEG;IACH,OAAO,CAAC,eAAe;IA4BvB;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAmClC,OAAO,CAAC,SAAS;IAOjB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,cAAc;CAevB"}
@@ -0,0 +1,410 @@
1
+ "use strict";
2
+ /**
3
+ * Gap Filler
4
+ *
5
+ * Detects missing information, incomplete flows, and documentation gaps
6
+ * in the PRD, then suggests additions or injected build steps.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.GapFiller = void 0;
10
+ class GapFiller {
11
+ // Common application flow patterns
12
+ flowPatterns = [
13
+ {
14
+ name: 'Authentication',
15
+ requiredPages: ['login', 'signup', 'register', 'forgot', 'reset'],
16
+ requiredSchemas: ['user', 'session'],
17
+ requiredEndpoints: ['login', 'signup', 'logout', 'refresh'],
18
+ keywords: ['auth', 'login', 'signup', 'authentication'],
19
+ },
20
+ {
21
+ name: 'User Profile',
22
+ requiredPages: ['profile', 'settings', 'account'],
23
+ requiredSchemas: ['user'],
24
+ requiredEndpoints: ['getprofile', 'updateprofile', 'uploadavatar'],
25
+ keywords: ['profile', 'account', 'settings', 'user'],
26
+ },
27
+ {
28
+ name: 'E-commerce',
29
+ requiredPages: ['products', 'cart', 'checkout', 'orders'],
30
+ requiredSchemas: ['product', 'cart', 'order', 'payment'],
31
+ requiredEndpoints: ['getproducts', 'addtocart', 'checkout', 'createorder'],
32
+ keywords: ['product', 'cart', 'checkout', 'order', 'payment', 'shop'],
33
+ },
34
+ {
35
+ name: 'Content Management',
36
+ requiredPages: ['posts', 'create', 'edit', 'detail'],
37
+ requiredSchemas: ['post', 'comment', 'category'],
38
+ requiredEndpoints: ['getposts', 'createpost', 'updatepost', 'deletepost'],
39
+ keywords: ['post', 'blog', 'article', 'content', 'cms'],
40
+ },
41
+ {
42
+ name: 'Dashboard',
43
+ requiredPages: ['dashboard', 'analytics', 'reports'],
44
+ requiredSchemas: ['analytics', 'metrics'],
45
+ requiredEndpoints: ['getanalytics', 'getmetrics'],
46
+ keywords: ['dashboard', 'analytics', 'report', 'metrics'],
47
+ },
48
+ {
49
+ name: 'Notifications',
50
+ requiredPages: ['notifications'],
51
+ requiredSchemas: ['notification'],
52
+ requiredEndpoints: ['getnotifications', 'markread'],
53
+ keywords: ['notification', 'alert', 'message'],
54
+ },
55
+ {
56
+ name: 'Search',
57
+ requiredPages: ['search', 'results'],
58
+ requiredSchemas: [],
59
+ requiredEndpoints: ['search'],
60
+ keywords: ['search', 'filter', 'query'],
61
+ },
62
+ ];
63
+ // Common schema fields that should be present
64
+ commonSchemaFields = {
65
+ user: ['id', 'email', 'createdAt', 'updatedAt'],
66
+ session: ['userId', 'token', 'expiresAt', 'createdAt'],
67
+ post: ['id', 'title', 'content', 'authorId', 'createdAt', 'updatedAt'],
68
+ order: ['id', 'userId', 'status', 'total', 'createdAt'],
69
+ product: ['id', 'name', 'price', 'description', 'createdAt'],
70
+ };
71
+ /**
72
+ * Analyze project for gaps and missing components
73
+ */
74
+ async analyzeGaps(prompt, projectData) {
75
+ const gaps = [];
76
+ const suggestions = [];
77
+ // 1. Detect missing flows based on prompt context
78
+ const flowGaps = this.detectMissingFlows(prompt, projectData);
79
+ gaps.push(...flowGaps.gaps);
80
+ suggestions.push(...flowGaps.suggestions);
81
+ // 2. Check schema completeness
82
+ const schemaGaps = this.checkSchemaCompleteness(prompt, projectData);
83
+ gaps.push(...schemaGaps.gaps);
84
+ suggestions.push(...schemaGaps.suggestions);
85
+ // 3. Check for missing CRUD endpoints
86
+ const endpointGaps = this.checkEndpointCompleteness(projectData);
87
+ gaps.push(...endpointGaps.gaps);
88
+ suggestions.push(...endpointGaps.suggestions);
89
+ // 4. Check page-endpoint alignment
90
+ const alignmentGaps = this.checkPageEndpointAlignment(projectData);
91
+ gaps.push(...alignmentGaps.gaps);
92
+ suggestions.push(...alignmentGaps.suggestions);
93
+ // 5. Check for missing error handling pages
94
+ const errorPageGaps = this.checkErrorPages(projectData);
95
+ gaps.push(...errorPageGaps.gaps);
96
+ suggestions.push(...errorPageGaps.suggestions);
97
+ // Calculate completeness score
98
+ const completenessScore = this.calculateCompletenessScore(gaps, projectData);
99
+ return {
100
+ gaps,
101
+ suggestions,
102
+ completenessScore,
103
+ };
104
+ }
105
+ /**
106
+ * Detect missing flows based on what the prompt is implementing
107
+ */
108
+ detectMissingFlows(prompt, projectData) {
109
+ const gaps = [];
110
+ const suggestions = [];
111
+ const promptText = `${prompt.title} ${prompt.instruction || ''}`.toLowerCase();
112
+ // Check each flow pattern
113
+ for (const pattern of this.flowPatterns) {
114
+ // Does this prompt relate to this flow?
115
+ const isRelated = pattern.keywords.some((kw) => promptText.includes(kw));
116
+ if (!isRelated)
117
+ continue;
118
+ // Check for missing pages
119
+ const existingPages = projectData.pages.map((p) => this.normalize(p.pageName));
120
+ const missingPages = pattern.requiredPages.filter((required) => !existingPages.some((existing) => existing.includes(required) || required.includes(existing)));
121
+ if (missingPages.length > 0) {
122
+ gaps.push({
123
+ type: 'missing_page',
124
+ description: `${pattern.name} flow is missing pages: ${missingPages.join(', ')}`,
125
+ severity: 'medium',
126
+ suggestion: `Add missing ${pattern.name.toLowerCase()} pages`,
127
+ shouldInjectStep: missingPages.length <= 2,
128
+ suggestedStep: missingPages.length === 1
129
+ ? {
130
+ title: `Add ${this.capitalize(missingPages[0])} Page`,
131
+ category: 'pages',
132
+ instruction: `Create the ${missingPages[0]} page to complete the ${pattern.name} flow.`,
133
+ }
134
+ : undefined,
135
+ });
136
+ suggestions.push({
137
+ type: 'add_page',
138
+ title: `Add missing ${pattern.name} pages`,
139
+ description: `Consider adding: ${missingPages.join(', ')}`,
140
+ priority: 'medium',
141
+ });
142
+ }
143
+ // Check for missing endpoints
144
+ const existingEndpoints = projectData.endpoints.map((e) => this.normalize(e.name));
145
+ const missingEndpoints = pattern.requiredEndpoints.filter((required) => !existingEndpoints.some((existing) => existing.includes(required) || required.includes(existing)));
146
+ if (missingEndpoints.length > 0) {
147
+ gaps.push({
148
+ type: 'missing_endpoint',
149
+ description: `${pattern.name} flow is missing endpoints: ${missingEndpoints.join(', ')}`,
150
+ severity: 'medium',
151
+ suggestion: `Add missing ${pattern.name.toLowerCase()} API endpoints`,
152
+ shouldInjectStep: false,
153
+ });
154
+ }
155
+ }
156
+ // Special case: Auth flow detection
157
+ if (promptText.includes('auth') || promptText.includes('login')) {
158
+ // Check for password reset
159
+ const hasPasswordReset = projectData.pages.some((p) => this.normalize(p.pageName).includes('reset') ||
160
+ this.normalize(p.pageName).includes('forgot'));
161
+ if (!hasPasswordReset) {
162
+ gaps.push({
163
+ type: 'missing_flow',
164
+ description: 'Authentication flow is missing password reset functionality',
165
+ severity: 'high',
166
+ suggestion: 'Add ForgotPasswordPage and ResetPasswordPage',
167
+ shouldInjectStep: true,
168
+ suggestedStep: {
169
+ title: 'Implement Password Reset Flow',
170
+ category: 'pages',
171
+ instruction: `Create the password reset flow:
172
+ 1. ForgotPasswordPage - where user enters email
173
+ 2. ResetPasswordPage - where user sets new password
174
+ 3. Integrate with Firebase Auth sendPasswordResetEmail
175
+ 4. Handle deep link for password reset confirmation`,
176
+ },
177
+ });
178
+ }
179
+ // Check for email verification
180
+ const hasEmailVerification = projectData.pages.some((p) => this.normalize(p.pageName).includes('verify') ||
181
+ this.normalize(p.pageName).includes('confirmation'));
182
+ if (!hasEmailVerification) {
183
+ gaps.push({
184
+ type: 'missing_flow',
185
+ description: 'Authentication flow may need email verification',
186
+ severity: 'low',
187
+ suggestion: 'Consider adding email verification flow',
188
+ shouldInjectStep: false,
189
+ });
190
+ }
191
+ }
192
+ return { gaps, suggestions };
193
+ }
194
+ /**
195
+ * Check if schemas have all expected fields
196
+ */
197
+ checkSchemaCompleteness(prompt, projectData) {
198
+ const gaps = [];
199
+ const suggestions = [];
200
+ for (const schema of projectData.schemas) {
201
+ const schemaType = this.identifySchemaType(schema);
202
+ const expectedFields = this.commonSchemaFields[schemaType];
203
+ if (!expectedFields)
204
+ continue;
205
+ const existingFields = schema.fields.map((f) => this.normalize(f.fieldName));
206
+ const missingFields = expectedFields.filter((expected) => !existingFields.some((existing) => existing.includes(expected)));
207
+ if (missingFields.length > 0) {
208
+ gaps.push({
209
+ type: 'incomplete_schema',
210
+ description: `Schema "${schema.collectionName}" may be missing fields: ${missingFields.join(', ')}`,
211
+ severity: 'low',
212
+ suggestion: `Consider adding standard fields to ${schema.collectionName}`,
213
+ shouldInjectStep: false,
214
+ });
215
+ suggestions.push({
216
+ type: 'update_schema',
217
+ title: `Add missing fields to ${schema.collectionName}`,
218
+ description: `Consider adding: ${missingFields.join(', ')}`,
219
+ priority: 'low',
220
+ suggestedContent: {
221
+ fields: missingFields.map((f) => ({
222
+ fieldName: f,
223
+ dataType: this.inferFieldType(f),
224
+ required: ['id', 'createdAt'].includes(f),
225
+ })),
226
+ },
227
+ });
228
+ }
229
+ // Check for timestamps
230
+ const hasCreatedAt = existingFields.some((f) => f.includes('createdat'));
231
+ const hasUpdatedAt = existingFields.some((f) => f.includes('updatedat'));
232
+ if (!hasCreatedAt || !hasUpdatedAt) {
233
+ suggestions.push({
234
+ type: 'update_schema',
235
+ title: `Add timestamps to ${schema.collectionName}`,
236
+ description: 'Standard practice to track document creation and modification',
237
+ priority: 'low',
238
+ });
239
+ }
240
+ }
241
+ return { gaps, suggestions };
242
+ }
243
+ /**
244
+ * Check for missing CRUD endpoints for schemas
245
+ */
246
+ checkEndpointCompleteness(projectData) {
247
+ const gaps = [];
248
+ const suggestions = [];
249
+ // For each schema, check if we have basic CRUD endpoints
250
+ for (const schema of projectData.schemas) {
251
+ const schemaName = this.normalize(schema.collectionName);
252
+ const existingEndpoints = projectData.endpoints.map((e) => ({
253
+ name: this.normalize(e.name),
254
+ method: e.method,
255
+ path: this.normalize(e.path || ''),
256
+ }));
257
+ // Expected CRUD operations
258
+ const crudOps = [
259
+ { op: 'get', method: 'GET', keywords: ['get', 'list', 'fetch'] },
260
+ { op: 'create', method: 'POST', keywords: ['create', 'add', 'new'] },
261
+ { op: 'update', method: 'PUT', keywords: ['update', 'edit', 'modify'] },
262
+ { op: 'delete', method: 'DELETE', keywords: ['delete', 'remove'] },
263
+ ];
264
+ const missingOps = [];
265
+ for (const crud of crudOps) {
266
+ const hasOp = existingEndpoints.some((e) => (e.name.includes(schemaName) || e.path.includes(schemaName)) &&
267
+ (e.method === crud.method ||
268
+ crud.keywords.some((kw) => e.name.includes(kw))));
269
+ if (!hasOp) {
270
+ missingOps.push(crud.op);
271
+ }
272
+ }
273
+ if (missingOps.length > 0 && missingOps.length < 4) {
274
+ // Don't flag if ALL are missing (might be intentional)
275
+ gaps.push({
276
+ type: 'missing_endpoint',
277
+ description: `Schema "${schema.collectionName}" may need CRUD endpoints: ${missingOps.join(', ')}`,
278
+ severity: 'low',
279
+ suggestion: `Add missing CRUD endpoints for ${schema.collectionName}`,
280
+ shouldInjectStep: false,
281
+ });
282
+ }
283
+ }
284
+ return { gaps, suggestions };
285
+ }
286
+ /**
287
+ * Check if pages have corresponding API endpoints
288
+ */
289
+ checkPageEndpointAlignment(projectData) {
290
+ const gaps = [];
291
+ const suggestions = [];
292
+ // Pages that typically need data-fetching endpoints
293
+ const dataPages = projectData.pages.filter((p) => {
294
+ const name = this.normalize(p.pageName);
295
+ return (name.includes('list') ||
296
+ name.includes('detail') ||
297
+ name.includes('dashboard') ||
298
+ name.includes('profile') ||
299
+ name.includes('settings'));
300
+ });
301
+ for (const page of dataPages) {
302
+ const pageName = this.normalize(page.pageName);
303
+ // Check if there's a corresponding endpoint
304
+ const hasEndpoint = projectData.endpoints.some((e) => {
305
+ const endpointName = this.normalize(e.name);
306
+ const endpointPath = this.normalize(e.path || '');
307
+ // Look for related endpoint
308
+ return (endpointName.includes(pageName.replace('page', '')) ||
309
+ endpointPath.includes(pageName.replace('page', '')));
310
+ });
311
+ if (!hasEndpoint) {
312
+ suggestions.push({
313
+ type: 'add_endpoint',
314
+ title: `Consider adding endpoint for ${page.pageName}`,
315
+ description: `The ${page.pageName} appears to need data but no matching endpoint found`,
316
+ priority: 'low',
317
+ });
318
+ }
319
+ }
320
+ return { gaps, suggestions };
321
+ }
322
+ /**
323
+ * Check for error handling pages
324
+ */
325
+ checkErrorPages(projectData) {
326
+ const gaps = [];
327
+ const suggestions = [];
328
+ const errorPages = ['404', 'notfound', 'error', '500'];
329
+ const existingPages = projectData.pages.map((p) => this.normalize(p.pageName));
330
+ const hasErrorPage = errorPages.some((ep) => existingPages.some((p) => p.includes(ep)));
331
+ if (!hasErrorPage && projectData.pages.length > 5) {
332
+ // Only suggest if project is substantial
333
+ suggestions.push({
334
+ type: 'add_page',
335
+ title: 'Add error handling pages',
336
+ description: 'Consider adding 404 Not Found and Error pages for better UX',
337
+ priority: 'low',
338
+ });
339
+ }
340
+ return { gaps, suggestions };
341
+ }
342
+ /**
343
+ * Calculate overall completeness score
344
+ */
345
+ calculateCompletenessScore(gaps, projectData) {
346
+ // Base score
347
+ let score = 100;
348
+ // Deduct for gaps based on severity
349
+ for (const gap of gaps) {
350
+ switch (gap.severity) {
351
+ case 'high':
352
+ score -= 15;
353
+ break;
354
+ case 'medium':
355
+ score -= 8;
356
+ break;
357
+ case 'low':
358
+ score -= 3;
359
+ break;
360
+ }
361
+ }
362
+ // Bonus for having certain things
363
+ if (projectData.designSystem)
364
+ score += 5;
365
+ if (projectData.techStack.length >= 3)
366
+ score += 5;
367
+ if (projectData.buildPrompts.length >= 10)
368
+ score += 5;
369
+ // Ensure score is within bounds
370
+ return Math.max(0, Math.min(100, score));
371
+ }
372
+ // ============================================================================
373
+ // UTILITY METHODS
374
+ // ============================================================================
375
+ normalize(str) {
376
+ return (str || '')
377
+ .toLowerCase()
378
+ .replace(/[^a-z0-9]/g, '')
379
+ .trim();
380
+ }
381
+ capitalize(str) {
382
+ return str.charAt(0).toUpperCase() + str.slice(1);
383
+ }
384
+ identifySchemaType(schema) {
385
+ const name = this.normalize(schema.collectionName);
386
+ for (const [type] of Object.entries(this.commonSchemaFields)) {
387
+ if (name.includes(type))
388
+ return type;
389
+ }
390
+ return 'unknown';
391
+ }
392
+ inferFieldType(fieldName) {
393
+ const lower = fieldName.toLowerCase();
394
+ if (lower.includes('id'))
395
+ return 'string';
396
+ if (lower.includes('at') || lower.includes('date') || lower.includes('time'))
397
+ return 'timestamp';
398
+ if (lower.includes('count') || lower.includes('num') || lower.includes('amount'))
399
+ return 'number';
400
+ if (lower.includes('is') || lower.includes('has') || lower.includes('enabled'))
401
+ return 'boolean';
402
+ if (lower.includes('email'))
403
+ return 'string';
404
+ if (lower.includes('url') || lower.includes('link'))
405
+ return 'string';
406
+ return 'string';
407
+ }
408
+ }
409
+ exports.GapFiller = GapFiller;
410
+ //# sourceMappingURL=gap-filler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gap-filler.js","sourceRoot":"","sources":["../../src/intelligence/gap-filler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Guidance Generator
3
+ *
4
+ * Generates contextual guidance, technical considerations,
5
+ * and potential issues for each build step.
6
+ */
7
+ import { BuildPrompt, ProjectData, ContextualGuidance, PageEntity, SchemaEntity, EndpointEntity, TechStackEntity } from '../types/index.js';
8
+ interface GuidanceContext {
9
+ prompt: BuildPrompt;
10
+ projectData: ProjectData;
11
+ relatedPages: PageEntity[];
12
+ relatedSchemas: SchemaEntity[];
13
+ relatedEndpoints: EndpointEntity[];
14
+ relatedTechStack: TechStackEntity[];
15
+ }
16
+ export declare class GuidanceGenerator {
17
+ /**
18
+ * Generate contextual guidance for a build prompt
19
+ */
20
+ generateGuidance(context: GuidanceContext): ContextualGuidance;
21
+ /**
22
+ * Get technical considerations based on the prompt and tech stack
23
+ */
24
+ private getTechnicalConsiderations;
25
+ /**
26
+ * Identify potential issues the developer might encounter
27
+ */
28
+ private getPotentialIssues;
29
+ /**
30
+ * Get testing criteria for the prompt
31
+ */
32
+ private getTestingCriteria;
33
+ /**
34
+ * Get related patterns from the codebase
35
+ */
36
+ private getRelatedPatterns;
37
+ /**
38
+ * Get suggested approach for the prompt
39
+ */
40
+ private getSuggestedApproach;
41
+ }
42
+ export {};
43
+ //# sourceMappingURL=guidance-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guidance-generator.d.ts","sourceRoot":"","sources":["../../src/intelligence/guidance-generator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,UAAU,EACV,YAAY,EACZ,cAAc,EACd,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAE3B,UAAU,eAAe;IACvB,MAAM,EAAE,WAAW,CAAC;IACpB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,cAAc,EAAE,YAAY,EAAE,CAAC;IAC/B,gBAAgB,EAAE,cAAc,EAAE,CAAC;IACnC,gBAAgB,EAAE,eAAe,EAAE,CAAC;CACrC;AAED,qBAAa,iBAAiB;IAC5B;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG,kBAAkB;IAY9D;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAsHlC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAiG1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA2E1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAmD1B;;OAEG;IACH,OAAO,CAAC,oBAAoB;CA2D7B"}