repoburg 1.3.19 → 1.3.21

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 (51) hide show
  1. package/backend/.repoburg/hooks/README.md +53 -0
  2. package/backend/.repoburg/hooks/eslint-hook.ts +46 -0
  3. package/backend/.repoburg/hooks/example-hook.ts +62 -0
  4. package/backend/dist/src/app.module.js +4 -0
  5. package/backend/dist/src/app.module.js.map +1 -1
  6. package/backend/dist/src/core-entities/index.d.ts +1 -0
  7. package/backend/dist/src/core-entities/index.js +1 -0
  8. package/backend/dist/src/core-entities/index.js.map +1 -1
  9. package/backend/dist/src/core-entities/tool-hook.entity.d.ts +7 -0
  10. package/backend/dist/src/core-entities/tool-hook.entity.js +37 -0
  11. package/backend/dist/src/core-entities/tool-hook.entity.js.map +1 -0
  12. package/backend/dist/src/llm-orchestration/action-handlers/execute-shell.handler.d.ts +1 -0
  13. package/backend/dist/src/llm-orchestration/action-handlers/execute-shell.handler.js +16 -3
  14. package/backend/dist/src/llm-orchestration/action-handlers/execute-shell.handler.js.map +1 -1
  15. package/backend/dist/src/llm-orchestration/action-handlers/run-command.handler.d.ts +1 -0
  16. package/backend/dist/src/llm-orchestration/action-handlers/run-command.handler.js +18 -1
  17. package/backend/dist/src/llm-orchestration/action-handlers/run-command.handler.js.map +1 -1
  18. package/backend/dist/src/llm-orchestration/llm-orchestration.interfaces.d.ts +1 -1
  19. package/backend/dist/src/llm-orchestration/llm-orchestration.module.js +87 -50
  20. package/backend/dist/src/llm-orchestration/llm-orchestration.module.js.map +1 -1
  21. package/backend/dist/src/llm-orchestration/llm-turn-processor.service.d.ts +3 -1
  22. package/backend/dist/src/llm-orchestration/llm-turn-processor.service.js +70 -2
  23. package/backend/dist/src/llm-orchestration/llm-turn-processor.service.js.map +1 -1
  24. package/backend/dist/src/seeding/data/system-prompts/default_master-agent.d.ts +1 -1
  25. package/backend/dist/src/seeding/data/system-prompts/default_master-agent.js +2 -2
  26. package/backend/dist/src/seeding/data/tool-hooks/eslint-hook.d.ts +2 -0
  27. package/backend/dist/src/seeding/data/tool-hooks/eslint-hook.js +52 -0
  28. package/backend/dist/src/seeding/data/tool-hooks/eslint-hook.js.map +1 -0
  29. package/backend/dist/src/seeding/data/tool-hooks/example-hook.d.ts +2 -0
  30. package/backend/dist/src/seeding/data/tool-hooks/example-hook.js +68 -0
  31. package/backend/dist/src/seeding/data/tool-hooks/example-hook.js.map +1 -0
  32. package/backend/dist/src/seeding/data/tool-hooks/readme.d.ts +2 -0
  33. package/backend/dist/src/seeding/data/tool-hooks/readme.js +59 -0
  34. package/backend/dist/src/seeding/data/tool-hooks/readme.js.map +1 -0
  35. package/backend/dist/src/tool-hooks/dto/create-tool-hook.dto.d.ts +6 -0
  36. package/backend/dist/src/tool-hooks/dto/create-tool-hook.dto.js +36 -0
  37. package/backend/dist/src/tool-hooks/dto/create-tool-hook.dto.js.map +1 -0
  38. package/backend/dist/src/tool-hooks/dto/update-tool-hook.dto.d.ts +6 -0
  39. package/backend/dist/src/tool-hooks/dto/update-tool-hook.dto.js +38 -0
  40. package/backend/dist/src/tool-hooks/dto/update-tool-hook.dto.js.map +1 -0
  41. package/backend/dist/src/tool-hooks/tool-hooks.controller.d.ts +27 -0
  42. package/backend/dist/src/tool-hooks/tool-hooks.controller.js +123 -0
  43. package/backend/dist/src/tool-hooks/tool-hooks.controller.js.map +1 -0
  44. package/backend/dist/src/tool-hooks/tool-hooks.module.d.ts +2 -0
  45. package/backend/dist/src/tool-hooks/tool-hooks.module.js +27 -0
  46. package/backend/dist/src/tool-hooks/tool-hooks.module.js.map +1 -0
  47. package/backend/dist/src/tool-hooks/tool-hooks.service.d.ts +31 -0
  48. package/backend/dist/src/tool-hooks/tool-hooks.service.js +337 -0
  49. package/backend/dist/src/tool-hooks/tool-hooks.service.js.map +1 -0
  50. package/backend/dist/tsconfig.build.tsbuildinfo +1 -1
  51. package/package.json +3 -3
