ft-scout 6.0.4 → 6.0.5

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 (89) hide show
  1. package/README.md +23 -22
  2. package/bin/src/commands/agent.d.ts.map +1 -1
  3. package/bin/src/commands/agent.js +76 -75
  4. package/bin/src/commands/agent.js.map +1 -1
  5. package/bin/src/commands/audit.js +1 -1
  6. package/bin/src/commands/audit.js.map +1 -1
  7. package/bin/src/commands/authCommand.js +4 -4
  8. package/bin/src/commands/authCommand.js.map +1 -1
  9. package/bin/src/commands/brief.js +4 -4
  10. package/bin/src/commands/brief.js.map +1 -1
  11. package/bin/src/commands/configCommand.d.ts.map +1 -1
  12. package/bin/src/commands/configCommand.js +7 -7
  13. package/bin/src/commands/configCommand.js.map +1 -1
  14. package/bin/src/commands/dashboard.js +4 -4
  15. package/bin/src/commands/dashboard.js.map +1 -1
  16. package/bin/src/commands/history.js +5 -5
  17. package/bin/src/commands/history.js.map +1 -1
  18. package/bin/src/commands/init.js +26 -26
  19. package/bin/src/commands/init.js.map +1 -1
  20. package/bin/src/commands/login.d.ts.map +1 -1
  21. package/bin/src/commands/login.js +21 -21
  22. package/bin/src/commands/login.js.map +1 -1
  23. package/bin/src/commands/logout.js +1 -1
  24. package/bin/src/commands/logout.js.map +1 -1
  25. package/bin/src/commands/owners.js +5 -5
  26. package/bin/src/commands/owners.js.map +1 -1
  27. package/bin/src/commands/quota.d.ts.map +1 -0
  28. package/bin/src/commands/quota.js +48 -0
  29. package/bin/src/commands/quota.js.map +1 -0
  30. package/bin/src/commands/recommend.js +1 -1
  31. package/bin/src/commands/recommend.js.map +1 -1
  32. package/bin/src/commands/risky.d.ts.map +1 -1
  33. package/bin/src/commands/risky.js +9 -9
  34. package/bin/src/commands/risky.js.map +1 -1
  35. package/bin/src/commands/setup.js +24 -24
  36. package/bin/src/commands/setup.js.map +1 -1
  37. package/bin/src/commands/signup.d.ts.map +1 -1
  38. package/bin/src/commands/signup.js +7 -7
  39. package/bin/src/commands/signup.js.map +1 -1
  40. package/bin/src/commands/undo.js +8 -8
  41. package/bin/src/commands/undo.js.map +1 -1
  42. package/bin/src/commands/web.js +8 -8
  43. package/bin/src/commands/web.js.map +1 -1
  44. package/bin/src/discovery/config.d.ts.map +1 -1
  45. package/bin/src/discovery/config.js.map +1 -1
  46. package/bin/src/discovery/display.js +1 -1
  47. package/bin/src/discovery/display.js.map +1 -1
  48. package/bin/src/discovery/messages.js.map +1 -1
  49. package/bin/src/discovery/signals.d.ts.map +1 -1
  50. package/bin/src/discovery/signals.js.map +1 -1
  51. package/bin/src/engine/agentEngine.d.ts.map +1 -1
  52. package/bin/src/engine/agentEngine.js +47 -46
  53. package/bin/src/engine/agentEngine.js.map +1 -1
  54. package/bin/src/engine/git.d.ts.map +1 -1
  55. package/bin/src/engine/git.js.map +1 -1
  56. package/bin/src/engine/llm.d.ts.map +1 -1
  57. package/bin/src/engine/llm.js +118 -73
  58. package/bin/src/engine/llm.js.map +1 -1
  59. package/bin/src/engine/verifier.d.ts.map +1 -1
  60. package/bin/src/engine/verifier.js +6 -6
  61. package/bin/src/engine/verifier.js.map +1 -1
  62. package/bin/src/engine/web.d.ts.map +1 -1
  63. package/bin/src/engine/web.js +1 -1
  64. package/bin/src/engine/web.js.map +1 -1
  65. package/bin/src/index.js +78 -68
  66. package/bin/src/index.js.map +1 -1
  67. package/bin/src/server/server.js.map +1 -1
  68. package/bin/src/utils/auth.d.ts.map +1 -1
  69. package/bin/src/utils/auth.js.map +1 -1
  70. package/bin/src/utils/branding.js +7 -7
  71. package/bin/src/utils/branding.js.map +1 -1
  72. package/bin/src/utils/config.d.ts.map +1 -1
  73. package/bin/src/utils/config.js.map +1 -1
  74. package/bin/src/utils/email.d.ts.map +1 -1
  75. package/bin/src/utils/email.js +42 -42
  76. package/bin/src/utils/email.js.map +1 -1
  77. package/bin/src/utils/firebaseAuth.d.ts.map +1 -1
  78. package/bin/src/utils/firebaseAuth.js.map +1 -1
  79. package/bin/src/utils/holoseneAuth.d.ts.map +1 -1
  80. package/bin/src/utils/holoseneAuth.js +22 -22
  81. package/bin/src/utils/holoseneAuth.js.map +1 -1
  82. package/bin/src/utils/language.d.ts.map +1 -1
  83. package/bin/src/utils/language.js.map +1 -1
  84. package/bin/src/utils/markdown.js +4 -4
  85. package/bin/src/utils/markdown.js.map +1 -1
  86. package/bin/src/utils/updateCheck.js +5 -5
  87. package/bin/src/utils/updateCheck.js.map +1 -1
  88. package/package.json +1 -1
  89. package/web/app.js +927 -927
