genaicode 0.9.0 → 0.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/dist/cli/cli-params.js +21 -0
  2. package/dist/cli/cli-params.js.map +1 -1
  3. package/dist/cli/validate-cli-params.js +19 -11
  4. package/dist/cli/validate-cli-params.js.map +1 -1
  5. package/dist/files/read-files.js +8 -2
  6. package/dist/files/read-files.js.map +1 -1
  7. package/dist/files/source-code-tree.d.ts +2 -5
  8. package/dist/files/source-code-tree.js +3 -32
  9. package/dist/files/source-code-tree.js.map +1 -1
  10. package/dist/files/source-code-types.d.ts +7 -2
  11. package/dist/files/source-code-utils.d.ts +22 -0
  12. package/dist/files/source-code-utils.js +69 -0
  13. package/dist/files/source-code-utils.js.map +1 -0
  14. package/dist/files/summary-cache.d.ts +1 -1
  15. package/dist/files/summary-cache.js +1 -1
  16. package/dist/main/common/user-actions.d.ts +1 -1
  17. package/dist/main/common/user-actions.js +3 -3
  18. package/dist/main/common/user-actions.js.map +1 -1
  19. package/dist/main/ui/backend/endpoints/generate-content-endpoint.js +6 -5
  20. package/dist/main/ui/backend/endpoints/generate-content-endpoint.js.map +1 -1
  21. package/dist/main/ui/backend/service.js +10 -8
  22. package/dist/main/ui/backend/service.js.map +1 -1
  23. package/dist/main/ui/frontend/assets/{index-DfiFNFf2.js → index-D8KFdZaU.js} +69 -65
  24. package/dist/main/ui/frontend/index.html +1 -1
  25. package/dist/prompt/ai-service-fallback.js +1 -1
  26. package/dist/prompt/ai-service-fallback.js.map +1 -1
  27. package/dist/prompt/function-calling-validate.js +1 -0
  28. package/dist/prompt/function-calling-validate.js.map +1 -1
  29. package/dist/prompt/function-defs/get-source-code.js +8 -11
  30. package/dist/prompt/function-defs/get-source-code.js.map +1 -1
  31. package/dist/prompt/function-defs/set-summaries.d.ts +1 -1
  32. package/dist/prompt/function-defs/set-summaries.js +10 -6
  33. package/dist/prompt/function-defs/set-summaries.js.map +1 -1
  34. package/dist/prompt/prompt-service.js +2 -3
  35. package/dist/prompt/prompt-service.js.map +1 -1
  36. package/dist/prompt/steps/step-ask-question/handlers/handle-end-conversation.d.ts +1 -1
  37. package/dist/prompt/steps/step-ask-question/handlers/handle-end-conversation.js +17 -1
  38. package/dist/prompt/steps/step-ask-question/handlers/handle-end-conversation.js.map +1 -1
  39. package/dist/prompt/steps/step-ask-question/handlers/handle-reasoning-inference.js +24 -14
  40. package/dist/prompt/steps/step-ask-question/handlers/handle-reasoning-inference.js.map +1 -1
  41. package/dist/prompt/steps/step-ask-question/handlers/remove-files-from-context.js +15 -19
  42. package/dist/prompt/steps/step-ask-question/handlers/remove-files-from-context.js.map +1 -1
  43. package/dist/prompt/steps/step-ask-question/handlers/request-files-content.js +10 -5
  44. package/dist/prompt/steps/step-ask-question/handlers/request-files-content.js.map +1 -1
  45. package/dist/prompt/steps/step-context-optimization.js +8 -6
  46. package/dist/prompt/steps/step-context-optimization.js.map +1 -1
  47. package/dist/prompt/steps/step-ensure-context.js +1 -2
  48. package/dist/prompt/steps/step-ensure-context.js.map +1 -1
  49. package/dist/prompt/steps/step-generate-codegen-summary.js +3 -0
  50. package/dist/prompt/steps/step-generate-codegen-summary.js.map +1 -1
  51. package/dist/prompt/steps/step-process-file-updates.js +1 -0
  52. package/dist/prompt/steps/step-process-file-updates.js.map +1 -1
  53. package/dist/prompt/steps/step-summarization.d.ts +5 -0
  54. package/dist/prompt/steps/step-summarization.js +77 -42
  55. package/dist/prompt/steps/step-summarization.js.map +1 -1
  56. package/package.json +2 -2
@@ -7,7 +7,7 @@
7
7
  <meta name="keywords" content="GenAIcode, AI, code generation, programming" />