@@ -0,0 +1,53 @@
1
+ # Repoburg Tool Hooks
2
+
3
+ This directory contains TypeScript scripts that can be attached to AI tool execution events.
4
+ You can configure these hooks in the "Tool Hooks" section of the Repoburg UI.
5
+
6
+ ## How it works
7
+
8
+ 1. **Create a script** in this folder (e.g., `audit-patch.ts`).
9
+ 2. **Go to UI**: Open Repoburg -> Tool Hooks -> Add Hook.
10
+ 3. **Configure**: Select the tool (e.g., `patch`), timing (`before` or `after`), and your script.
11
+
12
+ ## Script Interface
13
+
14
+ Your script must **export a default function** that receives the context.
15
+
16
+ ### Input Context
17
+
18
+ ```typescript
19
+ interface HookContext {
20
+ hook_type: 'before' | 'after';
21
+
22
+ action: {
23
+ tool_name: string; // e.g. "patch"
24
+ args: any; // e.g. { file_path: "src/app.ts", patch_code: "..." }
25
+
26
+ // Only present for 'after' hooks
27
+ result?: {
28
+ status: 'SUCCESS' | 'FAILURE';
29
+ output?: string;
30
+ error?: string;
31
+ };
32
+ };
33
+
34
+ plan_context: any; // Shared state of the current AI plan
35
+ }
36
+ ```
37
+
38
+ ### Output Format
39
+
40
+ Your function should return an object (or void if passive):
41
+
42
+ ```typescript
43
+ interface HookOutput {
44
+ // If true, the AI plan stops immediately.
45
+ should_halt_plan?: boolean;
46
+
47
+ // Optional message to log in the UI
48
+ message?: string;
49
+
50
+ // Optional data to merge back into the plan context
51
+ update_context?: Record<string, any>;
52
+ }
53
+ ```
@@ -0,0 +1,46 @@
1
+ /**
2
+ * ESLint Validation Hook
3
+ *
4
+ * Usage: Attach as 'after' hook to 'create_file', 'edit_file', 'patch'.
5
+ */
6
+ import { exec } from 'child_process';
7
+ import { promisify } from 'util';
8
+
9
+ const execAsync = promisify(exec);
10
+
11
+ // Redefining types locally since this runs in a standalone VM context
12
+ export interface HookContext {
13
+ action: {
14
+ tool_name: string;
15
+ args: { file_path?: string; [key: string]: any };
16
+ };
17
+ plan_context: {
18
+ feedback: {
19
+ validationErrors: Array<{ tool_name: string; error: string }>;
20
+ };
21
+ };
22
+ }
23
+
24
+ export default async function(context: HookContext) {
25
+ const filePath = context.action.args.file_path;
26
+ if (!filePath) return;
27
+
28
+ console.log(`[Hook] Running ESLint on ${filePath}`);
29
+
30
+ try {
31
+ // Adjust command as needed for your project structure
32
+ // We use --no-color to keep the error message clean for the AI
33
+ await execAsync(`npx eslint "${filePath}" --no-color`);
34
+ } catch (e: any) {
35
+ const errorOutput = e.stdout || e.stderr || e.message;
36
+
37
+ console.log(`[Hook] ESLint failed for ${filePath}`);
38
+
39
+ // Inject error into the shared plan context
40
+ // The orchestration engine will pick this up and present it to the AI in the next turn (or immediate feedback)
41
+ context.plan_context.feedback.validationErrors.push({
42
+ tool_name: context.action.tool_name,
43
+ error: `ESLint check failed:\n${errorOutput}`
44
+ });
45
+ }
46
+ }
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Example Hook Script
3
+ *
4
+ * Usage:
5
+ * 1. Attach to 'patch' or 'edit_file' tool as a 'before' hook.
6
+ * 2. It will block edits to any file with 'lock' in the name.
7
+ */
8
+
9
+ // --- Type Definitions ---
10
+
11
+ export interface HookAction {
12
+ tool_name: string;
13
+ args: Record<string, any>;
14
+ // Only present for 'after' hooks
15
+ result?: {
16
+ status: 'SUCCESS' | 'FAILURE';
17
+ output?: string;
18
+ error?: string;
19
+ };
20
+ }
21
+
22
+ export interface HookContext {
23
+ hook_type: 'before' | 'after';
24
+ action: HookAction;
25
+ plan_context: any; // Shared state of the current AI plan
26
+ }
27
+
28
+ export interface HookOutput {
29
+ // If true, the AI plan stops immediately.
30
+ should_halt_plan?: boolean;
31
+
32
+ // Optional message to log in the UI
33
+ message?: string;
34
+
35
+ // Optional data to merge back into the plan context
36
+ update_context?: Record<string, any>;
37
+ }
38
+
39
+ // --- Hook Logic ---
40
+
41
+ export default async function(context: HookContext): Promise<HookOutput | void> {
42
+ // 1. Extract Data
43
+ const filePath = context.action?.args?.file_path || '';
44
+
45
+ // Log to console (appears in backend logs)
46
+ console.log(`[Hook] analyzing action on: ${filePath}`);
47
+
48
+ // 2. Logic
49
+ if (filePath.includes('lock')) {
50
+ // Return Halt Signal
51
+ return {
52
+ should_halt_plan: true,
53
+ message: `BLOCKED: Editing files with "lock" in the name is forbidden by policy. File: ${filePath}`
54
+ };
55
+ } else {
56
+ // Return Pass Signal
57
+ return {
58
+ should_halt_plan: false,
59
+ message: `Hook allowed action on ${filePath}`
60
+ };
61
+ }
62
+ }
@@ -35,6 +35,8 @@ const chat_module_1 = require("./interactive-chat/chat.module");
35
35
  const mcp_module_1 = require("./mcp/mcp.module");
36
36
  const visual_editor_module_1 = require("./visual-editor/visual-editor.module");
37
37
  const custom_variables_module_1 = require("./custom-variables/custom-variables.module");
38
+ const tool_hooks_module_1 = require("./tool-hooks/tool-hooks.module");
39
+ const core_entities_2 = require("./core-entities");
38
40
  let dbPath = ':memory:';
