repoburg 1.2.12 → 1.3.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 (132) hide show
  1. package/CODEMAP.md +5 -6
  2. package/backend/.env +4 -0
  3. package/backend/dist/src/ai-actions/ai-action-batch.service.d.ts +10 -3
  4. package/backend/dist/src/ai-actions/ai-action-batch.service.js +134 -12
  5. package/backend/dist/src/ai-actions/ai-action-batch.service.js.map +1 -1
  6. package/backend/dist/src/ai-actions/ai-actions.module.js +2 -7
  7. package/backend/dist/src/ai-actions/ai-actions.module.js.map +1 -1
  8. package/backend/dist/src/ai-actions/ai-actions.service.d.ts +16 -3
  9. package/backend/dist/src/ai-actions/ai-actions.service.js +75 -11
  10. package/backend/dist/src/ai-actions/ai-actions.service.js.map +1 -1
  11. package/backend/dist/src/app.module.js +0 -4
  12. package/backend/dist/src/app.module.js.map +1 -1
  13. package/backend/dist/src/llm-orchestration/action-handlers/action-handler.interface.d.ts +7 -0
  14. package/backend/dist/src/llm-orchestration/action-handlers/action-handler.interface.js +3 -0
  15. package/backend/dist/src/llm-orchestration/action-handlers/action-handler.interface.js.map +1 -0
  16. package/backend/dist/src/llm-orchestration/action-handlers/create-file.handler.d.ts +11 -0
  17. package/backend/dist/src/llm-orchestration/action-handlers/create-file.handler.js +65 -0
  18. package/backend/dist/src/llm-orchestration/action-handlers/create-file.handler.js.map +1 -0
  19. package/backend/dist/src/llm-orchestration/action-handlers/delete-file.handler.d.ts +12 -0
  20. package/backend/dist/src/llm-orchestration/action-handlers/delete-file.handler.js +85 -0
  21. package/backend/dist/src/llm-orchestration/action-handlers/delete-file.handler.js.map +1 -0
  22. package/backend/dist/src/llm-orchestration/action-handlers/dto/create-file.args.dto.d.ts +4 -0
  23. package/backend/dist/src/llm-orchestration/action-handlers/dto/create-file.args.dto.js +29 -0
  24. package/backend/dist/src/llm-orchestration/action-handlers/dto/create-file.args.dto.js.map +1 -0
  25. package/backend/dist/src/llm-orchestration/action-handlers/dto/delete-file.args.dto.d.ts +3 -0
  26. package/backend/dist/src/llm-orchestration/action-handlers/dto/delete-file.args.dto.js +22 -0
  27. package/backend/dist/src/llm-orchestration/action-handlers/dto/delete-file.args.dto.js.map +1 -0
  28. package/backend/dist/src/llm-orchestration/action-handlers/dto/edit-file.args.dto.d.ts +4 -0
  29. package/backend/dist/src/llm-orchestration/action-handlers/dto/edit-file.args.dto.js +29 -0
  30. package/backend/dist/src/llm-orchestration/action-handlers/dto/edit-file.args.dto.js.map +1 -0
  31. package/backend/dist/src/llm-orchestration/action-handlers/dto/final.args.dto.d.ts +3 -0
  32. package/backend/dist/src/{llm-response-parser/llm-response-parser.module.js → llm-orchestration/action-handlers/dto/final.args.dto.js} +14 -13
  33. package/backend/dist/src/llm-orchestration/action-handlers/dto/final.args.dto.js.map +1 -0
  34. package/backend/dist/src/llm-orchestration/action-handlers/dto/new-session.args.dto.d.ts +3 -0
  35. package/backend/dist/src/llm-orchestration/action-handlers/dto/new-session.args.dto.js +22 -0
  36. package/backend/dist/src/llm-orchestration/action-handlers/dto/new-session.args.dto.js.map +1 -0
  37. package/backend/dist/src/llm-orchestration/action-handlers/dto/request-context.args.dto.d.ts +11 -0
  38. package/backend/dist/src/llm-orchestration/action-handlers/dto/request-context.args.dto.js +50 -0
  39. package/backend/dist/src/llm-orchestration/action-handlers/dto/request-context.args.dto.js.map +1 -0
  40. package/backend/dist/src/llm-orchestration/action-handlers/dto/run-command.args.dto.d.ts +4 -0
  41. package/backend/dist/src/llm-orchestration/action-handlers/dto/run-command.args.dto.js +27 -0
  42. package/backend/dist/src/llm-orchestration/action-handlers/dto/run-command.args.dto.js.map +1 -0
  43. package/backend/dist/src/llm-orchestration/action-handlers/dto/sanitizer.decorator.d.ts +1 -0
  44. package/backend/dist/src/llm-orchestration/action-handlers/dto/sanitizer.decorator.js +15 -0
  45. package/backend/dist/src/llm-orchestration/action-handlers/dto/sanitizer.decorator.js.map +1 -0
  46. package/backend/dist/src/llm-orchestration/action-handlers/dto/use-mcp-tool.args.dto.d.ts +5 -0
  47. package/backend/dist/src/llm-orchestration/action-handlers/dto/use-mcp-tool.args.dto.js +49 -0
  48. package/backend/dist/src/llm-orchestration/action-handlers/dto/use-mcp-tool.args.dto.js.map +1 -0
  49. package/backend/dist/src/llm-orchestration/action-handlers/edit-file.handler.d.ts +12 -0
  50. package/backend/dist/src/llm-orchestration/action-handlers/edit-file.handler.js +78 -0
  51. package/backend/dist/src/llm-orchestration/action-handlers/edit-file.handler.js.map +1 -0
  52. package/backend/dist/src/llm-orchestration/action-handlers/final.handler.d.ts +8 -0
  53. package/backend/dist/src/llm-orchestration/action-handlers/final.handler.js +40 -0
  54. package/backend/dist/src/llm-orchestration/action-handlers/final.handler.js.map +1 -0
  55. package/backend/dist/src/llm-orchestration/action-handlers/new-session.handler.d.ts +8 -0
  56. package/backend/dist/src/llm-orchestration/action-handlers/new-session.handler.js +45 -0
  57. package/backend/dist/src/llm-orchestration/action-handlers/new-session.handler.js.map +1 -0
  58. package/backend/dist/src/llm-orchestration/action-handlers/request-context.handler.d.ts +8 -0
  59. package/backend/dist/src/llm-orchestration/action-handlers/request-context.handler.js +49 -0
  60. package/backend/dist/src/llm-orchestration/action-handlers/request-context.handler.js.map +1 -0
  61. package/backend/dist/src/llm-orchestration/action-handlers/run-command.handler.d.ts +10 -0
  62. package/backend/dist/src/llm-orchestration/action-handlers/run-command.handler.js +73 -0
  63. package/backend/dist/src/llm-orchestration/action-handlers/run-command.handler.js.map +1 -0
  64. package/backend/dist/src/llm-orchestration/action-handlers/use-mcp-tool.handler.d.ts +12 -0
  65. package/backend/dist/src/llm-orchestration/action-handlers/use-mcp-tool.handler.js +61 -0
  66. package/backend/dist/src/llm-orchestration/action-handlers/use-mcp-tool.handler.js.map +1 -0
  67. package/backend/dist/src/llm-orchestration/errors/handler-validation.error.d.ts +4 -0
  68. package/backend/dist/src/llm-orchestration/errors/handler-validation.error.js +12 -0
  69. package/backend/dist/src/llm-orchestration/errors/handler-validation.error.js.map +1 -0
  70. package/backend/dist/src/llm-orchestration/hooks/follow-up-post-execution.hook.d.ts +25 -0
  71. package/backend/dist/src/llm-orchestration/hooks/follow-up-post-execution.hook.js +144 -0
  72. package/backend/dist/src/llm-orchestration/hooks/follow-up-post-execution.hook.js.map +1 -0
  73. package/backend/dist/src/llm-orchestration/hooks/frontend-notification.hook.d.ts +10 -0
  74. package/backend/dist/src/llm-orchestration/hooks/frontend-notification.hook.js +38 -0
  75. package/backend/dist/src/llm-orchestration/hooks/frontend-notification.hook.js.map +1 -0
  76. package/backend/dist/src/llm-orchestration/hooks/post-execution-hook.interface.d.ts +5 -0
  77. package/backend/dist/src/llm-orchestration/hooks/post-execution-hook.interface.js +3 -0
  78. package/backend/dist/src/llm-orchestration/hooks/post-execution-hook.interface.js.map +1 -0
  79. package/backend/dist/src/llm-orchestration/hooks/yolo-mode-post-execution.hook.d.ts +12 -0
  80. package/backend/dist/src/llm-orchestration/hooks/yolo-mode-post-execution.hook.js +55 -0
  81. package/backend/dist/src/llm-orchestration/hooks/yolo-mode-post-execution.hook.js.map +1 -0
  82. package/backend/dist/src/llm-orchestration/llm-orchestration.interfaces.d.ts +52 -0
  83. package/backend/dist/src/llm-orchestration/llm-orchestration.interfaces.js +13 -0
  84. package/backend/dist/src/llm-orchestration/llm-orchestration.interfaces.js.map +1 -0
  85. package/backend/dist/src/llm-orchestration/llm-orchestration.module.d.ts +2 -0
  86. package/backend/dist/src/llm-orchestration/llm-orchestration.module.js +88 -0
  87. package/backend/dist/src/llm-orchestration/llm-orchestration.module.js.map +1 -0
  88. package/backend/dist/src/llm-orchestration/llm-turn-processor.service.d.ts +20 -0
  89. package/backend/dist/src/llm-orchestration/llm-turn-processor.service.js +156 -0
  90. package/backend/dist/src/llm-orchestration/llm-turn-processor.service.js.map +1 -0
  91. package/backend/dist/src/llm-orchestration/parser/llm-output-parser.service.d.ts +5 -0
  92. package/backend/dist/src/llm-orchestration/parser/llm-output-parser.service.js +105 -0
  93. package/backend/dist/src/llm-orchestration/parser/llm-output-parser.service.js.map +1 -0
  94. package/backend/dist/src/llm-orchestration/parser/parsing.constants.d.ts +7 -0
  95. package/backend/dist/src/llm-orchestration/parser/parsing.constants.js +11 -0
  96. package/backend/dist/src/llm-orchestration/parser/parsing.constants.js.map +1 -0
  97. package/backend/dist/src/llm-responses/llm-responses.module.js +2 -0
  98. package/backend/dist/src/llm-responses/llm-responses.module.js.map +1 -1
  99. package/backend/dist/src/llm-responses/llm-responses.service.d.ts +3 -6
  100. package/backend/dist/src/llm-responses/llm-responses.service.js +9 -112
  101. package/backend/dist/src/llm-responses/llm-responses.service.js.map +1 -1
  102. package/backend/dist/src/seeding/data/system-prompts/carryover-agent.d.ts +1 -1
  103. package/backend/dist/src/seeding/data/system-prompts/carryover-agent.js +8 -8
  104. package/backend/dist/src/seeding/data/system-prompts/default_master-agent.d.ts +1 -1
  105. package/backend/dist/src/seeding/data/system-prompts/default_master-agent.js +77 -87
  106. package/backend/dist/src/seeding/data/system-prompts/default_master-agent.js.map +1 -1
  107. package/backend/dist/tsconfig.build.tsbuildinfo +1 -1
  108. package/package.json +1 -1
  109. package/platform-cli.js +2 -1
  110. package/backend/dist/src/action-execution/action-execution.module.d.ts +0 -2
  111. package/backend/dist/src/action-execution/action-execution.module.js +0 -23
  112. package/backend/dist/src/action-execution/action-execution.module.js.map +0 -1
  113. package/backend/dist/src/action-execution/action-execution.service.d.ts +0 -19
  114. package/backend/dist/src/action-execution/action-execution.service.js +0 -149
  115. package/backend/dist/src/action-execution/action-execution.service.js.map +0 -1
  116. package/backend/dist/src/ai-actions/ai-action-creation.service.d.ts +0 -29
  117. package/backend/dist/src/ai-actions/ai-action-creation.service.js +0 -416
  118. package/backend/dist/src/ai-actions/ai-action-creation.service.js.map +0 -1
  119. package/backend/dist/src/llm-response-parser/dto/ai-action.dto.d.ts +0 -30
  120. package/backend/dist/src/llm-response-parser/dto/ai-action.dto.js +0 -162
  121. package/backend/dist/src/llm-response-parser/dto/ai-action.dto.js.map +0 -1
  122. package/backend/dist/src/llm-response-parser/errors/parsing.error.d.ts +0 -4
  123. package/backend/dist/src/llm-response-parser/errors/parsing.error.js +0 -13
  124. package/backend/dist/src/llm-response-parser/errors/parsing.error.js.map +0 -1
  125. package/backend/dist/src/llm-response-parser/llm-response-parser.module.d.ts +0 -2
  126. package/backend/dist/src/llm-response-parser/llm-response-parser.module.js.map +0 -1
  127. package/backend/dist/src/llm-response-parser/llm-response-parser.service.d.ts +0 -9
  128. package/backend/dist/src/llm-response-parser/llm-response-parser.service.js +0 -215
  129. package/backend/dist/src/llm-response-parser/llm-response-parser.service.js.map +0 -1
  130. package/backend/dist/src/llm-response-parser/parsing.constants.d.ts +0 -20
  131. package/backend/dist/src/llm-response-parser/parsing.constants.js +0 -24
  132. package/backend/dist/src/llm-response-parser/parsing.constants.js.map +0 -1
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ParsingError = void 0;
4
- class ParsingError extends Error {
5
- constructor(message, originalError) {
6
- super(message);
7
- this.originalError = originalError;
8
- this.name = 'ParsingError';
9
- Object.setPrototypeOf(this, ParsingError.prototype);
10
- }
11
- }
12
- exports.ParsingError = ParsingError;
13
- //# sourceMappingURL=parsing.error.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parsing.error.js","sourceRoot":"","sources":["../../../../src/llm-response-parser/errors/parsing.error.ts"],"names":[],"mappings":";;;AAAA,MAAa,YAAa,SAAQ,KAAK;IACrC,YACE,OAAe,EACC,aAAmB;QAEnC,KAAK,CAAC,OAAO,CAAC,CAAC;QAFC,kBAAa,GAAb,aAAa,CAAM;QAGnC,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;QAE3B,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;IACtD,CAAC;CACF;AAVD,oCAUC"}
@@ -1,2 +0,0 @@
1
- export declare class LlmResponseParserModule {
2
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"llm-response-parser.module.js","sourceRoot":"","sources":["../../../src/llm-response-parser/llm-response-parser.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,+EAAyE;AAMlE,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;CAAG,CAAA;AAA1B,0DAAuB;kCAAvB,uBAAuB;IAJnC,IAAA,eAAM,EAAC;QACN,SAAS,EAAE,CAAC,sDAAwB,CAAC;QACrC,OAAO,EAAE,CAAC,sDAAwB,CAAC;KACpC,CAAC;GACW,uBAAuB,CAAG"}
@@ -1,9 +0,0 @@
1
- import { AIActionDto } from './dto/ai-action.dto';
2
- export declare class LlmResponseParserService {
3
- private readonly logger;
4
- private mapActionType;
5
- parse(rawResponse: string): Promise<{
6
- dtos: AIActionDto[];
7
- explanation: string | null;
8
- }>;
9
- }
@@ -1,215 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- var LlmResponseParserService_1;
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.LlmResponseParserService = void 0;
14
- const common_1 = require("@nestjs/common");
15
- const class_validator_1 = require("class-validator");
16
- const ai_action_dto_1 = require("./dto/ai-action.dto");
17
- const parsing_error_1 = require("./errors/parsing.error");
18
- const parsing_constants_1 = require("./parsing.constants");
19
- const utils_1 = require("../utils");
20
- let LlmResponseParserService = LlmResponseParserService_1 = class LlmResponseParserService {
21
- constructor() {
22
- this.logger = new common_1.Logger(LlmResponseParserService_1.name);
23
- }
24
- mapActionType(type) {
25
- if (!type)
26
- return undefined;
27
- const lowerType = type.toLowerCase().trim();
28
- switch (lowerType) {
29
- case 'create':
30
- case 'create_file':
31
- return ai_action_dto_1.AIActionType.CREATE_FILE;
32
- case 'edit':
33
- case 'edit_file':
34
- return ai_action_dto_1.AIActionType.EDIT_FILE;
35
- case 'delete':
36
- case 'delete_file':
37
- return ai_action_dto_1.AIActionType.DELETE_FILE;
38
- case 'run_command':
39
- return ai_action_dto_1.AIActionType.RUN_COMMAND;
40
- case 'request_context':
41
- return ai_action_dto_1.AIActionType.REQUEST_CONTEXT;
42
- case 'new_session':
43
- return ai_action_dto_1.AIActionType.NEW_SESSION;
44
- case 'final':
45
- return ai_action_dto_1.AIActionType.FINAL;
46
- case 'use_mcp_tool':
47
- return ai_action_dto_1.AIActionType.USE_MCP_TOOL;
48
- default:
49
- this.logger.warn(`Unsupported action type found: "${type}"`);
50
- return ai_action_dto_1.AIActionType.FINAL;
51
- }
52
- }
53
- async parse(rawResponse) {
54
- if (!rawResponse || rawResponse.trim() === '') {
55
- return { dtos: [], explanation: null };
56
- }
57
- const firstActionStart = rawResponse.indexOf(parsing_constants_1.ACTION_ITEM_START_TAG);
58
- let explanation = null;
59
- let actionsPart = rawResponse;
60
- if (firstActionStart > 0) {
61
- explanation = rawResponse.substring(0, firstActionStart).trim();
62
- actionsPart = rawResponse.substring(firstActionStart);
63
- }
64
- else if (firstActionStart === -1) {
65
- if (!rawResponse.includes(parsing_constants_1.ACTION_ITEM_END_TAG) &&
66
- !rawResponse.includes(parsing_constants_1.PARTIAL_ACTION_ITEM_END_TAG)) {
67
- return { dtos: [], explanation: rawResponse.trim() };
68
- }
69
- }
70
- const actionBlocks = actionsPart
71
- .split(parsing_constants_1.ACTION_ITEM_START_TAG)
72
- .filter((block) => block.trim() !== '');
73
- if (actionBlocks.length === 0) {
74
- this.logger.log('No action item blocks found in the response.');
75
- return { dtos: [], explanation };
76
- }
77
- const dtos = [];
78
- for (const block of actionBlocks) {
79
- try {
80
- let cleanBlock;
81
- const endTagRegex = new RegExp(`${parsing_constants_1.PARTIAL_ACTION_ITEM_END_TAG}§?`);
82
- const parts = block.split(endTagRegex);
83
- if (parts.length >= 2) {
84
- cleanBlock = parts[0];
85
- }
86
- else if (actionBlocks.length === 1 && parts.length === 1) {
87
- this.logger.log('Only one action block found and it is missing an end tag. Assuming end of response is end of block.');
88
- cleanBlock = parts[0];
89
- }
90
- else {
91
- throw new parsing_error_1.ParsingError(`Malformed action block, missing an end marker like '${parsing_constants_1.ACTION_ITEM_END_TAG}'.`);
92
- }
93
- if (/¦FileAction¦\s*final/.test(cleanBlock)) {
94
- const plainSeparator = `¦${parsing_constants_1.FIELD_PLAIN}¦`;
95
- const plainIndex = cleanBlock.indexOf(plainSeparator);
96
- if (plainIndex !== -1) {
97
- const plainContent = cleanBlock
98
- .substring(plainIndex + plainSeparator.length)
99
- .trim();
100
- const combinedExplanation = [explanation, plainContent]
101
- .filter(Boolean)
102
- .join('\n\n');
103
- this.logger.log(`Parsed 'final' action with plain content. Returning combined explanation.`);
104
- return { dtos: [], explanation: combinedExplanation };
105
- }
106
- }
107
- const actionData = {};
108
- const codeSeparator = `¦${parsing_constants_1.FIELD_CODE}¦`;
109
- const codeIndex = cleanBlock.indexOf(codeSeparator);
110
- let metadataPart;
111
- if (codeIndex !== -1) {
112
- metadataPart = cleanBlock.substring(0, codeIndex);
113
- let codePart = cleanBlock.substring(codeIndex + codeSeparator.length);
114
- codePart = codePart.trim();
115
- const codeMatch = codePart.match(/^```(?:\w*\n)?([\s\S]*)```$/);
116
- actionData[parsing_constants_1.FIELD_CODE] = codeMatch ? codeMatch[1].trim() : codePart;
117
- }
118
- else {
119
- metadataPart = cleanBlock;
120
- }
121
- const fieldRegex = /¦(.*?)¦/g;
122
- let match;
123
- const matches = [];
124
- while ((match = fieldRegex.exec(metadataPart)) !== null) {
125
- matches.push({
126
- key: match[1].trim(),
127
- index: match.index,
128
- markerLength: match[0].length,
129
- });
130
- }
131
- for (let i = 0; i < matches.length; i++) {
132
- const currentMatch = matches[i];
133
- const nextMatch = matches[i + 1];
134
- const startIndex = currentMatch.index + currentMatch.markerLength;
135
- const endIndex = nextMatch ? nextMatch.index : metadataPart.length;
136
- const value = metadataPart.substring(startIndex, endIndex).trim();
137
- actionData[currentMatch.key] = value;
138
- }
139
- const dto = new ai_action_dto_1.AIActionDto();
140
- const actionTypeRaw = actionData[parsing_constants_1.FIELD_FILE_ACTION] || actionData[parsing_constants_1.FIELD_ACTION_TYPE];
141
- dto.action_type = this.mapActionType(actionTypeRaw);
142
- if (!dto.action_type) {
143
- throw new parsing_error_1.ParsingError(`Unsupported or missing action type: "${actionTypeRaw}"`);
144
- }
145
- if (actionData[parsing_constants_1.FIELD_ACTION_NUMBER]) {
146
- dto.order_of_execution = parseInt(actionData[parsing_constants_1.FIELD_ACTION_NUMBER], 10);
147
- if (isNaN(dto.order_of_execution)) {
148
- throw new parsing_error_1.ParsingError(`Invalid ActionNumber: ${actionData[parsing_constants_1.FIELD_ACTION_NUMBER]}`);
149
- }
150
- }
151
- dto.file_path = actionData[parsing_constants_1.FIELD_FILE_PATH];
152
- dto.command_string = actionData[parsing_constants_1.FIELD_COMMAND_STRING];
153
- dto.content = actionData[parsing_constants_1.FIELD_CODE];
154
- dto.files = actionData[parsing_constants_1.FIELD_FILES_STRING];
155
- dto.folders = actionData[parsing_constants_1.FIELD_FOLDERS_STRING];
156
- dto.reason = actionData[parsing_constants_1.FIELD_REASON_STRING];
157
- dto.handover_string = actionData[parsing_constants_1.FIELD_HANDOVER_STRING];
158
- dto.server_name = actionData[parsing_constants_1.FIELD_SERVER_NAME];
159
- dto.tool_name = actionData[parsing_constants_1.FIELD_TOOL_NAME];
160
- if (actionData[parsing_constants_1.FIELD_ARGUMENTS]) {
161
- try {
162
- dto.arguments = JSON.parse(actionData[parsing_constants_1.FIELD_ARGUMENTS]);
163
- }
164
- catch (e) {
165
- throw new parsing_error_1.ParsingError(`Invalid JSON in arguments field: ${actionData[parsing_constants_1.FIELD_ARGUMENTS]}`);
166
- }
167
- }
168
- try {
169
- ai_action_dto_1.AIActionDto.validateFilePath(dto);
170
- ai_action_dto_1.AIActionDto.validateContentForFileOps(dto);
171
- ai_action_dto_1.AIActionDto.validateCommandString(dto);
172
- ai_action_dto_1.AIActionDto.validateRequestContext(dto);
173
- ai_action_dto_1.AIActionDto.validateHandoverString(dto);
174
- ai_action_dto_1.AIActionDto.validateMcpTool(dto);
175
- }
176
- catch (manualValidationError) {
177
- throw new parsing_error_1.ParsingError(`Validation failed for action: ${manualValidationError.message}`, manualValidationError);
178
- }
179
- const errors = await (0, class_validator_1.validate)(dto);
180
- if (errors.length > 0) {
181
- const errorMessages = errors
182
- .map((err) => Object.values(err.constraints || {}).join(', '))
183
- .join('; ');
184
- throw new parsing_error_1.ParsingError(`Validation failed for an action: ${errorMessages}`, errors);
185
- }
186
- dtos.push(dto);
187
- }
188
- catch (error) {
189
- this.logger.warn(`Skipping malformed action block due to error: ${error.message}`, `Block content: ${block.substring(0, 200)}...`);
190
- }
191
- }
192
- dtos.sort((a, b) => {
193
- if (a.order_of_execution === undefined &&
194
- b.order_of_execution === undefined)
195
- return 0;
196
- if (a.order_of_execution === undefined)
197
- return 1;
198
- if (b.order_of_execution === undefined)
199
- return -1;
200
- return a.order_of_execution - b.order_of_execution;
201
- });
202
- return { dtos, explanation };
203
- }
204
- };
205
- exports.LlmResponseParserService = LlmResponseParserService;
206
- __decorate([
207
- (0, utils_1.Trace)(),
208
- __metadata("design:type", Function),
209
- __metadata("design:paramtypes", [String]),
210
- __metadata("design:returntype", Promise)
211
- ], LlmResponseParserService.prototype, "parse", null);
212
- exports.LlmResponseParserService = LlmResponseParserService = LlmResponseParserService_1 = __decorate([
213
- (0, common_1.Injectable)()
214
- ], LlmResponseParserService);
215
- //# sourceMappingURL=llm-response-parser.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"llm-response-parser.service.js","sourceRoot":"","sources":["../../../src/llm-response-parser/llm-response-parser.service.ts"],"names":[],"mappings":"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"}
@@ -1,20 +0,0 @@
1
- export declare const ACTION_ITEM_START_TAG = "\u00A7ACTION_ITEM_START\u00A7";
2
- export declare const ACTION_ITEM_END_TAG = "\u00A7ACTION_ITEM_END\u00A7";
3
- export declare const PARTIAL_ACTION_ITEM_END_TAG = "\u00A7ACTION_ITEM_END";
4
- export declare const TITLE_START_TAG = "\u00A7TITLE_START\u00A7";
5
- export declare const TITLE_END_TAG = "\u00A7TITLE_END\u00A7";
6
- export declare const FIELD_ACTION_NUMBER = "ActionNumber";
7
- export declare const FIELD_TASK_DESCRIPTION = "TaskDescription";
8
- export declare const FIELD_FILE_ACTION = "FileAction";
9
- export declare const FIELD_ACTION_TYPE = "ActionType";
10
- export declare const FIELD_FILE_PATH = "FilePath";
11
- export declare const FIELD_CODE = "Code";
12
- export declare const FIELD_COMMAND_STRING = "CommandString";
13
- export declare const FIELD_HANDOVER_STRING = "HandoverString";
14
- export declare const FIELD_FILES_STRING = "Files";
15
- export declare const FIELD_FOLDERS_STRING = "Folders";
16
- export declare const FIELD_REASON_STRING = "Reason";
17
- export declare const FIELD_PLAIN = "plain";
18
- export declare const FIELD_SERVER_NAME = "server_name";
19
- export declare const FIELD_TOOL_NAME = "tool_name";
20
- export declare const FIELD_ARGUMENTS = "arguments";
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FIELD_ARGUMENTS = exports.FIELD_TOOL_NAME = exports.FIELD_SERVER_NAME = exports.FIELD_PLAIN = exports.FIELD_REASON_STRING = exports.FIELD_FOLDERS_STRING = exports.FIELD_FILES_STRING = exports.FIELD_HANDOVER_STRING = exports.FIELD_COMMAND_STRING = exports.FIELD_CODE = exports.FIELD_FILE_PATH = exports.FIELD_ACTION_TYPE = exports.FIELD_FILE_ACTION = exports.FIELD_TASK_DESCRIPTION = exports.FIELD_ACTION_NUMBER = exports.TITLE_END_TAG = exports.TITLE_START_TAG = exports.PARTIAL_ACTION_ITEM_END_TAG = exports.ACTION_ITEM_END_TAG = exports.ACTION_ITEM_START_TAG = void 0;
4
- exports.ACTION_ITEM_START_TAG = '§ACTION_ITEM_START§';
5
- exports.ACTION_ITEM_END_TAG = '§ACTION_ITEM_END§';
6
- exports.PARTIAL_ACTION_ITEM_END_TAG = '§ACTION_ITEM_END';
7
- exports.TITLE_START_TAG = '§TITLE_START§';
8
- exports.TITLE_END_TAG = '§TITLE_END§';
9
- exports.FIELD_ACTION_NUMBER = 'ActionNumber';
10
- exports.FIELD_TASK_DESCRIPTION = 'TaskDescription';
11
- exports.FIELD_FILE_ACTION = 'FileAction';
12
- exports.FIELD_ACTION_TYPE = 'ActionType';
13
- exports.FIELD_FILE_PATH = 'FilePath';
14
- exports.FIELD_CODE = 'Code';
15
- exports.FIELD_COMMAND_STRING = 'CommandString';
16
- exports.FIELD_HANDOVER_STRING = 'HandoverString';
17
- exports.FIELD_FILES_STRING = 'Files';
18
- exports.FIELD_FOLDERS_STRING = 'Folders';
19
- exports.FIELD_REASON_STRING = 'Reason';
20
- exports.FIELD_PLAIN = 'plain';
21
- exports.FIELD_SERVER_NAME = 'server_name';
22
- exports.FIELD_TOOL_NAME = 'tool_name';
23
- exports.FIELD_ARGUMENTS = 'arguments';
24
- //# sourceMappingURL=parsing.constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parsing.constants.js","sourceRoot":"","sources":["../../../src/llm-response-parser/parsing.constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,qBAAqB,GAAG,qBAAqB,CAAC;AAC9C,QAAA,mBAAmB,GAAG,mBAAmB,CAAC;AAC1C,QAAA,2BAA2B,GAAG,kBAAkB,CAAC;AAEjD,QAAA,eAAe,GAAG,eAAe,CAAC;AAClC,QAAA,aAAa,GAAG,aAAa,CAAC;AAE9B,QAAA,mBAAmB,GAAG,cAAc,CAAC;AACrC,QAAA,sBAAsB,GAAG,iBAAiB,CAAC;AAC3C,QAAA,iBAAiB,GAAG,YAAY,CAAC;AACjC,QAAA,iBAAiB,GAAG,YAAY,CAAC;AACjC,QAAA,eAAe,GAAG,UAAU,CAAC;AAC7B,QAAA,UAAU,GAAG,MAAM,CAAC;AACpB,QAAA,oBAAoB,GAAG,eAAe,CAAC;AACvC,QAAA,qBAAqB,GAAG,gBAAgB,CAAC;AACzC,QAAA,kBAAkB,GAAG,OAAO,CAAC;AAC7B,QAAA,oBAAoB,GAAG,SAAS,CAAC;AACjC,QAAA,mBAAmB,GAAG,QAAQ,CAAC;AAC/B,QAAA,WAAW,GAAG,OAAO,CAAC;AAGtB,QAAA,iBAAiB,GAAG,aAAa,CAAC;AAClC,QAAA,eAAe,GAAG,WAAW,CAAC;AAC9B,QAAA,eAAe,GAAG,WAAW,CAAC"}