@@ -4,15 +4,32 @@ import * as url from 'url';
4
4
  import path from 'path';
5
5
  import { getWebContext } from './web.js';
6
6
  import { getLanguageInstruction } from '../utils/language.js';
7
+ import { loadAuthConfig } from '../utils/auth.js';
7
8
  const __dirname = url.fileURLToPath(new URL('.', import.meta.url));
8
9
  // Attempt to load .env from the root of the CLI installation or current working directory
9
10
  dotenv.config({ path: path.resolve(__dirname, '../../../.env'), quiet: true });
10
11
  dotenv.config({ quiet: true });
11
12
  const groqApiKey = process.env.GROQ_API_KEY;
12
13
  const openaiApiKey = process.env.OPENAI_API_KEY;
14
+ const authConfig = loadAuthConfig();
15
+ const byokApiKey = authConfig.byokEnabled ? authConfig.customApiKey?.trim() : undefined;
16
+ const byokProvider = authConfig.customLlmProvider?.trim().toLowerCase();
17
+ const byokDefaultBaseUrls = {
18
+ openai: 'https://api.openai.com/v1',
19
+ groq: 'https://api.groq.com/openai/v1',
20
+ gemini: 'https://generativelanguage.googleapis.com/v1beta/openai',
21
+ };
22
+ const byokBaseUrl = byokApiKey
23
+ ? authConfig.customBaseUrl?.trim() || byokDefaultBaseUrls[byokProvider || '']
24
+ : undefined;
25
+ const isByokConfigured = Boolean(byokApiKey && byokBaseUrl);
13
26
  export const openai = new OpenAI({
14
- apiKey: groqApiKey || openaiApiKey || 'proxy-managed-key',
15
- baseURL: groqApiKey ? 'https://api.groq.com/openai/v1' : 'https://frontterrain.com/api',
27
+ apiKey: isByokConfigured ? byokApiKey : groqApiKey || openaiApiKey || 'proxy-managed-key',
28
+ baseURL: isByokConfigured
29
+ ? byokBaseUrl
30
+ : groqApiKey
31
+ ? 'https://api.groq.com/openai/v1'
32
+ : 'https://frontterrain.com/api',
16
33
  });
17
34
  const MODEL_FALLBACKS = [
18
35
  'openai/gpt-oss-120b',
@@ -160,7 +177,28 @@ export function sanitizeMessages(messages) {
160
177
  }
161
178
  return collapsed;
162
179
  }