39
41
  if (process.env.NODE_ENV === 'production') {
40
42
  const projectPath = process.env.REPOBURG_PROJECT_PATH || process.cwd();
@@ -68,6 +70,7 @@ exports.AppModule = AppModule = __decorate([
68
70
  core_entities_1.McpConfig,
69
71
  core_entities_1.McpTool,
70
72
  core_entities_1.CustomVariable,
73
+ core_entities_2.ToolHook,
71
74
  ],
72
75
  synchronize: true,
73
76
  autoLoadEntities: true,
@@ -93,6 +96,7 @@ exports.AppModule = AppModule = __decorate([
93
96
  mcp_module_1.McpModule,
94
97
  visual_editor_module_1.VisualEditorModule,
95
98
  custom_variables_module_1.CustomVariablesModule,
99
+ tool_hooks_module_1.ToolHooksModule,
96
100
  ],
97
101
  controllers: [app_controller_1.AppController],
98
102
  providers: [app_service_1.AppService],
@@ -1 +1 @@
1
- {"version":3,"file":"app.module.js","sourceRoot":"","sources":["../../src/app.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,qDAAiD;AACjD,+CAA2C;AAC3C,6CAAgD;AAChD,mDAcyB;AACzB,gEAA4D;AAC5D,gEAA4D;AAC5D,kFAA6E;AAC7E,sEAAiE;AACjE,kFAA6E;AAC7E,2FAAsF;AACtF,8FAAyF;AACzF,kFAA6E;AAC7E,6DAAyD;AACzD,mEAA+D;AAC/D,qFAAgF;AAChF,6BAA6B;AAC7B,yBAAyB;AACzB,wFAAmF;AACnF,wFAAmF;AACnF,2FAAsF;AACtF,+EAA0E;AAC1E,0DAAsD;AACtD,wFAAmF;AACnF,gEAAuE;AACvE,iDAA6C;AAC7C,+EAA0E;AAC1E,wFAAmF;AAEnF,IAAI,MAAM,GAAG,UAAU,CAAC;AAExB,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;IAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACvE,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAClD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IACD,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACzC,OAAO,CAAC,GAAG,CAAC,iCAAiC,MAAM,EAAE,CAAC,CAAC;AACzD,CAAC;AAkDM,IAAM,SAAS,GAAf,MAAM,SAAS;CAAG,CAAA;AAAZ,8BAAS;oBAAT,SAAS;IAhDrB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,OAAO,CAAC;gBACpB,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,MAAM;gBAChB,QAAQ,EAAE;oBACR,uBAAO;oBACP,uBAAO;oBACP,+BAAe;oBACf,4BAAY;oBACZ,wBAAQ;oBACR,4BAAY;oBACZ,4BAAY;oBACZ,6BAAa;oBACb,gCAAgB;oBAChB,8BAAc;oBACd,yBAAS;oBACT,uBAAO;oBACP,8BAAc;iBACf;gBACD,WAAW,EAAE,IAAI;gBACjB,gBAAgB,EAAE,IAAI;aACvB,CAAC;YACF,gCAAc;YACd,gCAAc;YACd,2CAAmB;YACnB,mCAAe;YACf,2CAAmB;YACnB,iDAAsB;YACtB,mDAAuB;YACvB,2CAAmB;YACnB,8BAAa;YACb,kCAAe;YACf,6CAAoB;YACpB,+CAAqB;YACrB,+CAAqB;YACrB,iDAAsB;YACtB,yCAAkB;YAClB,4BAAY;YACZ,+CAAqB;YACrB,mCAAqB;YACrB,sBAAS;YACT,yCAAkB;YAClB,+CAAqB;SACtB;QACD,WAAW,EAAE,CAAC,8BAAa,CAAC;QAC5B,SAAS,EAAE,CAAC,wBAAU,CAAC;KACxB,CAAC;GACW,SAAS,CAAG"}
1
+ {"version":3,"file":"app.module.js","sourceRoot":"","sources":["../../src/app.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,qDAAiD;AACjD,+CAA2C;AAC3C,6CAAgD;AAChD,mDAcyB;AACzB,gEAA4D;AAC5D,gEAA4D;AAC5D,kFAA6E;AAC7E,sEAAiE;AACjE,kFAA6E;AAC7E,2FAAsF;AACtF,8FAAyF;AACzF,kFAA6E;AAC7E,6DAAyD;AACzD,mEAA+D;AAC/D,qFAAgF;AAChF,6BAA6B;AAC7B,yBAAyB;AACzB,wFAAmF;AACnF,wFAAmF;AACnF,2FAAsF;AACtF,+EAA0E;AAC1E,0DAAsD;AACtD,wFAAmF;AACnF,gEAAuE;AACvE,iDAA6C;AAC7C,+EAA0E;AAC1E,wFAAmF;AACnF,sEAAiE;AACjE,mDAA2C;AAE3C,IAAI,MAAM,GAAG,UAAU,CAAC;AAExB,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;IAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACvE,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAClD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IACD,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACzC,OAAO,CAAC,GAAG,CAAC,iCAAiC,MAAM,EAAE,CAAC,CAAC;AACzD,CAAC;AAoDM,IAAM,SAAS,GAAf,MAAM,SAAS;CAAG,CAAA;AAAZ,8BAAS;oBAAT,SAAS;IAlDrB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,OAAO,CAAC;gBACpB,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,MAAM;gBAChB,QAAQ,EAAE;oBACR,uBAAO;oBACP,uBAAO;oBACP,+BAAe;oBACf,4BAAY;oBACZ,wBAAQ;oBACR,4BAAY;oBACZ,4BAAY;oBACZ,6BAAa;oBACb,gCAAgB;oBAChB,8BAAc;oBACd,yBAAS;oBACT,uBAAO;oBACP,8BAAc;oBACd,wBAAQ;iBACT;gBACD,WAAW,EAAE,IAAI;gBACjB,gBAAgB,EAAE,IAAI;aACvB,CAAC;YACF,gCAAc;YACd,gCAAc;YACd,2CAAmB;YACnB,mCAAe;YACf,2CAAmB;YACnB,iDAAsB;YACtB,mDAAuB;YACvB,2CAAmB;YACnB,8BAAa;YACb,kCAAe;YACf,6CAAoB;YACpB,+CAAqB;YACrB,+CAAqB;YACrB,iDAAsB;YACtB,yCAAkB;YAClB,4BAAY;YACZ,+CAAqB;YACrB,mCAAqB;YACrB,sBAAS;YACT,yCAAkB;YAClB,+CAAqB;YACrB,mCAAe;SAChB;QACD,WAAW,EAAE,CAAC,8BAAa,CAAC;QAC5B,SAAS,EAAE,CAAC,wBAAU,CAAC;KACxB,CAAC;GACW,SAAS,CAAG"}
@@ -12,3 +12,4 @@ export * from './context-snippet.entity';
12
12
  export * from './mcp-config.entity';
13
13
  export * from './mcp-tool.entity';
14
14
  export * from './custom-variable.entity';
15
+ export * from './tool-hook.entity';
@@ -28,4 +28,5 @@ __exportStar(require("./context-snippet.entity"), exports);
28
28
  __exportStar(require("./mcp-config.entity"), exports);
29
29
  __exportStar(require("./mcp-tool.entity"), exports);
30
30
  __exportStar(require("./custom-variable.entity"), exports);
31
+ __exportStar(require("./tool-hook.entity"), exports);
31
32
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core-entities/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,mDAAiC;AACjC,mDAAiC;AACjC,4DAA0C;AAC1C,yDAAuC;AACvC,qDAAmC;AACnC,yDAAuC;AACvC,yDAAuC;AACvC,0DAAwC;AACxC,6DAA2C;AAC3C,2DAAyC;AACzC,sDAAoC;AACpC,oDAAkC;AAClC,2DAAyC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core-entities/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,mDAAiC;AACjC,mDAAiC;AACjC,4DAA0C;AAC1C,yDAAuC;AACvC,qDAAmC;AACnC,yDAAuC;AACvC,yDAAuC;AACvC,0DAAwC;AACxC,6DAA2C;AAC3C,2DAAyC;AACzC,sDAAoC;AACpC,oDAAkC;AAClC,2DAAyC;AACzC,qDAAmC"}
@@ -0,0 +1,7 @@
1
+ import { BaseEntity } from './base.entity';
2
+ export declare class ToolHook extends BaseEntity {
3
+ tool_name: string;
4
+ timing: 'before' | 'after';
5
+ script_filename: string;
6
+ is_active: boolean;
7
+ }
@@ -0,0 +1,37 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ToolHook = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const base_entity_1 = require("./base.entity");
15
+ let ToolHook = class ToolHook extends base_entity_1.BaseEntity {
16
+ };
17
+ exports.ToolHook = ToolHook;
18
+ __decorate([
19
+ (0, typeorm_1.Column)(),
20
+ __metadata("design:type", String)
21
+ ], ToolHook.prototype, "tool_name", void 0);
22
+ __decorate([
23
+ (0, typeorm_1.Column)(),
24
+ __metadata("design:type", String)
25
+ ], ToolHook.prototype, "timing", void 0);
26
+ __decorate([
27
+ (0, typeorm_1.Column)(),
28
+ __metadata("design:type", String)
29
+ ], ToolHook.prototype, "script_filename", void 0);
30
+ __decorate([
31
+ (0, typeorm_1.Column)({ default: true }),
32
+ __metadata("design:type", Boolean)
33
+ ], ToolHook.prototype, "is_active", void 0);
34
+ exports.ToolHook = ToolHook = __decorate([
35
+ (0, typeorm_1.Entity)('tool_hooks')
36
+ ], ToolHook);
37
+ //# sourceMappingURL=tool-hook.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-hook.entity.js","sourceRoot":"","sources":["../../../src/core-entities/tool-hook.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAAyC;AACzC,+CAA2C;AAGpC,IAAM,QAAQ,GAAd,MAAM,QAAS,SAAQ,wBAAU;CAYvC,CAAA;AAZY,4BAAQ;AAEnB;IADC,IAAA,gBAAM,GAAE;;2CACS;AAGlB;IADC,IAAA,gBAAM,GAAE;;wCACkB;AAG3B;IADC,IAAA,gBAAM,GAAE;;iDACe;AAGxB;IADC,IAAA,gBAAM,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;;2CACP;mBAXR,QAAQ;IADpB,IAAA,gBAAM,EAAC,YAAY,CAAC;GACR,QAAQ,CAYpB"}
@@ -4,6 +4,7 @@ export declare class ExecuteShellHandler implements ActionHandler {
4
4
  readonly toolName = "execute_shell";
5
5
  private readonly logger;
6
6
  private readonly projectRoot;
7
+ private readonly tempDir;
7
8
  getDefinition(): string;
8
9
  execute(args: {
9
10
  [key: string]: any;
@@ -16,12 +16,15 @@ const class_transformer_1 = require("class-transformer");
16
16
  const class_validator_1 = require("class-validator");
17
17
  const handler_validation_error_1 = require("../errors/handler-validation.error");
18
18
  const utils_1 = require("../../utils");
19
+ const fs = require("fs/promises");
20
+ const path = require("path");
19
21
  const execAsync = (0, util_1.promisify)(child_process_1.exec);
20
22
  let ExecuteShellHandler = ExecuteShellHandler_1 = class ExecuteShellHandler {
21
23
  constructor() {
22
24
  this.toolName = 'execute_shell';
23
25
  this.logger = new common_1.Logger(ExecuteShellHandler_1.name);
24
26
  this.projectRoot = process.env.REPOBURG_PROJECT_PATH || process.cwd();
27
+ this.tempDir = path.join(this.projectRoot, '.repoburg', 'temp');
25
28
  }
26
29
  getDefinition() {
27
30
  const installExample = (0, utils_1.generateToolCall)({
@@ -74,23 +77,33 @@ ${scriptExample}
74
77
  let summary;
75
78
  let status = 'SUCCESS';
76
79
  let errorMessage;
80
+ await fs.mkdir(this.tempDir, { recursive: true });
81
+ const scriptPath = path.join(this.tempDir, `exec-${Date.now()}-${Math.random().toString(36).substring(7)}.sh`);
77
82
  try {
78
- const { stdout, stderr } = await execAsync(command_string, {
83
+ await fs.writeFile(scriptPath, command_string, { mode: 0o755 });
84
+ const shell = process.env.SHELL || '/bin/bash';
85
+ const command = `cd "${this.projectRoot}" && ${shell} -l "${scriptPath}"`;
86
+ const { stdout, stderr } = await execAsync(command, {
79
87
  cwd: this.projectRoot,
80
88
  maxBuffer: 128 * 1024 * 1024,
81
89
  timeout: 60000,
82
90
  });
83
91
  unifiedOutput = stdout || stderr || '(Command produced no output)';
84
- summary = `Shell command "${command_string}" executed.`;
92
+ summary = `Shell command executed.`;
85
93
  }
86
94
  catch (error) {
87
95
  const execError = error;
88
96
  unifiedOutput = `COMMAND FAILED: ${execError.message}\n\nSTDOUT:\n${execError.stdout || 'N/A'}\n\nSTDERR:\n${execError.stderr || 'N/A'}`;
89
- summary = `Shell command "${command_string}" failed.`;
97
+ summary = `Shell command failed.`;
90
98
  status = 'FAILURE';
91
99
  errorMessage = execError.message;
92
100
  this.logger.error(`Error executing shell command: ${unifiedOutput}`);
93
101
  }
102
+ finally {
103
+ await fs
104
+ .unlink(scriptPath)
105
+ .catch((err) => this.logger.warn(`Failed to cleanup temp file ${scriptPath}: ${err.message}`));
106
+ }
94
107
  context.outputs.commands.push({
95
108
  command: command_string,
96
109
  output: unifiedOutput,
@@ -1 +1 @@
1
- {"version":3,"file":"execute-shell.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/execute-shell.handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute-shell.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/execute-shell.handler.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export declare class RunCommandHandler implements ActionHandler {
4
4
  readonly toolName = "run_command";
5
5
  private readonly logger;
6
6
  private readonly projectRoot;
7
+ private readonly tempDir;
7
8
  private readonly ALLOWED_COMMANDS;
8
9
  getDefinition(): string;
9
10
  execute(args: {
@@ -16,12 +16,15 @@ const class_transformer_1 = require("class-transformer");
16
16
  const class_validator_1 = require("class-validator");
17
17
  const handler_validation_error_1 = require("../errors/handler-validation.error");
18
18
  const utils_1 = require("../../utils");
19
+ const fs = require("fs/promises");
20
+ const path = require("path");
19
21
  const execAsync = (0, util_1.promisify)(child_process_1.exec);
20
22
  let RunCommandHandler = RunCommandHandler_1 = class RunCommandHandler {
21
23
  constructor() {
22
24
  this.toolName = 'run_command';
23
25
  this.logger = new common_1.Logger(RunCommandHandler_1.name);
24
26
  this.projectRoot = process.env.REPOBURG_PROJECT_PATH || process.cwd();
27
+ this.tempDir = path.join(this.projectRoot, '.repoburg', 'temp');
25
28
  this.ALLOWED_COMMANDS = ['ls', 'tree', 'rg'];
26
29
  }
27
30
  getDefinition() {
@@ -74,8 +77,17 @@ ${rgExample1}
74
77
  let summary;
75
78
  let status = 'SUCCESS';
76
79
  let errorMessage;
80
+ await fs.mkdir(this.tempDir, { recursive: true });
81
+ const scriptPath = path.join(this.tempDir, `run-${Date.now()}-${Math.random().toString(36).substring(7)}.sh`);
77
82
  try {
78
- const { stdout, stderr } = await execAsync(command_string, {
83
+ const scriptContent = `
84
+ cd "${this.projectRoot}"
85
+ ${command_string}
86
+ `;
87
+ await fs.writeFile(scriptPath, scriptContent, { mode: 0o755 });
88
+ const shell = process.env.SHELL || '/bin/bash';
89
+ const command = `cd "${this.projectRoot}" && ${shell} -l "${scriptPath}"`;
90
+ const { stdout, stderr } = await execAsync(command, {
79
91
  cwd: this.projectRoot,
80
92
  maxBuffer: 128 * 1024 * 1024,
81
93
  timeout: 15000,
@@ -91,6 +103,11 @@ ${rgExample1}
91
103
  errorMessage = execError.message;
92
104
  this.logger.error(`Error executing command: ${unifiedOutput}`);
93
105
  }
106
+ finally {
107
+ await fs
108
+ .unlink(scriptPath)
109
+ .catch((err) => this.logger.warn(`Failed to cleanup temp file ${scriptPath}: ${err.message}`));
110
+ }
94
111
  context.outputs.commands.push({
95
112
  command: command_string,
96
113
  output: unifiedOutput,
@@ -1 +1 @@
1
- {"version":3,"file":"run-command.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/run-command.handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-command.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/run-command.handler.ts"],"names":[],"mappings":"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"}
@@ -45,7 +45,7 @@ export declare class PlanExecutionContext {
45
45
  };
46
46
  flags: {
47
47
  should_halt: boolean;
48
- halt_reason?: 'CONTEXT_REQUESTED' | 'VALIDATION_FAILED' | 'NEW_SESSION';
48
+ halt_reason?: string;
49
49
  is_final: boolean;
50
50
  follow_up_initiated: boolean;
51
51
  should_halt_hooks?: boolean;
@@ -9,59 +9,39 @@ Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.LlmOrchestrationModule = void 0;
10
10
  const common_1 = require("@nestjs/common");
11
11
  const typeorm_1 = require("@nestjs/typeorm");
12
- const core_entities_1 = require("../core-entities");
13
12
  const llm_output_parser_service_1 = require("./parser/llm-output-parser.service");
14
13
  const llm_turn_processor_service_1 = require("./llm-turn-processor.service");
15
- const follow_up_post_execution_hook_1 = require("./hooks/follow-up-post-execution.hook");
16
- const yolo_mode_post_execution_hook_1 = require("./hooks/yolo-mode-post-execution.hook");
17
- const application_state_module_1 = require("../application-state/application-state.module");
18
- const chat_module_1 = require("../interactive-chat/chat.module");
14
+ const ai_actions_module_1 = require("../ai-actions/ai-actions.module");
19
15
  const session_inputs_module_1 = require("../session-inputs/session-inputs.module");
16
+ const chat_module_1 = require("../interactive-chat/chat.module");
20
17
  const events_module_1 = require("../events/events.module");
18
+ const application_state_module_1 = require("../application-state/application-state.module");
19
+ const core_entities_1 = require("../core-entities");
20
+ const execution_logs_module_1 = require("../execution-logs/execution-logs.module");
21
21
  const system_prompts_module_1 = require("../system-prompts/system-prompts.module");
22
22
  const sessions_module_1 = require("../sessions/sessions.module");
23
- const run_command_handler_1 = require("./action-handlers/run-command.handler");
24
- const use_mcp_tool_handler_1 = require("./action-handlers/use-mcp-tool.handler");
25
- const request_context_handler_1 = require("./action-handlers/request-context.handler");
26
- const new_session_handler_1 = require("./action-handlers/new-session.handler");
27
- const final_handler_1 = require("./action-handlers/final.handler");
23
+ const workspace_module_1 = require("../workspace/workspace.module");
28
24
  const mcp_module_1 = require("../mcp/mcp.module");
29
- const frontend_notification_hook_1 = require("./hooks/frontend-notification.hook");
25
+ const tool_hooks_module_1 = require("../tool-hooks/tool-hooks.module");
30
26
  const create_file_handler_1 = require("./action-handlers/create-file.handler");
31
- const edit_file_handler_1 = require("./action-handlers/edit-file.handler");
32
27
  const delete_file_handler_1 = require("./action-handlers/delete-file.handler");
33
- const execution_logs_module_1 = require("../execution-logs/execution-logs.module");
28
+ const edit_file_handler_1 = require("./action-handlers/edit-file.handler");
29
+ const execute_shell_handler_1 = require("./action-handlers/execute-shell.handler");
30
+ const run_command_handler_1 = require("./action-handlers/run-command.handler");
31
+ const request_context_handler_1 = require("./action-handlers/request-context.handler");
32
+ const final_handler_1 = require("./action-handlers/final.handler");
33
+ const use_mcp_tool_handler_1 = require("./action-handlers/use-mcp-tool.handler");
34
34
  const quick_edit_handler_1 = require("./action-handlers/quick-edit.handler");
35
- const invalid_tool_feedback_hook_1 = require("./hooks/invalid-tool-feedback.hook");
36
- const patch_handler_1 = require("./action-handlers/patch.handler");
37
35
  const apply_diff_handler_1 = require("./action-handlers/apply-diff.handler");
36
+ const patch_handler_1 = require("./action-handlers/patch.handler");
37
+ const new_session_handler_1 = require("./action-handlers/new-session.handler");
38
38
  const write_todo_handler_1 = require("./action-handlers/write-todo.handler");
39
- const howto_handler_1 = require("./action-handlers/howto.handler");
40
- const execute_shell_handler_1 = require("./action-handlers/execute-shell.handler");
41
39
  const execute_code_handler_1 = require("./action-handlers/execute-code.handler");
42
- const actionHandlers = [
43
- create_file_handler_1.CreateFileHandler,
44
- edit_file_handler_1.EditFileHandler,
45
- delete_file_handler_1.DeleteFileHandler,
46
- quick_edit_handler_1.QuickEditHandler,
47
- apply_diff_handler_1.ApplyDiffHandler,
48
- patch_handler_1.PatchHandler,
49
- write_todo_handler_1.WriteTodoHandler,
50
- run_command_handler_1.RunCommandHandler,
51
- execute_shell_handler_1.ExecuteShellHandler,
52
- execute_code_handler_1.ExecuteCodeHandler,
53
- use_mcp_tool_handler_1.UseMcpToolHandler,
54
- request_context_handler_1.RequestContextHandler,
55
- new_session_handler_1.NewSessionHandler,
56
- final_handler_1.FinalHandler,
57
- howto_handler_1.HowtoHandler,
58
- ];
59
- const postExecutionHooks = [
60
- invalid_tool_feedback_hook_1.InvalidToolFeedbackHook,
61
- follow_up_post_execution_hook_1.FollowUpPostExecutionHook,
62
- yolo_mode_post_execution_hook_1.YoloModePostExecutionHook,
63
- frontend_notification_hook_1.FrontendNotificationHook,
64
- ];
40
+ const howto_handler_1 = require("./action-handlers/howto.handler");
41
+ const invalid_tool_feedback_hook_1 = require("./hooks/invalid-tool-feedback.hook");
42
+ const frontend_notification_hook_1 = require("./hooks/frontend-notification.hook");
43
+ const follow_up_post_execution_hook_1 = require("./hooks/follow-up-post-execution.hook");
44
+ const yolo_mode_post_execution_hook_1 = require("./hooks/yolo-mode-post-execution.hook");
65
45
  let LlmOrchestrationModule = class LlmOrchestrationModule {
66
46
  };
67
47
  exports.LlmOrchestrationModule = LlmOrchestrationModule;
@@ -69,33 +49,90 @@ exports.LlmOrchestrationModule = LlmOrchestrationModule = __decorate([
69
49
  (0, common_1.Module)({
70
50
  imports: [
71
51
  typeorm_1.TypeOrmModule.forFeature([core_entities_1.AIAction, core_entities_1.SessionInput]),
72
- application_state_module_1.ApplicationStateModule,
73
- (0, common_1.forwardRef)(() => chat_module_1.InteractiveChatModule),
52
+ (0, common_1.forwardRef)(() => ai_actions_module_1.AIActionsModule),
74
53
  (0, common_1.forwardRef)(() => session_inputs_module_1.SessionInputsModule),
54
+ (0, common_1.forwardRef)(() => chat_module_1.InteractiveChatModule),
75
55
  events_module_1.EventsModule,
76
56
  (0, common_1.forwardRef)(() => system_prompts_module_1.SystemPromptsModule),
77
57
  sessions_module_1.SessionsModule,
78
- mcp_module_1.McpModule,
58
+ application_state_module_1.ApplicationStateModule,
79
59
  execution_logs_module_1.ExecutionLogsModule,
60
+ workspace_module_1.WorkspaceModule,
61
+ mcp_module_1.McpModule,
62
+ tool_hooks_module_1.ToolHooksModule,
80
63
  ],
81
64
  providers: [
82
65
  llm_output_parser_service_1.LlmOutputParserService,
83
66
  llm_turn_processor_service_1.LlmTurnProcessorService,
84
- ...actionHandlers,
85
- ...postExecutionHooks,
67
+ create_file_handler_1.CreateFileHandler,
68
+ delete_file_handler_1.DeleteFileHandler,
69
+ edit_file_handler_1.EditFileHandler,
70
+ execute_shell_handler_1.ExecuteShellHandler,
71
+ run_command_handler_1.RunCommandHandler,
72
+ request_context_handler_1.RequestContextHandler,
73
+ final_handler_1.FinalHandler,
74
+ use_mcp_tool_handler_1.UseMcpToolHandler,
75
+ quick_edit_handler_1.QuickEditHandler,
76
+ apply_diff_handler_1.ApplyDiffHandler,
77
+ patch_handler_1.PatchHandler,
78
+ new_session_handler_1.NewSessionHandler,
79
+ write_todo_handler_1.WriteTodoHandler,
80
+ execute_code_handler_1.ExecuteCodeHandler,
81
+ howto_handler_1.HowtoHandler,
82
+ invalid_tool_feedback_hook_1.InvalidToolFeedbackHook,
83
+ frontend_notification_hook_1.FrontendNotificationHook,
84
+ follow_up_post_execution_hook_1.FollowUpPostExecutionHook,
85
+ yolo_mode_post_execution_hook_1.YoloModePostExecutionHook,
86
86
  {
87
87
  provide: 'ACTION_HANDLER_REGISTRY',
88
- useFactory: (...handlers) => {
88
+ useFactory: (createFile, deleteFile, editFile, executeShell, runCommand, requestContext, final, useMcpTool, quickEdit, applyDiff, patch, newSession, writeTodo, executeCode, howto) => {
89
89
  const registry = new Map();
90
- handlers.forEach((handler) => registry.set(handler.toolName, handler));
90
+ registry.set(createFile.toolName, createFile);
91
+ registry.set(deleteFile.toolName, deleteFile);
92
+ registry.set(editFile.toolName, editFile);
93
+ registry.set(executeShell.toolName, executeShell);
94
+ registry.set(runCommand.toolName, runCommand);
95
+ registry.set(requestContext.toolName, requestContext);
96
+ registry.set(final.toolName, final);
97
+ registry.set(useMcpTool.toolName, useMcpTool);
98
+ registry.set(quickEdit.toolName, quickEdit);
99
+ registry.set(applyDiff.toolName, applyDiff);
100
+ registry.set(patch.toolName, patch);
101
+ registry.set(newSession.toolName, newSession);
102
+ registry.set(writeTodo.toolName, writeTodo);
103
+ registry.set(executeCode.toolName, executeCode);
104
+ registry.set(howto.toolName, howto);
91
105
  return registry;
92
106
  },
93
- inject: actionHandlers,
107
+ inject: [
108
+ create_file_handler_1.CreateFileHandler,
109
+ delete_file_handler_1.DeleteFileHandler,
110
+ edit_file_handler_1.EditFileHandler,
111
+ execute_shell_handler_1.ExecuteShellHandler,
112
+ run_command_handler_1.RunCommandHandler,
113
+ request_context_handler_1.RequestContextHandler,
114
+ final_handler_1.FinalHandler,
115
+ use_mcp_tool_handler_1.UseMcpToolHandler,
116
+ quick_edit_handler_1.QuickEditHandler,
117
+ apply_diff_handler_1.ApplyDiffHandler,
118
+ patch_handler_1.PatchHandler,
119
+ new_session_handler_1.NewSessionHandler,
120
+ write_todo_handler_1.WriteTodoHandler,
121
+ execute_code_handler_1.ExecuteCodeHandler,
122
+ howto_handler_1.HowtoHandler,
123
+ ],
94
124
  },
95
125
  {
96
126
  provide: 'POST_EXECUTION_HOOKS',
97
- useFactory: (...hooks) => hooks,
98
- inject: postExecutionHooks,
127
+ useFactory: (invalidTool, frontendNotification, followUp, yoloMode) => {
128
+ return [invalidTool, yoloMode, followUp, frontendNotification];
129
+ },
130
+ inject: [
131
+ invalid_tool_feedback_hook_1.InvalidToolFeedbackHook,
132
+ frontend_notification_hook_1.FrontendNotificationHook,
133
+ follow_up_post_execution_hook_1.FollowUpPostExecutionHook,
134
+ yolo_mode_post_execution_hook_1.YoloModePostExecutionHook,
135
+ ],
99
136
  },
100
137
  ],
101
138
  exports: [llm_turn_processor_service_1.LlmTurnProcessorService, 'ACTION_HANDLER_REGISTRY'],
@@ -1 +1 @@
1
- {"version":3,"file":"llm-orchestration.module.js","sourceRoot":"","sources":["../../../src/llm-orchestration/llm-orchestration.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAoD;AACpD,6CAAgD;AAChD,oDAA0D;AAC1D,kFAA4E;AAC5E,6EAAuE;AACvE,yFAAkF;AAClF,yFAAkF;AAClF,4FAAuF;AACvF,iEAAwE;AACxE,mFAA8E;AAC9E,2DAAuD;AACvD,mFAA8E;AAC9E,iEAA6D;AAC7D,+EAA0E;AAC1E,iFAA2E;AAC3E,uFAAkF;AAClF,+EAA0E;AAC1E,mEAA+D;AAC/D,kDAA8C;AAE9C,mFAA8E;AAC9E,+EAA0E;AAC1E,2EAAsE;AACtE,+EAA0E;AAC1E,mFAA8E;AAC9E,6EAAwE;AACxE,mFAA6E;AAC7E,mEAA+D;AAC/D,6EAAwE;AACxE,6EAAwE;AACxE,mEAA+D;AAC/D,mFAA8E;AAC9E,iFAA4E;AAG5E,MAAM,cAAc,GAAG;IACrB,uCAAiB;IACjB,mCAAe;IACf,uCAAiB;IACjB,qCAAgB;IAChB,qCAAgB;IAChB,4BAAY;IACZ,qCAAgB;IAChB,uCAAiB;IACjB,2CAAmB;IACnB,yCAAkB;IAClB,wCAAiB;IACjB,+CAAqB;IACrB,uCAAiB;IACjB,4BAAY;IACZ,4BAAY;CACb,CAAC;AAEF,MAAM,kBAAkB,GAAG;IACzB,oDAAuB;IACvB,yDAAyB;IACzB,yDAAyB;IACzB,qDAAwB;CACzB,CAAC;AAqCK,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;CAAG,CAAA;AAAzB,wDAAsB;iCAAtB,sBAAsB;IAlClC,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,UAAU,CAAC,CAAC,wBAAQ,EAAE,4BAAY,CAAC,CAAC;YAClD,iDAAsB;YACtB,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,mCAAqB,CAAC;YACvC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,2CAAmB,CAAC;YACrC,4BAAY;YACZ,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,2CAAmB,CAAC;YACrC,gCAAc;YACd,sBAAS;YACT,2CAAmB;SACpB;QACD,SAAS,EAAE;YACT,kDAAsB;YACtB,oDAAuB;YACvB,GAAG,cAAc;YACjB,GAAG,kBAAkB;YACrB;gBACE,OAAO,EAAE,yBAAyB;gBAClC,UAAU,EAAE,CAAC,GAAG,QAAyB,EAAE,EAAE;oBAC3C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAyB,CAAC;oBAClD,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;oBACvE,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBACD,MAAM,EAAE,cAAc;aACvB;YACD;gBACE,OAAO,EAAE,sBAAsB;gBAC/B,UAAU,EAAE,CAAC,GAAG,KAAK,EAAE,EAAE,CAAC,KAAK;gBAC/B,MAAM,EAAE,kBAAkB;aAC3B;SACF;QACD,OAAO,EAAE,CAAC,oDAAuB,EAAE,yBAAyB,CAAC;KAC9D,CAAC;GACW,sBAAsB,CAAG"}
1
+ {"version":3,"file":"llm-orchestration.module.js","sourceRoot":"","sources":["../../../src/llm-orchestration/llm-orchestration.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAoD;AACpD,6CAAgD;AAChD,kFAA4E;AAC5E,6EAAuE;AACvE,uEAAkE;AAClE,mFAA8E;AAC9E,iEAAwE;AAExE,2DAAuD;AACvD,4FAAuF;AACvF,oDAA0D;AAC1D,mFAA8E;AAE9E,mFAA8E;AAC9E,iEAA6D;AAC7D,oEAAgE;AAChE,kDAA8C;AAC9C,uEAAkE;AAGlE,+EAA0E;AAC1E,+EAA0E;AAC1E,2EAAsE;AACtE,mFAA8E;AAC9E,+EAA0E;AAC1E,uFAAkF;AAClF,mEAA+D;AAC/D,iFAA2E;AAC3E,6EAAwE;AACxE,6EAAwE;AACxE,mEAA+D;AAC/D,+EAA0E;AAC1E,6EAAwE;AACxE,iFAA4E;AAC5E,mEAA+D;AAG/D,mFAA6E;AAC7E,mFAA8E;AAC9E,yFAAkF;AAClF,yFAAkF;AAsH3E,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;CAAG,CAAA;AAAzB,wDAAsB;iCAAtB,sBAAsB;IApHlC,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,UAAU,CAAC,CAAC,wBAAQ,EAAE,4BAAY,CAAC,CAAC;YAClD,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,mCAAe,CAAC;YACjC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,2CAAmB,CAAC;YACrC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,mCAAqB,CAAC;YACvC,4BAAY;YAEZ,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,2CAAmB,CAAC;YACrC,gCAAc;YACd,iDAAsB;YACtB,2CAAmB;YACnB,kCAAe;YACf,sBAAS;YACT,mCAAe;SAChB;QACD,SAAS,EAAE;YACT,kDAAsB;YACtB,oDAAuB;YAEvB,uCAAiB;YACjB,uCAAiB;YACjB,mCAAe;YACf,2CAAmB;YACnB,uCAAiB;YACjB,+CAAqB;YACrB,4BAAY;YACZ,wCAAiB;YACjB,qCAAgB;YAChB,qCAAgB;YAChB,4BAAY;YACZ,uCAAiB;YACjB,qCAAgB;YAChB,yCAAkB;YAClB,4BAAY;YAEZ,oDAAuB;YACvB,qDAAwB;YACxB,yDAAyB;YACzB,yDAAyB;YACzB;gBACE,OAAO,EAAE,yBAAyB;gBAClC,UAAU,EAAE,CACV,UAA6B,EAC7B,UAA6B,EAC7B,QAAyB,EACzB,YAAiC,EACjC,UAA6B,EAC7B,cAAqC,EACrC,KAAmB,EACnB,UAA6B,EAC7B,SAA2B,EAC3B,SAA2B,EAC3B,KAAmB,EACnB,UAA6B,EAC7B,SAA2B,EAC3B,WAA+B,EAC/B,KAAmB,EACnB,EAAE;oBACF,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;oBAC3B,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;oBAC9C,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;oBAC9C,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;oBAC1C,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;oBAClD,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;oBAC9C,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;oBACtD,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;oBACpC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;oBAC9C,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;oBAC5C,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;oBAC5C,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;oBACpC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;oBAC9C,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;oBAC5C,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;oBAChD,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;oBACpC,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBACD,MAAM,EAAE;oBACN,uCAAiB;oBACjB,uCAAiB;oBACjB,mCAAe;oBACf,2CAAmB;oBACnB,uCAAiB;oBACjB,+CAAqB;oBACrB,4BAAY;oBACZ,wCAAiB;oBACjB,qCAAgB;oBAChB,qCAAgB;oBAChB,4BAAY;oBACZ,uCAAiB;oBACjB,qCAAgB;oBAChB,yCAAkB;oBAClB,4BAAY;iBACb;aACF;YACD;gBACE,OAAO,EAAE,sBAAsB;gBAC/B,UAAU,EAAE,CACV,WAAoC,EACpC,oBAA8C,EAC9C,QAAmC,EACnC,QAAmC,EACnC,EAAE;oBAEF,OAAO,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC;gBACjE,CAAC;gBACD,MAAM,EAAE;oBACN,oDAAuB;oBACvB,qDAAwB;oBACxB,yDAAyB;oBACzB,yDAAyB;iBAC1B;aACF;SACF;QACD,OAAO,EAAE,CAAC,oDAAuB,EAAE,yBAAyB,CAAC;KAC9D,CAAC;GACW,sBAAsB,CAAG"}