repoburg 1.0.65 → 1.0.67

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 (32) hide show
  1. package/.rgignore +1 -0
  2. package/backend/dist/action-execution/action-execution.service.js +28 -0
  3. package/backend/dist/action-execution/action-execution.service.js.map +1 -1
  4. package/backend/dist/ai-actions/ai-actions.service.js +43 -0
  5. package/backend/dist/ai-actions/ai-actions.service.js.map +1 -1
  6. package/backend/dist/context-generation/context-generation.service.js +55 -0
  7. package/backend/dist/context-generation/context-generation.service.js.map +1 -1
  8. package/backend/dist/llm-response-parser/llm-response-parser.service.js +10 -0
  9. package/backend/dist/llm-response-parser/llm-response-parser.service.js.map +1 -1
  10. package/backend/dist/main.js +2 -0
  11. package/backend/dist/main.js.map +1 -1
  12. package/backend/dist/projects/projects.service.js +20 -0
  13. package/backend/dist/projects/projects.service.js.map +1 -1
  14. package/backend/dist/sessions/sessions.service.js +49 -0
  15. package/backend/dist/sessions/sessions.service.js.map +1 -1
  16. package/backend/dist/tracing.d.ts +1 -0
  17. package/backend/dist/tracing.js +53 -0
  18. package/backend/dist/tracing.js.map +1 -0
  19. package/backend/dist/tsconfig.build.tsbuildinfo +1 -1
  20. package/backend/dist/utils/index.d.ts +1 -0
  21. package/backend/dist/utils/index.js +1 -0
  22. package/backend/dist/utils/index.js.map +1 -1
  23. package/backend/dist/utils/trace.decorator.d.ts +1 -0
  24. package/backend/dist/utils/trace.decorator.js +31 -0
  25. package/backend/dist/utils/trace.decorator.js.map +1 -0
  26. package/backend/dist/workspace/workspace.service.d.ts +1 -0
  27. package/backend/dist/workspace/workspace.service.js +84 -23
  28. package/backend/dist/workspace/workspace.service.js.map +1 -1
  29. package/backend/package.json +8 -1
  30. package/daemon/dist/api/services.js +1 -1
  31. package/package.json +3 -1
  32. package/platform-cli.js +12 -367
@@ -1 +1,2 @@
1
1
  export * from './fuzzy-search';