180
+ const LLM_CONCURRENCY = Math.max(1, Number.parseInt(process.env.FT_LLM_CONCURRENCY || '1', 10) || 1);
181
+ let activeLlmRequests = 0;
182
+ const pendingLlmRequests = [];
183
+ async function withLlmConcurrency(fn) {
184
+ if (activeLlmRequests >= LLM_CONCURRENCY) {
185
+ await new Promise((resolve) => pendingLlmRequests.push(resolve));
186
+ }
187
+ activeLlmRequests++;
188
+ try {
189
+ return await fn();
190
+ }
191
+ finally {
192
+ activeLlmRequests--;
193
+ const next = pendingLlmRequests.shift();
194
+ if (next)
195
+ next();
196
+ }
197
+ }
163
198
  export async function callOpenAIWithRetry(fn, maxRetries = 3, initialDelayMs = 1000) {
199
+ return withLlmConcurrency(() => callOpenAIWithRetryUnqueued(fn, maxRetries, initialDelayMs));
200
+ }
201
+ async function callOpenAIWithRetryUnqueued(fn, maxRetries, initialDelayMs) {
164
202
  let lastError;
165
203
  const MODEL_REPLACEMENTS = {
166
204
  'llama3-8b-8192': 'openai/gpt-oss-120b',
@@ -189,7 +227,14 @@ export async function callOpenAIWithRetry(fn, maxRetries = 3, initialDelayMs = 1
189
227
  lastError = error;
190
228
  attempt++;
191
229
  const status = error?.status || error?.statusCode;
192
- const errorStr = String(error?.message || error?.error || error || '').toLowerCase();
230
+ const errorStr = String(error?.message || error?.error?.message || error?.error || error || '').toLowerCase();
231
+ const isHardQuota = errorStr.includes('insufficient_quota') ||
232
+ errorStr.includes('exceeded your current quota') ||
233
+ errorStr.includes('out of credits') ||
234
+ errorStr.includes('credit limit reached');
235
+ if (isHardQuota) {
236
+ throw error;
237
+ }
193
238
  const isRateLimit = status === 429 ||
194
239
  errorStr.includes('429') ||
195
240
  errorStr.includes('ratelimit') ||
@@ -231,13 +276,13 @@ function sanitizeRepoSummary(parsed, projectName, filesList) {
231
276
  const parts = line.split(':');
232
277
  if (parts.length > 1) {
233
278
  const val = parts.slice(1).join(':').trim();
234
- return val.length > 3 && !/^[,\s.⚡\-[\]:]*$/.test(val);
279
+ return val.length > 3 && !/^[,\s.\-[\]:]*$/.test(val);
235
280
  }
236
281
  return line.trim().length > 10;
237
282
  });
238
283
  summary = summaryLines.join('\n').trim();
239
284
  if (!summary || summary.length < 20) {
240
- summary = `- **Core Capability**: 🚀 ${projectName} repository analyzed for developer onboarding and codebase navigation.\n- **Architecture & Stack**: Multi-component application structure.\n- **Architectural Moat**: Automated code teardown and due-diligence mapping.`;
285
+ summary = `- **Core Capability**: ${projectName} repository analyzed for developer onboarding and codebase navigation.\n- **Architecture & Stack**: Multi-component application structure.\n- **Architectural Moat**: Automated code teardown and due-diligence mapping.`;
241
286
  }
242
287
  // Sanitize readOrder (remove incomplete items where description after -> is empty/commas)
243
288
  let readOrder = Array.isArray(parsed.readOrder)
@@ -248,7 +293,7 @@ function sanitizeRepoSummary(parsed, projectName, filesList) {
248
293
  const parts = r.split('->');
249
294
  if (parts.length > 1) {
250
295
  const desc = parts[1].trim();
251
- return desc.length > 3 && !/^[,\s.⚡\-[\]:]*$/.test(desc);
296
+ return desc.length > 3 && !/^[,\s.\-[\]:]*$/.test(desc);
252
297
  }
253
298
  return r.length > 8;
254
299
  })
@@ -274,32 +319,32 @@ function sanitizeRepoSummary(parsed, projectName, filesList) {
274
319
  const parts = p.split(':');
275
320
  if (parts.length > 1) {
276
321
  const desc = parts.slice(1).join(':').trim();
277
- return desc.length > 3 && !/^[,\s.⚡\-[\]:]*$/.test(desc);
322
+ return desc.length > 3 && !/^[,\s.\-[\]:]*$/.test(desc);
278
323
  }
279
324
  return p.length > 10;
280
325
  })