8
8
  <title>GenAIcode - AI-Powered Code Generation</title>
9
9
  <link rel="icon" href="/assets/favicon-DvroFOpS.png" type="image/png" />
10
- <script type="module" crossorigin src="/assets/index-DfiFNFf2.js"></script>
10
+ <script type="module" crossorigin src="/assets/index-D8KFdZaU.js"></script>
11
11
  <link rel="stylesheet" crossorigin href="/assets/index-S_ocA1xG.css">
12
12
  </head>
13
13
  <body data-security-token="__SECURITY_TOKEN__">
@@ -21,7 +21,7 @@ export async function handleAiServiceFallback(generateContentFns, options, ...ar
21
21
  }
22
22
  if (!options.disableAiServiceFallback && (options.interactive || options.ui)) {
23
23
  putSystemMessage(`Content generation failed for ${options.aiService}`, { error });
24
- const shouldRetry = await askUserForConfirmation(`Content generation failed, do you want to retry?`, true, options);
24
+ const shouldRetry = await askUserForConfirmation(`Content generation failed, do you want to retry?`, true, options, 'Retry', 'Exit');
25
25
  if (shouldRetry.confirmed) {
26
26
  continue;
27
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ai-service-fallback.js","sourceRoot":"","sources":["../../src/prompt/ai-service-fallback.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAExE,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAErE,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,kBAAkE,EAClE,OAAuB,EACvB,GAAG,IAAyC;IAE5C,iDAAiD;IACjD,OAAO,IAAI,EAAE,CAAC;QACZ,IAAI,eAAe,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;YACpC,gBAAgB,CAAC,6BAA6B,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YACpE,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,+CAA+C;gBAC/C,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;oBACzE,gBAAgB,CAAC,6BAA6B,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;oBACnE,MAAM,KAAK,CAAC,CAAC,kCAAkC;gBACjD,CAAC;gBAED,IAAI,CAAC,OAAO,CAAC,wBAAwB,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC7E,gBAAgB,CAAC,iCAAiC,OAAO,CAAC,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;oBAClF,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAC9C,kDAAkD,EAClD,IAAI,EACJ,OAAO,CACR,CAAC;oBACF,IAAI,WAAW,CAAC,SAAS,EAAE,CAAC;wBAC1B,SAAS;oBACX,CAAC;yBAAM,CAAC;wBACN,MAAM,KAAK,CAAC;oBACd,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,0CAA0C;gBAC1C,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"ai-service-fallback.js","sourceRoot":"","sources":["../../src/prompt/ai-service-fallback.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAExE,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAErE,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,kBAAkE,EAClE,OAAuB,EACvB,GAAG,IAAyC;IAE5C,iDAAiD;IACjD,OAAO,IAAI,EAAE,CAAC;QACZ,IAAI,eAAe,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;YACpC,gBAAgB,CAAC,6BAA6B,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YACpE,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,+CAA+C;gBAC/C,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;oBACzE,gBAAgB,CAAC,6BAA6B,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;oBACnE,MAAM,KAAK,CAAC,CAAC,kCAAkC;gBACjD,CAAC;gBAED,IAAI,CAAC,OAAO,CAAC,wBAAwB,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC7E,gBAAgB,CAAC,iCAAiC,OAAO,CAAC,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;oBAClF,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAC9C,kDAAkD,EAClD,IAAI,EACJ,OAAO,EACP,OAAO,EACP,MAAM,CACP,CAAC;oBACF,IAAI,WAAW,CAAC,SAAS,EAAE,CAAC;wBAC1B,SAAS;oBACX,CAAC;yBAAM,CAAC;wBACN,MAAM,KAAK,CAAC;oBACd,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,0CAA0C;gBAC1C,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -86,6 +86,7 @@ function isPathProperty(prop) {
86
86
  'contextPaths',
87
87
  'filePaths',
88
88
  'requestFilesContent',
89
+ 'projectFIlePath',
89
90
  ].includes(prop);
90
91
  }
91
92
  function makeError(message, call, propertyPath) {
@@ -1 +1 @@
1
- {"version":3,"file":"function-calling-validate.js","sourceRoot":"","sources":["../../src/prompt/function-calling-validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"function-calling-validate.js","sourceRoot":"","sources":["../../src/prompt/function-calling-validate.ts"],"names":[],"mappings":"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"}
@@ -6,9 +6,11 @@ export const getSourceCode = {
6
6
  description: `This function returns source code of the application in the following format:
7
7
  \`\`\`
8
8
  {
9
- [directoryPath: string]: {
10
- [filePath: string]: {content: string | null} | {summary: string};
11
- };
9
+ [filePath: string]: {
10
+ content?: string | null,
11
+ summary?: string,
12
+ fileId?: string;
13
+ }
12
14
  }
13
15
  \`\`\`
14
16
 
@@ -17,12 +19,8 @@ Some keys may not provide content. Some keys may provide a short summary of cont
17
19
  Here is an example of the returned object:
18
20
  \`\`\`
19
21
  {
20
- '/path/to/directory': {
21
- 'file1.js': {content: 'console.log('Hello, World!');'},
22
- },
23
- '/path/to/directory/sub1/sub2': {
24
- 'file2.js': {summary: 'This file contains a simple log statement.'},
25
- }
22
+ '/path/to/directory/file1.js': {content: 'console.log('Hello, World!');', fileId: 'axb123'},
23
+ '/path/to/directory/sub1/sub2/file2.js': {summary: 'This file contains a simple log statement.', fileId: 'cde456'},
26
24
  }
27
25
  \`\`\`
28
26
 
@@ -32,8 +30,7 @@ How to understand this object:
32
30
  - the second file has no content, but a summary: 'This file contains a simple log statement.'
33
31
  - path of first file: '/path/to/directory/file1.js'
34
32
  - path of second file: '/path/to/directory/sub1/sub2/file2.js'
35
-
36
- This function is used to provide context to the AI model.
33
+ - both files have unique identifiers
37
34
  `,
38
35
  parameters: {
39
36
  type: 'object',
@@ -1 +1 @@
1
- {"version":3,"file":"get-source-code.js","sourceRoot":"","sources":["../../../src/prompt/function-defs/get-source-code.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAgB;IACxC,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA+BV;IACH,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE;gBACT,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,8EAA8E;gBAC3F,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;iBACf;aACF;SACF;QACD,QAAQ,EAAE,EAAE;KACb;CACF,CAAC"}
1
+ {"version":3,"file":"get-source-code.js","sourceRoot":"","sources":["../../../src/prompt/function-defs/get-source-code.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAgB;IACxC,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA4BV;IACH,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE;gBACT,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,8EAA8E;gBAC3F,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;iBACf;aACF;SACF;QACD,QAAQ,EAAE,EAAE;KACb;CACF,CAAC"}
@@ -1,4 +1,4 @@
1
- import { FunctionDef } from '../../ai-service/common-types';
1
+ import { FunctionDef } from '../../ai-service/common-types.js';
2
2
  /**
3
3
  * Function definition for setSummaries
4
4
  */
@@ -27,17 +27,21 @@ export const setSummaries = {
27
27
  items: {
28
28
  type: 'object',
29
29
  properties: {
30
- path: {
31
- type: 'string',
32
- description: 'Path to the dependent file or package/library name for external dependencies.',
33
- },
34
30
  type: {
35
31
  type: 'string',
36
32
  enum: ['local', 'external'],
37
- description: 'Type of dependency - local (file in project) or external (package/library/module).',
33
+ description: 'Type of dependency - local (belongs to the project) or external (not belongs to the project, package/library/module).',
34
+ },
35
+ fileId: {
36
+ type: 'string',
37
+ description: 'Unique identifier for the dependent file. For local dependencies, use the value for the fileId field in the getSourceCode function response. Use empty string for external dependencies.',
38
+ },
39
+ path: {
40
+ type: 'string',
41
+ description: 'Absolute path to the dependent file or package/library name for external dependencies.',
38
42
  },
39
43
  },
40
- required: ['path', 'type'],
44
+ required: ['type', 'fileId', 'path'],
41
45
  },
42
46
  },
43
47
  },
@@ -1 +1 @@
1
- {"version":3,"file":"set-summaries.js","sourceRoot":"","sources":["../../../src/prompt/function-defs/set-summaries.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAgB;IACvC,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,8CAA8C;IAC3D,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE;gBACT,IAAI,EAAE,OAAO;gBACb,WAAW,EACT,sHAAsH;gBACxH,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,QAAQ,EAAE;4BACR,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,8CAA8C;yBAC5D;wBACD,OAAO,EAAE;4BACP,IAAI,EAAE,QAAQ;4BACd,WAAW,EACT,yIAAyI;yBAC5I;wBACD,YAAY,EAAE;4BACZ,IAAI,EAAE,OAAO;4BACb,WAAW,EAAE,iEAAiE;4BAC9E,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,IAAI,EAAE;wCACJ,IAAI,EAAE,QAAQ;wCACd,WAAW,EAAE,+EAA+E;qCAC7F;oCACD,IAAI,EAAE;wCACJ,IAAI,EAAE,QAAQ;wCACd,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC;wCAC3B,WAAW,EAAE,oFAAoF;qCAClG;iCACF;gCACD,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;6BAC3B;yBACF;qBACF;oBACD,QAAQ,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,cAAc,CAAC;iBAClD;aACF;SACF;QACD,QAAQ,EAAE,CAAC,WAAW,CAAC;KACxB;CACF,CAAC"}
1
+ {"version":3,"file":"set-summaries.js","sourceRoot":"","sources":["../../../src/prompt/function-defs/set-summaries.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAgB;IACvC,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,8CAA8C;IAC3D,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE;gBACT,IAAI,EAAE,OAAO;gBACb,WAAW,EACT,sHAAsH;gBACxH,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,QAAQ,EAAE;4BACR,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,8CAA8C;yBAC5D;wBACD,OAAO,EAAE;4BACP,IAAI,EAAE,QAAQ;4BACd,WAAW,EACT,yIAAyI;yBAC5I;wBACD,YAAY,EAAE;4BACZ,IAAI,EAAE,OAAO;4BACb,WAAW,EAAE,iEAAiE;4BAC9E,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,IAAI,EAAE;wCACJ,IAAI,EAAE,QAAQ;wCACd,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC;wCAC3B,WAAW,EACT,uHAAuH;qCAC1H;oCACD,MAAM,EAAE;wCACN,IAAI,EAAE,QAAQ;wCACd,WAAW,EACT,0LAA0L;qCAC7L;oCACD,IAAI,EAAE;wCACJ,IAAI,EAAE,QAAQ;wCACd,WAAW,EACT,wFAAwF;qCAC3F;iCACF;gCACD,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC;6BACrC;yBACF;qBACF;oBACD,QAAQ,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,cAAc,CAAC;iBAClD;aACF;SACF;QACD,QAAQ,EAAE,CAAC,WAAW,CAAC;KACxB;CACF,CAAC"}
@@ -9,7 +9,6 @@ import { handleAiServiceFallback } from './ai-service-fallback.js';
9
9
  import { summarizeSourceCode } from './steps/step-summarization.js';
10
10
  import { executeStepHistoryUpdate, getCurrentHistory } from './steps/step-history-update.js';
11
11
  import { executeStepGenerateSummary } from './steps/step-generate-summary.js';
12
- import { getSourceCodeTree } from '../files/source-code-tree.js';
13
12
  import { INITIAL_GREETING, REQUEST_SOURCE_CODE, SOURCE_CODE_RESPONSE, READY_TO_ASSIST } from './static-prompts.js';
14
13
  import { executeStepCodegenPlanning } from './steps/step-codegen-planning.js';
15
14
  import { getRegisteredGenerateContentHooks } from '../main/plugin-loader.js';
@@ -136,8 +135,8 @@ async function executePromptService(generateContentFn, generateImageFn, codegenP
136
135
  */
137
136
  function prepareMessages(codegen) {
138
137
  return {
139
- sourceCode: JSON.stringify(getSourceCodeTree(getSourceCode({ taskFile: codegen.options.taskFile }, codegen.options))),
140
- contextSourceCode: (paths, pathsOnly = false) => JSON.stringify(getSourceCodeTree(Object.fromEntries(Object.entries(getSourceCode({ filterPaths: paths, taskFile: codegen.options.taskFile, forceAll: true }, codegen.options)).filter(([path]) => !pathsOnly || paths.includes(path))))),
138
+ sourceCode: JSON.stringify(getSourceCode({ taskFile: codegen.options.taskFile }, codegen.options)),
139
+ contextSourceCode: (paths, pathsOnly = false) => JSON.stringify(Object.fromEntries(Object.entries(getSourceCode({ filterPaths: paths, taskFile: codegen.options.taskFile, forceAll: true }, codegen.options)).filter(([path]) => !pathsOnly || paths.includes(path)))),
141
140
  imageAssets: JSON.stringify(getImageAssets()),
142
141
  };
143
142
  }
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-service.js","sourceRoot":"","sources":["../../src/prompt/prompt-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-service.js","sourceRoot":"","sources":["../../src/prompt/prompt-service.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  import { ActionHandlerProps, ActionResult } from '../step-ask-question-types.js';
2
- export declare function handleEndConversation({ askQuestionCall }: ActionHandlerProps): Promise<ActionResult>;
2
+ export declare function handleEndConversation({ askQuestionCall, options }: ActionHandlerProps): Promise<ActionResult>;
@@ -1,5 +1,21 @@
1
1
  import { putSystemMessage } from '../../../../main/common/content-bus.js';
2
- export async function handleEndConversation({ askQuestionCall }) {
2
+ import { askUserForConfirmationWithAnswer } from '../../../../main/common/user-actions.js';
3
+ export async function handleEndConversation({ askQuestionCall, options }) {
4
+ const userConfirmation = await askUserForConfirmationWithAnswer(askQuestionCall.args?.message ?? 'Do you want to end the conversation?', 'End conversation', 'Continue conversation', true, options);
5
+ if (!userConfirmation.confirmed) {
6
+ return {
7
+ breakLoop: false,
8
+ items: [
9
+ {
10
+ assistant: { type: 'assistant', text: askQuestionCall.args?.message ?? '' },
11
+ user: {
12
+ type: 'user',
13
+ text: userConfirmation.answer || 'Declined. Please continue the conversation.',
14
+ },
15
+ },
16
+ ],
17
+ };
18
+ }
3
19
  putSystemMessage('Assistant requested to stop code generation. Exiting...');
4
20
  return {
5
21
  breakLoop: true,
@@ -1 +1 @@
1
- {"version":3,"file":"handle-end-conversation.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/handle-end-conversation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAG1E,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,EAAE,eAAe,EAAsB;IACjF,gBAAgB,CAAC,yDAAyD,CAAC,CAAC;IAC5E,OAAO;QACL,SAAS,EAAE,IAAI;QACf,KAAK,EAAE;YACL;gBACE,SAAS,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,EAAE;gBAC3E,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4BAA4B,EAAE;aAC3D;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"handle-end-conversation.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/handle-end-conversation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAG3F,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,EAAE,eAAe,EAAE,OAAO,EAAsB;IAC1F,MAAM,gBAAgB,GAAG,MAAM,gCAAgC,CAC7D,eAAe,CAAC,IAAI,EAAE,OAAO,IAAI,sCAAsC,EACvE,kBAAkB,EAClB,uBAAuB,EACvB,IAAI,EACJ,OAAO,CACR,CAAC;IAEF,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC;QAChC,OAAO;YACL,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE;gBACL;oBACE,SAAS,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,EAAE;oBAC3E,IAAI,EAAE;wBACJ,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,gBAAgB,CAAC,MAAM,IAAI,6CAA6C;qBAC/E;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAED,gBAAgB,CAAC,yDAAyD,CAAC,CAAC;IAC5E,OAAO;QACL,SAAS,EAAE,IAAI;QACf,KAAK,EAAE;YACL;gBACE,SAAS,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,EAAE;gBAC3E,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4BAA4B,EAAE;aAC3D;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -1,7 +1,8 @@
1
1
  import { ModelType } from '../../../../ai-service/common-types.js';
2
- import { getSourceCode } from '../../../../files/read-files.js';
3
2
  import { putSystemMessage } from '../../../../main/common/content-bus.js';
4
3
  import { getFunctionDefs } from '../../../function-calling.js';
4
+ import { validateAndRecoverSingleResult } from '../../step-validate-recover.js';
5
+ import { getContextSourceCode } from '../../../../files/source-code-utils.js';
5
6
  /**
6
7
  * Handler for the reasoningInference action.
7
8
  * This handler is designed to work with models that don't support function calling
@@ -10,13 +11,22 @@ import { getFunctionDefs } from '../../../function-calling.js';
10
11
  export async function handleReasoningInference({ askQuestionCall, prompt, generateContentFn, options, }) {
11
12
  try {
12
13
  putSystemMessage('Reasoning inference: generating prompt');
13
- const [reasoningInferenceCall] = (await generateContentFn([
14
- ...prompt,
15
- {
16
- type: 'assistant',
17
- text: askQuestionCall.args.message,
18
- },
19
- ], getFunctionDefs(), 'reasoningInference', 0.7, ModelType.CHEAP, options));
14
+ const request = [
15
+ [
16
+ ...prompt,
17
+ {
18
+ type: 'assistant',
19
+ text: askQuestionCall.args.message,
20
+ },
21
+ ],
22
+ getFunctionDefs(),
23
+ 'reasoningInference',
24
+ 0.7,
25
+ ModelType.CHEAP,
26
+ options,
27
+ ];
28
+ const result = await generateContentFn(...request);
29
+ const [reasoningInferenceCall] = (await validateAndRecoverSingleResult(request, result, generateContentFn));
20
30
  if (!reasoningInferenceCall?.args?.prompt) {
21
31
  putSystemMessage('Failed to get valid reasoningInference request');
22
32
  prompt.push({
@@ -29,18 +39,17 @@ export async function handleReasoningInference({ askQuestionCall, prompt, genera
29
39
  return { breakLoop: false, items: [] };
30
40
  }
31
41
  putSystemMessage('Reasoning inference: calling reasoning model', reasoningInferenceCall.args);
42
+ // Get expanded context using getContextSourceCode
43
+ const contextPaths = reasoningInferenceCall.args.contextPaths || [];
44
+ const expandedContextSourceCodeMap = getContextSourceCode(contextPaths, options);
32
45
  // Call the reasoning model with appropriate settings
33
46
  const [reasoningInferenceResponseCall] = (await generateContentFn([
34
47
  {
35
48
  type: 'user',
36
49
  text: reasoningInferenceCall.args.prompt +
37
- (reasoningInferenceCall.args.contextPaths?.length > 0
50
+ (Object.keys(expandedContextSourceCodeMap).length > 0
38
51
  ? '\n\nContents of relevant files:\n' +
39
- Object.entries(getSourceCode({
40
- filterPaths: reasoningInferenceCall.args.contextPaths,
41
- forceAll: true,
42
- ignoreImportantFiles: true,
43
- }, options))
52
+ Object.entries(expandedContextSourceCodeMap)
44
53
  .map(([path, file]) => 'content' in file && file.content ? `File: ${path}\n\`\`\`${file.content}\`\`\`` : '')
45
54
  .filter(Boolean)
46
55
  .join('\n\n')
@@ -79,6 +88,7 @@ export async function handleReasoningInference({ askQuestionCall, prompt, genera
79
88
  text: `Error during reasoning inference.`,
80
89
  });
81
90
  return {
91
+ // TODO: rather do a retry here?
82
92
  breakLoop: true,
83
93
  items: [],
84
94
  };
@@ -1 +1 @@
1
- {"version":3,"file":"handle-reasoning-inference.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/handle-reasoning-inference.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handle-reasoning-inference.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/handle-reasoning-inference.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import { ModelType } from '../../../../ai-service/common-types.js';
2
- import { getSourceCodeTree, parseSourceCodeTree } from '../../../../files/source-code-tree.js';
3
2
  import { putSystemMessage } from '../../../../main/common/content-bus.js';
4
3
  import { getFunctionDefs } from '../../../function-calling.js';
5
4
  export async function handleRemoveFilesFromContext({ askQuestionCall, generateContentFn, prompt, options, }) {
@@ -28,26 +27,23 @@ export async function handleRemoveFilesFromContext({ askQuestionCall, generateCo
28
27
  userText = 'Context reduction applied';
29
28
  }
30
29
  else {
30
+ putSystemMessage('No specific files were provided for context reduction. The context remains unchanged.');
31
31
  userText = 'No specific files were provided for context reduction. The context remains unchanged.';
32
32
  }
33
+ prompt.push({
34
+ type: 'assistant',
35
+ text: askQuestionCall.args?.message ?? '',
36
+ functionCalls: [removeFilesFromContextCall],
37
+ }, {
38
+ type: 'user',
39
+ text: userText,
40
+ functionResponses: [
41
+ { name: 'removeFilesFromContext', call_id: removeFilesFromContextCall.id, content: undefined },
42
+ ],
43
+ });
33
44
  return {
34
45
  breakLoop: false,
35
- items: [
36
- {
37
- assistant: {
38
- type: 'assistant',
39
- text: askQuestionCall.args?.message ?? '',
40
- functionCalls: [removeFilesFromContextCall],
41
- },
42
- user: {
43
- type: 'user',
44
- text: userText,
45
- functionResponses: [
46
- { name: 'removeFilesFromContext', call_id: removeFilesFromContextCall.id, content: undefined },
47
- ],
48
- },
49
- },
50
- ],
46
+ items: [],
51
47
  };
52
48
  }
53
49
  function removeFileContentsFromPrompt(prompt, filesToRemove) {
@@ -64,7 +60,7 @@ function removeFileContentsFromPrompt(prompt, filesToRemove) {
64
60
  return;
65
61
  }
66
62
  try {
67
- const contentObj = parseSourceCodeTree(JSON.parse(sourceCodeResponse.content));
63
+ const contentObj = JSON.parse(sourceCodeResponse.content);
68
64
  let modifiedFiles = 0;
69
65
  filesToRemove.forEach((file) => {
70
66
  if (contentObj[file] && 'content' in contentObj[file]) {
@@ -74,7 +70,7 @@ function removeFileContentsFromPrompt(prompt, filesToRemove) {
74
70
  });
75
71
  // Only update if files were actually modified
76
72
  if (modifiedFiles > 0) {
77
- sourceCodeResponse.content = JSON.stringify(getSourceCodeTree(contentObj));
73
+ sourceCodeResponse.content = JSON.stringify(contentObj);
78
74
  console.log(`Removed content from ${modifiedFiles} files in source code response`);
79
75
  }
80
76
  }
@@ -1 +1 @@
1
- {"version":3,"file":"remove-files-from-context.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/remove-files-from-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remove-files-from-context.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/remove-files-from-context.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { ModelType } from '../../../../ai-service/common-types.js';
2
2
  import { getSourceFiles, refreshFiles } from '../../../../files/find-files.js';
3
3
  import { getSourceCode } from '../../../../files/read-files.js';
4
- import { getSourceCodeTree } from '../../../../files/source-code-tree.js';
4
+ import { getExpandedContextPaths } from '../../../../files/source-code-utils.js';
5
5
  import { putSystemMessage } from '../../../../main/common/content-bus.js';
6
6
  import { getFunctionDefs } from '../../../function-calling.js';
7
7
  export async function handleRequestFilesContent({ askQuestionCall, options, prompt, generateContentFn, }) {
@@ -12,8 +12,11 @@ export async function handleRequestFilesContent({ askQuestionCall, options, prom
12
12
  items: [],
13
13
  };
14
14
  }
15
- let requestedFiles = requestFilesContentCall.args?.filePaths ?? [];
16
- putSystemMessage('Requesting files content', requestFilesContentCall.args);
15
+ let requestedFiles = getExpandedContextPaths(requestFilesContentCall.args?.filePaths ?? [], options);
16
+ putSystemMessage('Requesting files content', {
17
+ requestedFiles,
18
+ expandedRequestedFiles: requestedFiles.filter((file) => !requestFilesContentCall?.args?.filePaths?.includes(file)),
19
+ });
17
20
  // Check which files are already provided in the conversation history
18
21
  const alreadyProvidedFiles = requestedFiles.filter((file) => isFileContentAlreadyProvided(file, prompt));
19
22
  if (alreadyProvidedFiles.length === requestedFiles.length) {
@@ -65,11 +68,12 @@ export async function handleRequestFilesContent({ askQuestionCall, options, prom
65
68
  { name: 'getSourceCode', id: sourceCallId, args: { filePaths: legitimateFiles } },
66
69
  ],
67
70
  };
68
- const sourceCode = getSourceCodeTree(getSourceCode({ filterPaths: legitimateFiles, forceAll: true, ignoreImportantFiles: true }, options));
71
+ const sourceCode = getSourceCode({ filterPaths: legitimateFiles, forceAll: true, ignoreImportantFiles: true }, options);
69
72
  const user = {
70
73
  type: 'user',
71
74
  text: (alreadyProvidedFiles.length > 0
72
- ? `Some files were already provided in the conversation history:
75
+ ? // TODO: Maybe reference to some specific getSourceCode call id
76
+ `Some files were already provided in the conversation history:
73
77
  ${alreadyProvidedFiles.map((path) => `- ${path}`).join('\n')}
74
78
 
75
79
  Providing content for the remaining files:
@@ -146,6 +150,7 @@ function isFileContentAlreadyProvided(filePath, prompt) {
146
150
  function categorizeLegitimateFiles(requestedFiles) {
147
151
  const legitimateFiles = [];
148
152
  const illegitimateFiles = [];
153
+ // TODO: allow some small mistakes in the path, fix them to correct paths
149
154
  requestedFiles.forEach((filePath) => {
150
155
  if (isFilePathLegitimate(filePath)) {
151
156
  legitimateFiles.push(filePath);
@@ -1 +1 @@
1
- {"version":3,"file":"request-files-content.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/request-files-content.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request-files-content.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/request-files-content.ts"],"names":[],"mappings":"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"}
@@ -6,9 +6,9 @@ import { StepResult } from './steps-types.js';
6
6
  import { estimateTokenCount } from '../token-estimator.js';
7
7
  import { validateAndRecoverSingleResult } from './step-validate-recover.js';
8
8
  import { getSourceCodeResponse } from './steps-utils.js';
9
- import { getSourceCodeTree, parseSourceCodeTree } from '../../files/source-code-tree.js';
10
9
  import { importantContext } from '../../main/config.js';
11
10
  import { getSummary } from '../../files/summary-cache.js';
11
+ import { md5 } from '../../files/cache-file.js';
12
12
  export const OPTIMIZATION_PROMPT = `You need to analyze the provided source code files and determine their relevance to the user's prompt. You will then call the \`optimizeContext\` function with the results.
13
13
 
14
14
  **Crucially, only include files in the \`optimizedContext\` array of the \`optimizeContext\` function call if their calculated relevance score is 0.5 or greater.**
@@ -76,10 +76,10 @@ export async function executeStepContextOptimization(generateContentFn, prompt,
76
76
  }
77
77
  if (tokensBefore < MAX_TOTAL_TOKENS) {
78
78
  putSystemMessage('Context optimization is not needed, because the code base is small.');
79
- sourceCodeResponse.content = JSON.stringify(getSourceCodeTree(fullSourceCode));
79
+ sourceCodeResponse.content = JSON.stringify(fullSourceCode);
80
80
  return StepResult.CONTINUE;
81
81
  }
82
- const sourceCode = parseSourceCodeTree(JSON.parse(sourceCodeResponse.content));
82
+ const sourceCode = JSON.parse(sourceCodeResponse.content);
83
83
  try {
84
84
  putSystemMessage('Context optimization is starting for large codebase');
85
85
  const optimizationPrompt = [
@@ -142,7 +142,7 @@ export async function executeStepContextOptimization(generateContentFn, prompt,
142
142
  },
143
143
  {
144
144
  name: 'getSourceCode',
145
- content: JSON.stringify(getSourceCodeTree(optimizedSourceCode)),
145
+ content: JSON.stringify(optimizedSourceCode),
146
146
  },
147
147
  ],
148
148
  cache: true,
@@ -239,6 +239,7 @@ function optimizeSourceCode(sourceCode, fullSourceCode, optimizedContext, irrele
239
239
  !(sourceCode[path] && 'content' in sourceCode[path] && sourceCode[path].content !== null)) {
240
240
  contentTokenCount += estimateTokenCount(content);
241
241
  optimizedSourceCode[path] = {
242
+ fileId: md5(path),
242
243
  content,
243
244
  ...(dependencies && !isIrrelevant && { dependencies }),
244
245
  };
@@ -246,6 +247,7 @@ function optimizeSourceCode(sourceCode, fullSourceCode, optimizedContext, irrele
246
247
  else if (summary && !isIrrelevant) {
247
248
  summaryTokenCount += estimateTokenCount(summary.summary);
248
249
  optimizedSourceCode[path] = {
250
+ fileId: md5(path),
249
251
  ...summary,
250
252
  ...(dependencies && { dependencies }),
251
253
  };
@@ -262,7 +264,7 @@ function clearPreviousSourceCodeResponses(prompt, irrelevantFiles) {
262
264
  for (const response of item.functionResponses) {
263
265
  if (response.name === 'getSourceCode' && response.content) {
264
266
  // Zero out the contents but keep the structure
265
- const sourceCode = parseSourceCodeTree(JSON.parse(response.content));
267
+ const sourceCode = JSON.parse(response.content);
266
268
  for (const path in sourceCode) {
267
269
  if (importantContext.files?.includes(path)) {
268
270
  continue; // Preserve important files
@@ -283,7 +285,7 @@ function clearPreviousSourceCodeResponses(prompt, irrelevantFiles) {
283
285
  delete sourceCode[path].dependencies;
284
286
  }
285
287
  }
286
- response.content = JSON.stringify(getSourceCodeTree(sourceCode));
288
+ response.content = JSON.stringify(sourceCode);
287
289
  }
288
290
  }
289
291
  }
@@ -1 +1 @@
1
- {"version":3,"file":"step-context-optimization.js","sourceRoot":"","sources":["../../../src/prompt/steps/step-context-optimization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"step-context-optimization.js","sourceRoot":"","sources":["../../../src/prompt/steps/step-context-optimization.ts"],"names":[],"mappings":"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"}