2
+ export * from './trace.decorator';
@@ -15,4 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./fuzzy-search"), exports);
18
+ __exportStar(require("./trace.decorator"), exports);
18
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,oDAAkC"}
@@ -0,0 +1 @@
1
+ export declare function Trace(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Trace = Trace;
4
+ const api_1 = require("@opentelemetry/api");
5
+ const tracer = api_1.trace.getTracer('repoburg-backend');
6
+ function Trace() {
7
+ return function (target, propertyKey, descriptor) {
8
+ const originalMethod = descriptor.value;
9
+ descriptor.value = function (...args) {
10
+ const spanName = `${target.constructor.name}#${propertyKey}`;
11
+ return tracer.startActiveSpan(spanName, async (span) => {
12
+ try {
13
+ return await originalMethod.apply(this, args);
14
+ }
15
+ catch (error) {
16
+ span.recordException(error);
17
+ span.setStatus({
18
+ code: api_1.SpanStatusCode.ERROR,
19
+ message: error.message,
20
+ });
21
+ throw error;
22
+ }
23
+ finally {
24
+ span.end();
25
+ }
26
+ });
27
+ };
28
+ return descriptor;
29
+ };
30
+ }
31
+ //# sourceMappingURL=trace.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trace.decorator.js","sourceRoot":"","sources":["../../src/utils/trace.decorator.ts"],"names":[],"mappings":";;AAWA,sBAkCC;AA7CD,4CAA2D;AAI3D,MAAM,MAAM,GAAG,WAAK,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;AAOnD,SAAgB,KAAK;IACnB,OAAO,UACL,MAAW,EACX,WAAmB,EACnB,UAA8B;QAE9B,MAAM,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC;QAGxC,UAAU,CAAC,KAAK,GAAG,UAAU,GAAG,IAAW;YACzC,MAAM,QAAQ,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC;YAG7D,OAAO,MAAM,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACrD,IAAI,CAAC;oBAEH,OAAO,MAAM,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAChD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAEf,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;oBAC5B,IAAI,CAAC,SAAS,CAAC;wBACb,IAAI,EAAE,oBAAc,CAAC,KAAK;wBAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;qBACvB,CAAC,CAAC;oBACH,MAAM,KAAK,CAAC;gBACd,CAAC;wBAAS,CAAC;oBAET,IAAI,CAAC,GAAG,EAAE,CAAC;gBACb,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC"}
@@ -8,6 +8,7 @@ export declare class WorkspaceService {
8
8
  private readonly contextGenerationService;
9
9
  private readonly logger;
10
10
  private projectRoot;
11
+ private tracer;
11
12
  private fileTreeCache;
12
13
  private fileTreeCacheTimestamp;
13
14
  private readonly CACHE_TTL_MS;
@@ -17,11 +17,13 @@ const fs = require("fs/promises");
17
17
  const path = require("path");
18
18
  const utils_1 = require("../utils");
19
19
  const child_process_1 = require("child_process");
20
+ const api_1 = require("@opentelemetry/api");
20
21
  let WorkspaceService = WorkspaceService_1 = class WorkspaceService {
21
22
  constructor(contextGenerationService) {
22
23
  this.contextGenerationService = contextGenerationService;
23
24
  this.logger = new common_1.Logger(WorkspaceService_1.name);
24
25
  this.projectRoot = process.env.REPOBURG_PROJECT_PATH || process.cwd();
26
+ this.tracer = api_1.trace.getTracer('repoburg-backend');
25
27
  this.fileTreeCache = null;
26
28
  this.fileTreeCacheTimestamp = null;
27
29
  this.CACHE_TTL_MS = 5 * 60 * 1000;
@@ -43,7 +45,7 @@ let WorkspaceService = WorkspaceService_1 = class WorkspaceService {
43
45
  }
44
46
  async getFilesFromRg() {
45
47
  const rgCommand = await this.contextGenerationService.getCommandPath('rg');
46
- const command = `${rgCommand} --files --hidden --glob '!.git'`;
48
+ const command = `${rgCommand} --files . --hidden --glob '!.git'`;
47
49
  try {
48
50
  this.logger.log(`Executing for file list: ${command}`);
49
51
  const { stdout } = await this.execAsync(command, {
@@ -128,29 +130,46 @@ let WorkspaceService = WorkspaceService_1 = class WorkspaceService {
128
130
  async search(query, type, page, limit) {
129
131
  this.logger.log(`Searching for "${query}" (type: ${type})`);
130
132
  const { files, folders } = await this.getFileTree();
131
- let searchPool = [];
132
- if (type === 'all') {
133
- searchPool = [
134
- ...files.map((p) => ({ path: p, type: 'file' })),
135
- ...folders.map((p) => ({ path: p, type: 'folder' })),
136
- ];
137
- }
138
- else if (type === 'files') {
139
- searchPool = files.map((p) => ({ path: p, type: 'file' }));
140
- }
141
- else if (type === 'folders') {
142
- searchPool = folders.map((p) => ({ path: p, type: 'folder' }));
143
- }
144
- const searchPoolStrings = searchPool.map((item) => item.path);
145
- const matchedPaths = (0, utils_1.fuzzySearch)(query, searchPoolStrings);
146
- const matchedPathSet = new Set(matchedPaths);
147
- const results = searchPool
148
- .filter((item) => matchedPathSet.has(item.path))
149
- .sort((a, b) => matchedPaths.indexOf(a.path) - matchedPaths.indexOf(b.path));
150
- const total = results.length;
151
- const startIndex = (page - 1) * limit;
133
+ const searchPool = this.tracer.startActiveSpan('workspace.search#prepareSearchPool', (span) => {
134
+ let pool = [];
135
+ if (type === 'all') {
136
+ pool = [
137
+ ...files.map((p) => ({ path: p, type: 'file' })),
138
+ ...folders.map((p) => ({ path: p, type: 'folder' })),
139
+ ];
140
+ }
141
+ else if (type === 'files') {
142
+ pool = files.map((p) => ({ path: p, type: 'file' }));
143
+ }
144
+ else if (type === 'folders') {
145
+ pool = folders.map((p) => ({ path: p, type: 'folder' }));
146
+ }
147
+ span.setAttribute('pool.size', pool.length);
148
+ span.setAttribute('search.type', type);
149
+ span.end();
150
+ return pool;
151
+ });
152
+ const matchedPaths = this.tracer.startActiveSpan('workspace.search#fuzzySearch', (span) => {
153
+ const searchPoolStrings = searchPool.map((item) => item.path);
154
+ const results = (0, utils_1.fuzzySearch)(query, searchPoolStrings);
155
+ span.setAttribute('search.query', query);
156
+ span.setAttribute('results.count', results.length);
157
+ span.end();
158
+ return results;
159
+ });
160
+ const { paginatedResults, total } = this.tracer.startActiveSpan('workspace.search#filterAndPaginate', (span) => {
161
+ const searchPoolMap = new Map(searchPool.map((item) => [item.path, item]));
162
+ const results = matchedPaths
163
+ .map((path) => searchPoolMap.get(path))
164
+ .filter((item) => item !== undefined);
165
+ const totalResults = results.length;
166
+ const startIndex = (page - 1) * limit;
167
+ const endIndex = page * limit;
168
+ const paginated = results.slice(startIndex, endIndex);
169
+ span.end();
170
+ return { paginatedResults: paginated, total: totalResults };
171
+ });
152
172
  const endIndex = page * limit;
153
- const paginatedResults = results.slice(startIndex, endIndex);
154
173
  this.logger.log(`Search for "${query}" (type: ${type}) found ${total} total results. Returning page ${page} with ${paginatedResults.length} items.`);
155
174
  return {
156
175
  results: paginatedResults,
@@ -165,6 +184,48 @@ let WorkspaceService = WorkspaceService_1 = class WorkspaceService {
165
184
  }
166
185
  };
167
186
  exports.WorkspaceService = WorkspaceService;
187
+ __decorate([
188
+ (0, utils_1.Trace)(),
189
+ __metadata("design:type", Function),
190
+ __metadata("design:paramtypes", [String, Object]),
191
+ __metadata("design:returntype", Promise)
192
+ ], WorkspaceService.prototype, "execAsync", null);
193
+ __decorate([
194
+ (0, utils_1.Trace)(),
195
+ __metadata("design:type", Function),
196
+ __metadata("design:paramtypes", []),
197
+ __metadata("design:returntype", Promise)
198
+ ], WorkspaceService.prototype, "getFilesFromRg", null);
199
+ __decorate([
200
+ (0, utils_1.Trace)(),
201
+ __metadata("design:type", Function),
202
+ __metadata("design:paramtypes", [Object]),
203
+ __metadata("design:returntype", Promise)
204
+ ], WorkspaceService.prototype, "validatePaths", null);
205
+ __decorate([
206
+ (0, utils_1.Trace)(),
207
+ __metadata("design:type", Function),
208
+ __metadata("design:paramtypes", []),
209
+ __metadata("design:returntype", Promise)
210
+ ], WorkspaceService.prototype, "getFileTree", null);
211
+ __decorate([
212
+ (0, utils_1.Trace)(),
213
+ __metadata("design:type", Function),
214
+ __metadata("design:paramtypes", []),
215
+ __metadata("design:returntype", Promise)
216
+ ], WorkspaceService.prototype, "invalidateFileTreeCache", null);
217
+ __decorate([
218
+ (0, utils_1.Trace)(),
219
+ __metadata("design:type", Function),
220
+ __metadata("design:paramtypes", [String, String, Number, Number]),
221
+ __metadata("design:returntype", Promise)
222
+ ], WorkspaceService.prototype, "search", null);
223
+ __decorate([
224
+ (0, utils_1.Trace)(),
225
+ __metadata("design:type", Function),
226
+ __metadata("design:paramtypes", [String]),
227
+ __metadata("design:returntype", Promise)
228
+ ], WorkspaceService.prototype, "getFileContent", null);
168
229
  exports.WorkspaceService = WorkspaceService = WorkspaceService_1 = __decorate([
169
230
  (0, common_1.Injectable)(),
170
231
  __metadata("design:paramtypes", [context_generation_service_1.ContextGenerationService])
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.service.js","sourceRoot":"","sources":["../../src/workspace/workspace.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace.service.js","sourceRoot":"","sources":["../../src/workspace/workspace.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAAyE;AACzE,iGAA4F;AAK5F,kCAAkC;AAClC,6BAA6B;AAC7B,oCAA8C;AAC9C,iDAAkD;AAClD,4CAA2C;AAQpC,IAAM,gBAAgB,wBAAtB,MAAM,gBAAgB;IAW3B,YACmB,wBAAkD;QAAlD,6BAAwB,GAAxB,wBAAwB,CAA0B;QAXpD,WAAM,GAAG,IAAI,eAAM,CAAC,kBAAgB,CAAC,IAAI,CAAC,CAAC;QACpD,gBAAW,GACjB,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAC7C,WAAM,GAAG,WAAK,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QAG7C,kBAAa,GAAoB,IAAI,CAAC;QACtC,2BAAsB,GAAkB,IAAI,CAAC;QACpC,iBAAY,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;IAI3C,CAAC;IAGI,SAAS,CACf,OAAe,EACf,OAAoB;QAEpB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAA,oBAAI,EAAC,OAAO,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;gBAC/C,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpC,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpC,IAAI,KAAK,EAAE,CAAC;oBACV,KAAK,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;oBAC5B,KAAK,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;oBAC5B,MAAM,CAAC,KAAK,CAAC,CAAC;oBACd,OAAO;gBACT,CAAC;gBACD,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;YACpD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAGa,AAAN,KAAK,CAAC,cAAc;QAC1B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAG3E,MAAM,OAAO,GAAG,GAAG,SAAS,oCAAoC,CAAC;QAEjE,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,OAAO,EAAE,CAAC,CAAC;YACvD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;gBAC/C,GAAG,EAAE,IAAI,CAAC,WAAW;gBACrB,SAAS,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI;gBAC5B,OAAO,EAAE,KAAK;aACf,CAAC,CAAC;YACH,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAEf,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;gBACnE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;gBACjD,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,oCAAoC,KAAK,CAAC,OAAO,EAAE,EACnD,KAAK,CAAC,KAAK,CACZ,CAAC;YACF,MAAM,IAAI,KAAK,CACb,gFAAgF,CACjF,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,sBAAsB,CAAC,UAAkB;QAC/C,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAClD,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,4BAAmB,CAC3B,mCAAmC,UAAU,EAAE,CAChD,CAAC;QACJ,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAEpE,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oCAAoC,UAAU,EAAE,CAAC,CAAC;YACnE,MAAM,IAAI,4BAAmB,CAC3B,0DAA0D,UAAU,EAAE,CACvE,CAAC;QACJ,CAAC;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;IAGK,AAAN,KAAK,CAAC,aAAa,CAAC,KAGnB;QACC,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;QAEpE,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;gBAChD,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC5B,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;QAED,OAAO;YACL,KAAK,EAAE,YAAY,CAAC,MAAM,KAAK,CAAC;YAChC,YAAY;SACb,CAAC;IACJ,CAAC;IAGK,AAAN,KAAK,CAAC,WAAW;QACf,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IACE,IAAI,CAAC,aAAa;YAClB,IAAI,CAAC,sBAAsB;YAC3B,GAAG,GAAG,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,YAAY,EACrD,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;YACnD,OAAO,IAAI,CAAC,aAAa,CAAC;QAC5B,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,gDAAgD,IAAI,CAAC,WAAW,EAAE,CACnE,CAAC;QACF,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAE1C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;YACpC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACrB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACtC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC,CAAC,CAAC;YACH,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAEtC,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,SAAS,KAAK,CAAC,MAAM,cAAc,OAAO,CAAC,MAAM,WAAW,CAC7D,CAAC;YAEF,IAAI,CAAC,aAAa,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;YACxC,IAAI,CAAC,sBAAsB,GAAG,GAAG,CAAC;YAElC,OAAO,IAAI,CAAC,aAAa,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;YACrD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAGK,AAAN,KAAK,CAAC,uBAAuB;QAC3B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QACjD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;IACrC,CAAC;IAGK,AAAN,KAAK,CAAC,MAAM,CACV,KAAa,EACb,IAAiC,EACjC,IAAY,EACZ,KAAa;QAEb,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB,KAAK,YAAY,IAAI,GAAG,CAAC,CAAC;QAE5D,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAEpD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAC5C,oCAAoC,EACpC,CAAC,IAAI,EAAE,EAAE;YACP,IAAI,IAAI,GAAgD,EAAE,CAAC;YAC3D,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;gBACnB,IAAI,GAAG;oBACL,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,CAAC,CAAC;oBACzD,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,QAAiB,EAAE,CAAC,CAAC;iBAC9D,CAAC;YACJ,CAAC;iBAAM,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC5B,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,CAAC,CAAC,CAAC;YAChE,CAAC;iBAAM,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC9B,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,QAAiB,EAAE,CAAC,CAAC,CAAC;YACpE,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC5C,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YACvC,IAAI,CAAC,GAAG,EAAE,CAAC;YACX,OAAO,IAAI,CAAC;QACd,CAAC,CACF,CAAC;QAEF,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAC9C,8BAA8B,EAC9B,CAAC,IAAI,EAAE,EAAE;YACP,MAAM,iBAAiB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9D,MAAM,OAAO,GAAG,IAAA,mBAAW,EAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;YACtD,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;YACzC,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,CAAC,GAAG,EAAE,CAAC;YACX,OAAO,OAAO,CAAC;QACjB,CAAC,CACF,CAAC;QAEF,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAC7D,oCAAoC,EACpC,CAAC,IAAI,EAAE,EAAE;YAGP,MAAM,aAAa,GAAG,IAAI,GAAG,CAC3B,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAC5C,CAAC;YAGF,MAAM,OAAO,GAA0B,YAAY;iBAChD,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;iBACtC,MAAM,CAAC,CAAC,IAAI,EAA+B,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;YAErE,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;YACpC,MAAM,UAAU,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;YACtC,MAAM,QAAQ,GAAG,IAAI,GAAG,KAAK,CAAC;YAC9B,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YAEtD,IAAI,CAAC,GAAG,EAAE,CAAC;YAEX,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;QAC9D,CAAC,CACF,CAAC;QAEF,MAAM,QAAQ,GAAG,IAAI,GAAG,KAAK,CAAC;QAE9B,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,eAAe,KAAK,YAAY,IAAI,WAAW,KAAK,kCAAkC,IAAI,SAAS,gBAAgB,CAAC,MAAM,SAAS,CACpI,CAAC;QAEF,OAAO;YACL,OAAO,EAAE,gBAAgB;YACzB,KAAK;YACL,IAAI;YACJ,OAAO,EAAE,QAAQ,GAAG,KAAK;SAC1B,CAAC;IACJ,CAAC;IAGK,AAAN,KAAK,CAAC,cAAc,CAAC,QAAgB;QACnC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,6BAA6B,QAAQ,EAAE,CAAC,CAAC;QAEzD,OAAO,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAClE,CAAC;CACF,CAAA;AApPY,4CAAgB;AAgBnB;IADP,IAAA,aAAK,GAAE;;;;iDAkBP;AAGa;IADb,IAAA,aAAK,GAAE;;;;sDA6BP;AAqBK;IADL,IAAA,aAAK,GAAE;;;;qDAqBP;AAGK;IADL,IAAA,aAAK,GAAE;;;;mDAuCP;AAGK;IADL,IAAA,aAAK,GAAE;;;;+DAKP;AAGK;IADL,IAAA,aAAK,GAAE;;;;8CAiFP;AAGK;IADL,IAAA,aAAK,GAAE;;;;sDAKP;2BAnPU,gBAAgB;IAD5B,IAAA,mBAAU,GAAE;qCAakC,qDAAwB;GAZ1D,gBAAgB,CAoP5B"}
@@ -25,6 +25,13 @@
25
25
  "migration:create": "npm run typeorm migration:create",
26
26
  "migration:revert": "npm run typeorm migration:revert -- -d dist/db/data-source.js"
27
27
  },
28
+ "dependencies": {
29
+ "@opentelemetry/api": "^1.9.0",
30
+ "@opentelemetry/auto-instrumentations-node": "^0.48.0",
31
+ "@opentelemetry/exporter-trace-otlp-http": "^0.52.0",
32
+ "@opentelemetry/sdk-node": "^0.52.0",
33
+ "@opentelemetry/sdk-trace-node": "^1.25.0"
34
+ },
28
35
  "devDependencies": {
29
36
  "@nestjs/cli": "^10.0.0",
30
37
  "@nestjs/schematics": "^10.0.0",
@@ -67,4 +74,4 @@
67
74
  "coverageDirectory": "../coverage",
68
75
  "testEnvironment": "node"
69
76
  }
70
- }
77
+ }
@@ -42,7 +42,7 @@ router.post('/:name/stop', async (req, res) => {
42
42
  res.status(404).json({ error: message });
43
43
  }
44
44
  });
45
- router.post('/:name/restart', checkAuth_1.checkAuth, async (req, res) => {
45
+ router.post('/:name/restart', async (req, res) => {
46
46
  try {
47
47
  const service = await serviceManager_1.serviceManager.restart(req.params.name);
48
48
  res.json(service);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "repoburg",
3
- "version": "1.0.65",
3
+ "version": "1.0.67",
4
4
  "description": "A local AI-powered software developer assistant that runs on your own machine.",
5
5
  "author": "Celal Ertug",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -29,6 +29,8 @@
29
29
  "dev:website": "npm run dev -w website",
30
30
  "start:daemon": "npm run start -w daemon",
31
31
  "dev:daemon": "npm run dev -w daemon",
32
+ "jaeger:start": "docker run -d --rm --name jaeger -e COLLECTOR_OTLP_ENABLED=true -p 16686:16686 -p 4318:4318 jaegertracing/all-in-one:latest",
33
+ "jaeger:stop": "docker stop jaeger",
32
34
  "lo:build": "npm run build -w backend && npm run build -w frontend && npm run build -w website && npm run build -w daemon",
33
35
  "lo:publish": "npm publish"
34
36
  },