281
326
  : [];
282
327
  if (painPoints.length === 0) {
283
328
  painPoints = [
284
- `⚡ [Subsystem Risk]: Verify environment variable configurations and API credentials for ${projectName}.`,
285
- `⚡ [Scaling Bottleneck]: Ensure core services in ${projectName} handle high load and concurrency.`,
286
- `⚡ [Execution Requirement]: Validate local setup and build dependencies prior to deployment.`
329
+ ` [Subsystem Risk]: Verify environment variable configurations and API credentials for ${projectName}.`,
330
+ ` [Scaling Bottleneck]: Ensure core services in ${projectName} handle high load and concurrency.`,
331
+ ` [Execution Requirement]: Validate local setup and build dependencies prior to deployment.`
287
332
  ];
288
333
  }
289
334
  let architectureDiagram = typeof parsed.architectureDiagram === 'string' && parsed.architectureDiagram.trim().length > 10
290
335
  ? parsed.architectureDiagram.trim()
291
336
  : `┌───────────────────────┐
292
- │ Client / User │
337
+ │ Client / User │
293
338
  └───────────┬───────────┘
294
- │
295
- ▼
339
+ │
340
+
296
341
  ┌───────────────────────┐
297
342
  │ ${projectName.padEnd(21).substring(0, 21)} │
298
343
  └───────────┬───────────┘
299
- │
300
- ▼
344
+ │
345
+
301
346
  ┌───────────────────────┐
302
- │ Data & Services │
347
+ │ Data & Services │
303
348
  └───────────────────────┘`;
304
349
  return { summary, entryPoint, readOrder, painPoints, architectureDiagram };
305
350
  }
@@ -324,23 +369,23 @@ You MUST write complete, deep, rich technical sentences in ${langInfo.displayNam
324
369
  Keep the bold bullet header titles exact in English (e.g. "- **Core Capability**:", "- **Architecture & Stack**:", "- **Architectural Moat**:") and write the descriptive explanation after the colon in ${langInfo.displayName}.
325
370
  Do NOT leave any empty strings, isolated commas, or blank placeholders after colons or arrows (e.g. do NOT output ", ," or "file.js -> ").
326
371
  Every read order item MUST be formatted as: "filepath -> Detailed explanation in ${langInfo.displayName}".
327
- Every pain point item MUST be formatted as: "⚡ [Category]: Detailed technical risk analysis in ${langInfo.displayName}".
372
+ Every pain point item MUST be formatted as: " [Category]: Detailed technical risk analysis in ${langInfo.displayName}".
328
373
 
329
374
  Provide a JSON output matching this exact schema:
330
375
  {
331
- "summary": "- **Core Capability**: A punchy 1-2 sentence description of what the project does written in ${langInfo.displayName}.\n- **Architecture & Stack**: Tech stack & core design pattern written in ${langInfo.displayName}.\n- **Architectural Moat**: Unique engineering advantage or value prop written in ${langInfo.displayName}.",
332
- "entryPoint": "the exact relative path to the primary execution entry point file",
333
- "readOrder": [
334
- "file/path/1 -> Strategic reason written in ${langInfo.displayName} detailing why this file is foundational to the architecture",
335
- "file/path/2 -> Technical justification written in ${langInfo.displayName} for reading this subsystem next",
336
- "file/path/3 -> Crucial module written in ${langInfo.displayName} detailing core business logic or pipeline routing"
337
- ],
338
- "painPoints": [
339
- "⚡ [Subsystem Risk]: Deep technical insight written in ${langInfo.displayName} into potential architectural debt, fragile dependency, or scaling bottleneck",
340
- "⚡ [Scaling Bottleneck]: Critical operational or state management risk written in ${langInfo.displayName} engineers must watch out for",
341
- "⚡ [Execution Note]: Key architectural constraint or environment requirement written in ${langInfo.displayName} for developer onboarding"
342
- ],
343
- "architectureDiagram": "A clean 4-8 line ASCII box diagram representing the subsystem flow (e.g. [Client] --> [API Router] --> [Service Layer] --> [Database])"
376
+ "summary": "- **Core Capability**: A punchy 1-2 sentence description of what the project does written in ${langInfo.displayName}.\n- **Architecture & Stack**: Tech stack & core design pattern written in ${langInfo.displayName}.\n- **Architectural Moat**: Unique engineering advantage or value prop written in ${langInfo.displayName}.",
377
+ "entryPoint": "the exact relative path to the primary execution entry point file",
378
+ "readOrder": [
379
+ "file/path/1 -> Strategic reason written in ${langInfo.displayName} detailing why this file is foundational to the architecture",
380
+ "file/path/2 -> Technical justification written in ${langInfo.displayName} for reading this subsystem next",
381
+ "file/path/3 -> Crucial module written in ${langInfo.displayName} detailing core business logic or pipeline routing"
382
+ ],
383
+ "painPoints": [
384
+ " [Subsystem Risk]: Deep technical insight written in ${langInfo.displayName} into potential architectural debt, fragile dependency, or scaling bottleneck",
385
+ " [Scaling Bottleneck]: Critical operational or state management risk written in ${langInfo.displayName} engineers must watch out for",
386
+ " [Execution Note]: Key architectural constraint or environment requirement written in ${langInfo.displayName} for developer onboarding"
387
+ ],
388
+ "architectureDiagram": "A clean 4-8 line ASCII box diagram representing the subsystem flow (e.g. [Client] --> [API Router] --> [Service Layer] --> [Database])"
344
389
  }
345
390
  `;
346
391
  try {
@@ -371,9 +416,9 @@ Output Language: ${langInfo.displayName}
371
416
  Language Instruction: ${langInfo.instruction}
372
417
 
373
418
  Your Goal: Provide a deep technical explanation of:
374
- 1. 🔥 Why these specific line ranges/hotspots are repeatedly failing or requiring emergency patches.
375
- 2. ⚠️ What architectural debt or design pattern flaws are creating this fragility.
376
- 3. 🛠️ Step-by-step actionable recommendations for refactoring and stabilizing this file.
419
+ 1. Why these specific line ranges/hotspots are repeatedly failing or requiring emergency patches.
420
+ 2. ️ What architectural debt or design pattern flaws are creating this fragility.
421
+ 3. ️ Step-by-step actionable recommendations for refactoring and stabilizing this file.
377
422
 
378
423
  Format the output in clean, elegant Markdown.
379
424
  `;
@@ -385,7 +430,7 @@ Format the output in clean, elegant Markdown.
385
430
  return response.choices[0]?.message?.content || 'Unable to generate risk explanation for this file.';
386
431
  }
387
432
  catch (error) {
388
- return `⚠️ Risk Analysis Fallback: File ${file} shows ${commitMsgs.length} recent hotfixes in lines ${lineRanges.join(', ')}. Common root causes include tight coupling, missing unit tests, or unhandled edge cases in execution logic.`;
433
+ return `️ Risk Analysis Fallback: File ${file} shows ${commitMsgs.length} recent hotfixes in lines ${lineRanges.join(', ')}. Common root causes include tight coupling, missing unit tests, or unhandled edge cases in execution logic.`;
389
434
  }
390
435
  }
391
436
  export async function askRepoQuestion(question, projectName, filesList, manifestContent, chatHistory = [], options) {
@@ -407,7 +452,7 @@ export async function askRepoQuestion(question, projectName, filesList, manifest
407
452
  const langInfo = getLanguageInstruction(options?.language, options?.native);
408
453
  const systemPrompt = `You are FrontTerrain AI, a world-class Principal Software Architect and Y Combinator Technical Co-Pilot.
409
454
  You have indexed the codebase for project: "${projectName}".
410
- ${isWebQuery ? '🌐 Internet Access: ACTIVE. You have live web search capabilities enabled.' : ''}
455
+ ${isWebQuery ? ' Internet Access: ACTIVE. You have live web search capabilities enabled.' : ''}
411
456
 
412
457
  Repository File Structure:
413
458
  ${filesList.slice(0, 150).join('\n')}
@@ -442,7 +487,7 @@ CRITICAL CLI FORMATTING INSTRUCTIONS:
442
487
  }
443
488
  catch (error) {
444
489
  console.error("OpenAI Error:", error);
445
- return `⚠️ AI Error: Could not generate answer (${error instanceof Error ? error.message : String(error)}). Please check network or proxy credentials.`;
490
+ return `️ AI Error: Could not generate answer (${error instanceof Error ? error.message : String(error)}). Please check network or proxy credentials.`;
446
491
  }
447
492
  }
448
493
  export async function generateCodeScanReport(projectName, filesList, codeSample, language, native) {
@@ -460,13 +505,13 @@ Language requirement: Write descriptions in ${langInfo.displayName}.
460
505
  Identify 3 potential bugs, unhandled null pointers, fragile error handlers, or performance risks in this repository.
461
506
  Return a valid JSON array matching this exact schema:
462
507
  [
463
- {
464
- "id": 1,
465
- "title": "Short title of the bug or issue",
466
- "file": "relative/file/path.ts",
467
- "severity": "high",
468
- "description": "Detailed explanation of why this is a bug or fragile pattern, matching patterns from past hotfixes."
469
- }
508
+ {
509
+ "id": 1,
510
+ "title": "Short title of the bug or issue",
511
+ "file": "relative/file/path.ts",
512
+ "severity": "high",
513
+ "description": "Detailed explanation of why this is a bug or fragile pattern, matching patterns from past hotfixes."
514
+ }
470
515
  ]
471
516
  `;
472
517
  try {
@@ -544,9 +589,9 @@ ${codeSample.slice(0, 2000)}
544
589
  Language requirement: ${langInfo.instruction} Write all headers and explanations in ${langInfo.displayName}.
545
590
 
546
591
  Structure your response into 3 sections:
547
- 1. ### 🏗️ Architectural Enhancements
548
- 2. ### ⚡ Performance & Caching Optimizations
549
- 3. ### 🧮 Algorithmic & DSA Recommendations
592
+ 1. ### ️ Architectural Enhancements
593
+ 2. ### Performance & Caching Optimizations
594
+ 3. ### Algorithmic & DSA Recommendations
550
595
 
551
596
  Provide concrete, actionable technical recommendations with exact file names and code pattern suggestions.
552
597
  `;
@@ -558,7 +603,7 @@ Provide concrete, actionable technical recommendations with exact file names and
558
603
  return response.choices[0]?.message?.content || 'No recommendations generated.';
559
604
  }
560
605
  catch (error) {
561
- return `⚠️ Could not generate recommendations: ${error instanceof Error ? error.message : String(error)}`;
606
+ return `️ Could not generate recommendations: ${error instanceof Error ? error.message : String(error)}`;
562
607
  }
563
608
  }
564
609
  export async function generateFeaturePlan(idea, projectName, filesList, language, native) {
@@ -571,10 +616,10 @@ ${filesList.slice(0, 120).join('\n')}
571
616
  Language requirement: ${langInfo.instruction} Write all explanations in ${langInfo.displayName}.
572
617
 
573
618
  Produce a comprehensive Feasibility Assessment & Step-by-Step Implementation Roadmap:
574
- 1. ### 📊 Feasibility & Complexity Assessment
575
- 2. ### 🎯 Target Files & Affected Subsystems
576
- 3. ### 🛠️ Step-by-Step Implementation Plan
577
- 4. ### ⚠️ Architectural Risks & Considerations
619
+ 1. ### Feasibility & Complexity Assessment
620
+ 2. ### Target Files & Affected Subsystems
621
+ 3. ### ️ Step-by-Step Implementation Plan
622
+ 4. ### ️ Architectural Risks & Considerations
578
623
  `;
579
624
  try {
580
625
  const response = await callOpenAIWithRetry((model) => openai.chat.completions.create({
@@ -584,7 +629,7 @@ Produce a comprehensive Feasibility Assessment & Step-by-Step Implementation Roa
584
629
  return response.choices[0]?.message?.content || 'No feature plan generated.';
585
630
  }
586
631
  catch (error) {
587
- return `⚠️ Feasibility analysis error: ${error instanceof Error ? error.message : String(error)}`;
632
+ return `️ Feasibility analysis error: ${error instanceof Error ? error.message : String(error)}`;
588
633
  }
589
634
  }
590
635
  export function cleanAndParseJsonPayload(rawContent) {
@@ -672,10 +717,10 @@ Your mission:
672
717
 
673
718
  Return ONLY a JSON object matching this exact schema:
674
719
  {
675
- "targetFile": "${targetFile}",
676
- "problem": "Clear technical breakdown of what the problem/bug was before fixing, written in ${langInfo.displayName}",
677
- "howFixed": "Technical explanation of how Scout fixed the issue written in ${langInfo.displayName}",
678
- "fixedCode": "the complete updated source code string for ${targetFile}"
720
+ "targetFile": "${targetFile}",
721
+ "problem": "Clear technical breakdown of what the problem/bug was before fixing, written in ${langInfo.displayName}",
722
+ "howFixed": "Technical explanation of how Scout fixed the issue written in ${langInfo.displayName}",
723
+ "fixedCode": "the complete updated source code string for ${targetFile}"
679
724
  }
680
725
  `;
681
726
  try {
@@ -767,7 +812,7 @@ Based on the user request, identify which specific file path(s) from the file tr
767
812
  Select ONLY the file(s) that strictly need modifications to fulfill the request. Unless the request explicitly asks to modify all files, prefer selecting only the single file or minimal set of files directly relevant.
768
813
  Return ONLY a JSON object matching this exact schema:
769
814
  {
770
- "targetFiles": ["relative/file/path1.ts", "relative/file/path2.html"]
815
+ "targetFiles": ["relative/file/path1.ts", "relative/file/path2.html"]
771
816
  }
772
817
  `;
773
818
  try {
@@ -831,14 +876,14 @@ Your mission:
831
876
  2. Provide updated, complete production-ready code for EACH target file according to the user request. Do NOT omit existing logic unless refactoring or fulfilling the prompt.
832
877
  3. Return a JSON object matching this exact schema:
833
878
  {
834
- "problem": "Clear technical breakdown of what the issue was across these files written in ${langInfo.displayName}",
835
- "howFixed": "Technical explanation of how Scout fixed all target files written in ${langInfo.displayName}",
836
- "files": [
837
- {
838
- "targetFile": "relative/file/path",
839
- "fixedCode": "complete updated source code string for this file"
840
- }
841
- ]
879
+ "problem": "Clear technical breakdown of what the issue was across these files written in ${langInfo.displayName}",
880
+ "howFixed": "Technical explanation of how Scout fixed all target files written in ${langInfo.displayName}",
881
+ "files": [
882
+ {
883
+ "targetFile": "relative/file/path",
884
+ "fixedCode": "complete updated source code string for this file"
885
+ }
886
+ ]
842
887
  }
843
888
  `;
844
889
  try {
@@ -929,9 +974,9 @@ Your mission:
929
974
 
930
975
  Return ONLY a JSON object matching this exact schema:
931
976
  {
932
- "targetFile": "${filePath}",
933
- "description": "Clear description of the generated code and its capabilities written in ${langInfo.displayName}",
934
- "code": "complete source code string for ${filePath}"
977
+ "targetFile": "${filePath}",
978
+ "description": "Clear description of the generated code and its capabilities written in ${langInfo.displayName}",
979
+ "code": "complete source code string for ${filePath}"
935
980
  }
936
981
  `;
937
982
  try {
@@ -1027,11 +1072,11 @@ Diagnose why the command failed and identify which source file in the project li
1027
1072
 
1028
1073
  Return ONLY a JSON object matching this exact schema:
1029
1074
  {
1030
- "command": "${command}",
1031
- "exitCode": ${exitCode},
1032
- "rootCause": "Clear explanation of why the command failed written in ${langInfo.displayName}",
1033
- "suggestedFix": "Concrete suggestion on how to resolve the failure written in ${langInfo.displayName}",
1034
- "targetFileToFix": "relative path to the source file that caused the failure, or empty string if unknown"
1075
+ "command": "${command}",
1076
+ "exitCode": ${exitCode},
1077
+ "rootCause": "Clear explanation of why the command failed written in ${langInfo.displayName}",
1078
+ "suggestedFix": "Concrete suggestion on how to resolve the failure written in ${langInfo.displayName}",
1079
+ "targetFileToFix": "relative path to the source file that caused the failure, or empty string if unknown"
1035
1080
  }
1036
1081
  `;
1037
1082
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"llm.js","sourceRoot":"","sources":["llm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm.js","sourceRoot":"","sources":["llm.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["verifier.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA+HhG;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,MAAM,EACX,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC,CA8D7B;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,MAAM,EAAE,EACrB,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,CAAC,EAAE;IACR,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC9B,GACA,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,aAAa,EAAE,MAAM,EAAE,CAAC;IAAC,eAAe,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAqFnF;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,OAAO,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1B;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,aAAa,GAAE,MAAa,EAC5B,SAAS,GAAE,MAAc,GACxB,OAAO,CAAC,kBAAkB,CAAC,CAgF7B"}
1
+ {"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["verifier.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA+HhG;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC3C,GAAG,EAAE,MAAM,EACX,SAAS,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,kBAAkB,CAAC,CA8D7B;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC3C,WAAW,EAAE,MAAM,EAAE,EACrB,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,CAAC,EAAE;IACV,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC5B,GACC,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,aAAa,EAAE,MAAM,EAAE,CAAC;IAAC,eAAe,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAqFnF;AAED,MAAM,WAAW,kBAAkB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,OAAO,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACzB;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAClC,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,aAAa,GAAE,MAAa,EAC5B,SAAS,GAAE,MAAc,GACvB,OAAO,CAAC,kBAAkB,CAAC,CAgF7B"}
@@ -216,17 +216,17 @@ export async function verifyAndSelfHealFiles(targetFiles, cwd, projectName, file
216
216
  while (attempts < maxRetries) {
217
217
  attempts++;
218
218
  const checkSpin = spinner();
219
- checkSpin.start(chalk.cyan(`🔍 Checking for error: edited ${file}...`));
219
+ checkSpin.start(chalk.cyan(` Checking for error: edited ${file}...`));
220
220
  const checkRes = await checkFileSyntax(file, cwd);
221
221
  if (checkRes.valid) {
222
- checkSpin.stop(chalk.green(`✓ Checking for error: edited ${file} — Syntax & build clean.`));
222
+ checkSpin.stop(chalk.green(` Checking for error: edited ${file} — Syntax & build clean.`));
223
223
  isClean = true;
224
224
  break;
225
225
  }
226
- checkSpin.stop(chalk.yellow(`⚠️ Checking for error: edited ${file} — Error detected.`));
226
+ checkSpin.stop(chalk.yellow(`️ Checking for error: edited ${file} — Error detected.`));
227
227
  // Error detected! Auto-fix and recheck!
228
228
  const vSpin = spinner();
229
- vSpin.start(chalk.yellow(`🔍 Running auto-fix on ${file} (Attempt ${attempts}/${maxRetries})...`));
229
+ vSpin.start(chalk.yellow(` Running auto-fix on ${file} (Attempt ${attempts}/${maxRetries})...`));
230
230
  const fullPath = path.isAbsolute(file) ? file : path.resolve(cwd, file);
231
231
  let currentContent = '';
232
232
  try {
@@ -244,12 +244,12 @@ export async function verifyAndSelfHealFiles(targetFiles, cwd, projectName, file
244
244
  // Recheck file after applying fix!
245
245
  const recheck = await checkFileSyntax(file, cwd);
246
246
  if (recheck.valid) {
247
- vSpin.stop(chalk.green(`✓ Fix confirmed! ${file} is now error-free (Verified on attempt ${attempts}).`));
247
+ vSpin.stop(chalk.green(` Fix confirmed! ${file} is now error-free (Verified on attempt ${attempts}).`));
248
248
  isClean = true;
249
249
  break;
250
250
  }
251
251
  else {
252
- vSpin.stop(chalk.yellow(`⚠️ Fix applied to ${file}, but recheck found remaining error. Retrying (${attempts}/${maxRetries})...`));
252
+ vSpin.stop(chalk.yellow(`️ Fix applied to ${file}, but recheck found remaining error. Retrying (${attempts}/${maxRetries})...`));
253
253
  }
254
254
  }
255
255
  catch (fixErr) {