repoburg 1.0.35 → 1.0.36

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 (22) hide show
  1. package/backend/.env +1 -1
  2. package/backend/dist/application-state/application-state.controller.d.ts +5 -0
  3. package/backend/dist/application-state/application-state.controller.js +22 -0
  4. package/backend/dist/application-state/application-state.controller.js.map +1 -1
  5. package/backend/dist/application-state/application-state.service.d.ts +2 -0
  6. package/backend/dist/application-state/application-state.service.js +11 -0
  7. package/backend/dist/application-state/application-state.service.js.map +1 -1
  8. package/backend/dist/application-state/dto/set-auto-context-fetch-enabled.dto.d.ts +3 -0
  9. package/backend/dist/application-state/dto/set-auto-context-fetch-enabled.dto.js +21 -0
  10. package/backend/dist/application-state/dto/set-auto-context-fetch-enabled.dto.js.map +1 -0
  11. package/backend/dist/llm-responses/llm-responses.module.js +2 -0
  12. package/backend/dist/llm-responses/llm-responses.module.js.map +1 -1
  13. package/backend/dist/llm-responses/llm-responses.service.d.ts +3 -1
  14. package/backend/dist/llm-responses/llm-responses.service.js +49 -3
  15. package/backend/dist/llm-responses/llm-responses.service.js.map +1 -1
  16. package/backend/dist/tsconfig.build.tsbuildinfo +1 -1
  17. package/backend/dist/workspace/workspace.module.js +1 -0
  18. package/backend/dist/workspace/workspace.module.js.map +1 -1
  19. package/backend/dist/workspace/workspace.service.d.ts +8 -0
  20. package/backend/dist/workspace/workspace.service.js +31 -0
  21. package/backend/dist/workspace/workspace.service.js.map +1 -1
  22. package/package.json +1 -1
package/backend/.env CHANGED
@@ -2,6 +2,6 @@
2
2
  # REPOBURG_PROJECT_PATH='/Users/celalertug/everest/local'
3
3
  # REPOBURG_PROJECT_PATH='/tmp/m/demo1'
4
4
  # REPOBURG_PROJECT_PATH='/Users/celalertug/github/typeorm'
5
- REPOBURG_PROJECT_PATH='/tmp/a/hb'
5
+ REPOBURG_PROJECT_PATH='/tmp/a/ecommerce/ecommerce'
6
6
  # REPOBURG_PROJECT_PATH='/tmp/a/fp'
7
7
  # REPOBURG_PROJECT_PATH='/Users/celalertug/everest/appdev3'
@@ -1,6 +1,7 @@
1
1
  import { ApplicationStateService } from './application-state.service';
2
2
  import { SetWebsocketEnabledDto } from './dto/set-websocket-enabled.dto';
3
3
  import { SetThemeDto } from './dto/set-theme.dto';
4
+ import { SetAutoContextFetchEnabledDto } from './dto/set-auto-context-fetch-enabled.dto';
4
5
  export declare class ApplicationStateController {
5
6
  private readonly applicationStateService;
6
7
  constructor(applicationStateService: ApplicationStateService);
@@ -8,6 +9,10 @@ export declare class ApplicationStateController {
8
9
  enabled: boolean;
9
10
  }>;
10
11
  setWebsocketEnabled(dto: SetWebsocketEnabledDto): Promise<void>;
12
+ getAutoContextFetchEnabled(): Promise<{
13
+ enabled: boolean;
14
+ }>;
15
+ setAutoContextFetchEnabled(dto: SetAutoContextFetchEnabledDto): Promise<void>;
11
16
  getTheme(): Promise<{
12
17
  theme: string;
13
18
  }>;
@@ -17,6 +17,7 @@ const common_1 = require("@nestjs/common");
17
17
  const application_state_service_1 = require("./application-state.service");
18
18
  const set_websocket_enabled_dto_1 = require("./dto/set-websocket-enabled.dto");
19
19
  const set_theme_dto_1 = require("./dto/set-theme.dto");
20
+ const set_auto_context_fetch_enabled_dto_1 = require("./dto/set-auto-context-fetch-enabled.dto");
20
21
  let ApplicationStateController = class ApplicationStateController {
21
22
  constructor(applicationStateService) {
22
23
  this.applicationStateService = applicationStateService;
@@ -28,6 +29,13 @@ let ApplicationStateController = class ApplicationStateController {
28
29
  async setWebsocketEnabled(dto) {
29
30
  await this.applicationStateService.setWebsocketEnabled(dto.enabled);
30
31
  }
32
+ async getAutoContextFetchEnabled() {
33
+ const enabled = await this.applicationStateService.getAutoContextFetchEnabled();
34
+ return { enabled };
35
+ }
36
+ async setAutoContextFetchEnabled(dto) {
37
+ await this.applicationStateService.setAutoContextFetchEnabled(dto.enabled);
38
+ }
31
39
  async getTheme() {
32
40
  const theme = await this.applicationStateService.getTheme();
33
41
  return { theme };
@@ -51,6 +59,20 @@ __decorate([
51
59
  __metadata("design:paramtypes", [set_websocket_enabled_dto_1.SetWebsocketEnabledDto]),
52
60
  __metadata("design:returntype", Promise)
53
61
  ], ApplicationStateController.prototype, "setWebsocketEnabled", null);
62
+ __decorate([
63
+ (0, common_1.Get)('auto-context-fetch-enabled'),
64
+ __metadata("design:type", Function),
65
+ __metadata("design:paramtypes", []),
66
+ __metadata("design:returntype", Promise)
67
+ ], ApplicationStateController.prototype, "getAutoContextFetchEnabled", null);
68
+ __decorate([
69
+ (0, common_1.Post)('auto-context-fetch-enabled'),
70
+ (0, common_1.HttpCode)(common_1.HttpStatus.NO_CONTENT),
71
+ __param(0, (0, common_1.Body)()),
72
+ __metadata("design:type", Function),
73
+ __metadata("design:paramtypes", [set_auto_context_fetch_enabled_dto_1.SetAutoContextFetchEnabledDto]),
74
+ __metadata("design:returntype", Promise)
75
+ ], ApplicationStateController.prototype, "setAutoContextFetchEnabled", null);
54
76
  __decorate([
55
77
  (0, common_1.Get)('theme'),
56
78
  __metadata("design:type", Function),
@@ -1 +1 @@
1
- {"version":3,"file":"application-state.controller.js","sourceRoot":"","sources":["../../src/application-state/application-state.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAOwB;AACxB,2EAAsE;AACtE,+EAAyE;AACzE,uDAAkD;AAG3C,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IACrC,YACmB,uBAAgD;QAAhD,4BAAuB,GAAvB,uBAAuB,CAAyB;IAChE,CAAC;IAGE,AAAN,KAAK,CAAC,mBAAmB;QACvB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,mBAAmB,EAAE,CAAC;QACzE,OAAO,EAAE,OAAO,EAAE,CAAC;IACrB,CAAC;IAIK,AAAN,KAAK,CAAC,mBAAmB,CACf,GAA2B;QAEnC,MAAM,IAAI,CAAC,uBAAuB,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACtE,CAAC;IAGK,AAAN,KAAK,CAAC,QAAQ;QACZ,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,CAAC;QAC5D,OAAO,EAAE,KAAK,EAAE,CAAC;IACnB,CAAC;IAIK,AAAN,KAAK,CAAC,QAAQ,CAAS,GAAgB;QACrC,MAAM,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC;CACF,CAAA;AA9BY,gEAA0B;AAM/B;IADL,IAAA,YAAG,EAAC,mBAAmB,CAAC;;;;qEAIxB;AAIK;IAFL,IAAA,aAAI,EAAC,mBAAmB,CAAC;IACzB,IAAA,iBAAQ,EAAC,mBAAU,CAAC,UAAU,CAAC;IAE7B,WAAA,IAAA,aAAI,GAAE,CAAA;;qCAAM,kDAAsB;;qEAGpC;AAGK;IADL,IAAA,YAAG,EAAC,OAAO,CAAC;;;;0DAIZ;AAIK;IAFL,IAAA,aAAI,EAAC,OAAO,CAAC;IACb,IAAA,iBAAQ,EAAC,mBAAU,CAAC,UAAU,CAAC;IAChB,WAAA,IAAA,aAAI,GAAE,CAAA;;qCAAM,2BAAW;;0DAEtC;qCA7BU,0BAA0B;IADtC,IAAA,mBAAU,EAAC,mBAAmB,CAAC;qCAGc,mDAAuB;GAFxD,0BAA0B,CA8BtC"}
1
+ {"version":3,"file":"application-state.controller.js","sourceRoot":"","sources":["../../src/application-state/application-state.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAOwB;AACxB,2EAAsE;AACtE,+EAAyE;AACzE,uDAAkD;AAClD,iGAAyF;AAGlF,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IACrC,YACmB,uBAAgD;QAAhD,4BAAuB,GAAvB,uBAAuB,CAAyB;IAChE,CAAC;IAGE,AAAN,KAAK,CAAC,mBAAmB;QACvB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,mBAAmB,EAAE,CAAC;QACzE,OAAO,EAAE,OAAO,EAAE,CAAC;IACrB,CAAC;IAIK,AAAN,KAAK,CAAC,mBAAmB,CACf,GAA2B;QAEnC,MAAM,IAAI,CAAC,uBAAuB,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACtE,CAAC;IAGK,AAAN,KAAK,CAAC,0BAA0B;QAC9B,MAAM,OAAO,GACX,MAAM,IAAI,CAAC,uBAAuB,CAAC,0BAA0B,EAAE,CAAC;QAClE,OAAO,EAAE,OAAO,EAAE,CAAC;IACrB,CAAC;IAIK,AAAN,KAAK,CAAC,0BAA0B,CACtB,GAAkC;QAE1C,MAAM,IAAI,CAAC,uBAAuB,CAAC,0BAA0B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7E,CAAC;IAGK,AAAN,KAAK,CAAC,QAAQ;QACZ,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,CAAC;QAC5D,OAAO,EAAE,KAAK,EAAE,CAAC;IACnB,CAAC;IAIK,AAAN,KAAK,CAAC,QAAQ,CAAS,GAAgB;QACrC,MAAM,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC;CACF,CAAA;AA7CY,gEAA0B;AAM/B;IADL,IAAA,YAAG,EAAC,mBAAmB,CAAC;;;;qEAIxB;AAIK;IAFL,IAAA,aAAI,EAAC,mBAAmB,CAAC;IACzB,IAAA,iBAAQ,EAAC,mBAAU,CAAC,UAAU,CAAC;IAE7B,WAAA,IAAA,aAAI,GAAE,CAAA;;qCAAM,kDAAsB;;qEAGpC;AAGK;IADL,IAAA,YAAG,EAAC,4BAA4B,CAAC;;;;4EAKjC;AAIK;IAFL,IAAA,aAAI,EAAC,4BAA4B,CAAC;IAClC,IAAA,iBAAQ,EAAC,mBAAU,CAAC,UAAU,CAAC;IAE7B,WAAA,IAAA,aAAI,GAAE,CAAA;;qCAAM,kEAA6B;;4EAG3C;AAGK;IADL,IAAA,YAAG,EAAC,OAAO,CAAC;;;;0DAIZ;AAIK;IAFL,IAAA,aAAI,EAAC,OAAO,CAAC;IACb,IAAA,iBAAQ,EAAC,mBAAU,CAAC,UAAU,CAAC;IAChB,WAAA,IAAA,aAAI,GAAE,CAAA;;qCAAM,2BAAW;;0DAEtC;qCA5CU,0BAA0B;IADtC,IAAA,mBAAU,EAAC,mBAAmB,CAAC;qCAGc,mDAAuB;GAFxD,0BAA0B,CA6CtC"}
@@ -9,6 +9,8 @@ export declare class ApplicationStateService {
9
9
  getActiveSessionId(): Promise<string | null>;
10
10
  setWebsocketEnabled(enabled: boolean): Promise<void>;
11
11
  getWebsocketEnabled(): Promise<boolean>;
12
+ setAutoContextFetchEnabled(enabled: boolean): Promise<void>;
13
+ getAutoContextFetchEnabled(): Promise<boolean>;
12
14
  setTheme(theme: string): Promise<void>;
13
15
  getTheme(): Promise<string>;
14
16
  }
@@ -19,6 +19,7 @@ const typeorm_2 = require("typeorm");
19
19
  const core_entities_1 = require("../core-entities");
20
20
  const ACTIVE_SESSION_KEY = 'activeSessionId';
21
21
  const WEBSOCKET_ENABLED_KEY = 'websocketEnabled';
22
+ const AUTO_CONTEXT_FETCH_ENABLED_KEY = 'autoContextFetchEnabled';
22
23
  const THEME_KEY = 'theme';
23
24
  let ApplicationStateService = class ApplicationStateService {
24
25
  constructor(applicationStateRepository) {
@@ -52,6 +53,16 @@ let ApplicationStateService = class ApplicationStateService {
52
53
  }
53
54
  return value === 'true';
54
55
  }
56
+ async setAutoContextFetchEnabled(enabled) {
57
+ await this.setState(AUTO_CONTEXT_FETCH_ENABLED_KEY, String(enabled));
58
+ }
59
+ async getAutoContextFetchEnabled() {
60
+ const value = await this.getState(AUTO_CONTEXT_FETCH_ENABLED_KEY);
61
+ if (value === null) {
62
+ return true;
63
+ }
64
+ return value === 'true';
65
+ }
55
66
  async setTheme(theme) {
56
67
  await this.setState(THEME_KEY, theme);
57
68
  }
@@ -1 +1 @@
1
- {"version":3,"file":"application-state.service.js","sourceRoot":"","sources":["../../src/application-state/application-state.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6CAAmD;AACnD,qCAAqC;AACrC,oDAAoD;AAEpD,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;AAC7C,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AACjD,MAAM,SAAS,GAAG,OAAO,CAAC;AAGnB,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAClC,YAEU,0BAAwD;QAAxD,+BAA0B,GAA1B,0BAA0B,CAA8B;IAC/D,CAAC;IAEI,KAAK,CAAC,QAAQ,CAAC,GAAW,EAAE,KAAa;QAC/C,MAAM,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC;YACzC,GAAG,EAAE,GAAG;YACR,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,GAAW;QAChC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,SAAS,CAAC;YAC5D,GAAG,EAAE,GAAG;SACT,CAAC,CAAC;QACH,OAAO,KAAK,EAAE,KAAK,IAAI,IAAI,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,SAAiB;QACxC,MAAM,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,OAAO,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,OAAgB;QACxC,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,mBAAmB;QACvB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;QAEzD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,KAAK,MAAM,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAa;QAC1B,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAE7C,OAAO,KAAK,IAAI,QAAQ,CAAC;IAC3B,CAAC;CACF,CAAA;AAlDY,0DAAuB;kCAAvB,uBAAuB;IADnC,IAAA,mBAAU,GAAE;IAGR,WAAA,IAAA,0BAAgB,EAAC,gCAAgB,CAAC,CAAA;qCACC,oBAAU;GAHrC,uBAAuB,CAkDnC"}
1
+ {"version":3,"file":"application-state.service.js","sourceRoot":"","sources":["../../src/application-state/application-state.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6CAAmD;AACnD,qCAAqC;AACrC,oDAAoD;AAEpD,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;AAC7C,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AACjD,MAAM,8BAA8B,GAAG,yBAAyB,CAAC;AACjE,MAAM,SAAS,GAAG,OAAO,CAAC;AAGnB,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAClC,YAEU,0BAAwD;QAAxD,+BAA0B,GAA1B,0BAA0B,CAA8B;IAC/D,CAAC;IAEI,KAAK,CAAC,QAAQ,CAAC,GAAW,EAAE,KAAa;QAC/C,MAAM,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC;YACzC,GAAG,EAAE,GAAG;YACR,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,GAAW;QAChC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,SAAS,CAAC;YAC5D,GAAG,EAAE,GAAG;SACT,CAAC,CAAC;QACH,OAAO,KAAK,EAAE,KAAK,IAAI,IAAI,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,SAAiB;QACxC,MAAM,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,OAAO,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,OAAgB;QACxC,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,mBAAmB;QACvB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;QAEzD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,KAAK,MAAM,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAC,OAAgB;QAC/C,MAAM,IAAI,CAAC,QAAQ,CAAC,8BAA8B,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,0BAA0B;QAC9B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CAAC;QAElE,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,KAAK,MAAM,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAa;QAC1B,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAE7C,OAAO,KAAK,IAAI,QAAQ,CAAC;IAC3B,CAAC;CACF,CAAA;AA/DY,0DAAuB;kCAAvB,uBAAuB;IADnC,IAAA,mBAAU,GAAE;IAGR,WAAA,IAAA,0BAAgB,EAAC,gCAAgB,CAAC,CAAA;qCACC,oBAAU;GAHrC,uBAAuB,CA+DnC"}
@@ -0,0 +1,3 @@
1
+ export declare class SetAutoContextFetchEnabledDto {
2
+ enabled: boolean;
3
+ }
@@ -0,0 +1,21 @@
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.SetAutoContextFetchEnabledDto = void 0;
13
+ const class_validator_1 = require("class-validator");
14
+ class SetAutoContextFetchEnabledDto {
15
+ }
16
+ exports.SetAutoContextFetchEnabledDto = SetAutoContextFetchEnabledDto;
17
+ __decorate([
18
+ (0, class_validator_1.IsBoolean)(),
19
+ __metadata("design:type", Boolean)
20
+ ], SetAutoContextFetchEnabledDto.prototype, "enabled", void 0);
21
+ //# sourceMappingURL=set-auto-context-fetch-enabled.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-auto-context-fetch-enabled.dto.js","sourceRoot":"","sources":["../../../src/application-state/dto/set-auto-context-fetch-enabled.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA4C;AAE5C,MAAa,6BAA6B;CAGzC;AAHD,sEAGC;AADC;IADC,IAAA,2BAAS,GAAE;;8DACK"}
@@ -16,6 +16,7 @@ const session_inputs_module_1 = require("../session-inputs/session-inputs.module
16
16
  const typeorm_1 = require("@nestjs/typeorm");
17
17
  const core_entities_1 = require("../core-entities");
18
18
  const events_module_1 = require("../events/events.module");
19
+ const workspace_module_1 = require("../workspace/workspace.module");
19
20
  let LlmResponsesModule = class LlmResponsesModule {
20
21
  };
21
22
  exports.LlmResponsesModule = LlmResponsesModule;
@@ -27,6 +28,7 @@ exports.LlmResponsesModule = LlmResponsesModule = __decorate([
27
28
  application_state_module_1.ApplicationStateModule,
28
29
  session_inputs_module_1.SessionInputsModule,
29
30
  events_module_1.EventsModule,
31
+ workspace_module_1.WorkspaceModule,
30
32
  ],
31
33
  controllers: [llm_responses_controller_1.LlmResponsesController],
32
34
  providers: [llm_responses_service_1.LlmResponsesService],
@@ -1 +1 @@
1
- {"version":3,"file":"llm-responses.module.js","sourceRoot":"","sources":["../../src/llm-responses/llm-responses.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,yEAAoE;AACpE,mEAA8D;AAC9D,iEAA6D;AAC7D,4FAAuF;AACvF,mFAA8E;AAC9E,6CAAgD;AAChD,oDAAgD;AAChD,2DAAuD;AAahD,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;CAAG,CAAA;AAArB,gDAAkB;6BAAlB,kBAAkB;IAX9B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,UAAU,CAAC,CAAC,4BAAY,CAAC,CAAC;YACxC,gCAAc;YACd,iDAAsB;YACtB,2CAAmB;YACnB,4BAAY;SACb;QACD,WAAW,EAAE,CAAC,iDAAsB,CAAC;QACrC,SAAS,EAAE,CAAC,2CAAmB,CAAC;KACjC,CAAC;GACW,kBAAkB,CAAG"}
1
+ {"version":3,"file":"llm-responses.module.js","sourceRoot":"","sources":["../../src/llm-responses/llm-responses.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,yEAAoE;AACpE,mEAA8D;AAC9D,iEAA6D;AAC7D,4FAAuF;AACvF,mFAA8E;AAC9E,6CAAgD;AAChD,oDAAgD;AAChD,2DAAuD;AACvD,oEAAgE;AAczD,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;CAAG,CAAA;AAArB,gDAAkB;6BAAlB,kBAAkB;IAZ9B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,UAAU,CAAC,CAAC,4BAAY,CAAC,CAAC;YACxC,gCAAc;YACd,iDAAsB;YACtB,2CAAmB;YACnB,4BAAY;YACZ,kCAAe;SAChB;QACD,WAAW,EAAE,CAAC,iDAAsB,CAAC;QACrC,SAAS,EAAE,CAAC,2CAAmB,CAAC;KACjC,CAAC;GACW,kBAAkB,CAAG"}
@@ -5,14 +5,16 @@ import { SubmitLlmResponseDto } from './dto/submit-llm-response.dto';
5
5
  import { SessionInput } from '../core-entities';
6
6
  import { Repository } from 'typeorm';
7
7
  import { EventsGateway } from '../events/events.gateway';
8
+ import { WorkspaceService } from '../workspace/workspace.service';
8
9
  export declare class LlmResponsesService {
9
10
  private sessionInputsRepository;
10
11
  private readonly sessionsService;
11
12
  private readonly applicationStateService;
12
13
  private readonly sessionInputsService;
13
14
  private readonly eventsGateway;
15
+ private readonly workspaceService;
14
16
  private readonly logger;
15
- constructor(sessionInputsRepository: Repository<SessionInput>, sessionsService: SessionsService, applicationStateService: ApplicationStateService, sessionInputsService: SessionInputsService, eventsGateway: EventsGateway);
17
+ constructor(sessionInputsRepository: Repository<SessionInput>, sessionsService: SessionsService, applicationStateService: ApplicationStateService, sessionInputsService: SessionInputsService, eventsGateway: EventsGateway, workspaceService: WorkspaceService);
16
18
  submit(dto: SubmitLlmResponseDto): Promise<SessionInput>;
17
19
  submitExternal(dto: SubmitLlmResponseDto): Promise<SessionInput>;
18
20
  }
@@ -23,13 +23,16 @@ const core_entities_1 = require("../core-entities");
23
23
  const typeorm_1 = require("@nestjs/typeorm");
24
24
  const typeorm_2 = require("typeorm");
25
25
  const events_gateway_1 = require("../events/events.gateway");
26
+ const workspace_service_1 = require("../workspace/workspace.service");
27
+ const ai_action_dto_1 = require("../llm-response-parser/dto/ai-action.dto");
26
28
  let LlmResponsesService = LlmResponsesService_1 = class LlmResponsesService {
27
- constructor(sessionInputsRepository, sessionsService, applicationStateService, sessionInputsService, eventsGateway) {
29
+ constructor(sessionInputsRepository, sessionsService, applicationStateService, sessionInputsService, eventsGateway, workspaceService) {
28
30
  this.sessionInputsRepository = sessionInputsRepository;
29
31
  this.sessionsService = sessionsService;
30
32
  this.applicationStateService = applicationStateService;
31
33
  this.sessionInputsService = sessionInputsService;
32
34
  this.eventsGateway = eventsGateway;
35
+ this.workspaceService = workspaceService;
33
36
  this.logger = new common_1.Logger(LlmResponsesService_1.name);
34
37
  }
35
38
  async submit(dto) {
@@ -70,11 +73,53 @@ let LlmResponsesService = LlmResponsesService_1 = class LlmResponsesService {
70
73
  }
71
74
  }
72
75
  this.logger.log(`Submitting LLM response to session: ${sessionId}`);
73
- return this.sessionInputsService.createFromRawLlmResponse(sessionId, {
76
+ const requestContextInput = await this.sessionInputsService.createFromRawLlmResponse(sessionId, {
74
77
  raw_llm_response: dto.raw_llm_response,
75
78
  execution_strategy: dto.execution_strategy,
76
79
  idempotency_key: dto.idempotency_key,
77
80
  });
81
+ const autoContextFetchEnabled = await this.applicationStateService.getAutoContextFetchEnabled();
82
+ const isRequestContextAction = requestContextInput.aiActions &&
83
+ requestContextInput.aiActions.length === 1 &&
84
+ requestContextInput.aiActions[0].action_type ===
85
+ ai_action_dto_1.AIActionType.REQUEST_CONTEXT;
86
+ if (autoContextFetchEnabled && isRequestContextAction) {
87
+ this.logger.log(`Auto Context Fetch triggered for session input ${requestContextInput.id}`);
88
+ const action = requestContextInput.aiActions[0];
89
+ const files = action.files
90
+ ?.split(',')
91
+ .map((f) => f.trim())
92
+ .filter(Boolean) || [];
93
+ const folders = action.folders
94
+ ?.split(',')
95
+ .map((f) => f.trim())
96
+ .filter(Boolean) || [];
97
+ const { valid, invalidPaths } = await this.workspaceService.validatePaths({ files, folders });
98
+ if (!valid) {
99
+ this.logger.warn(`Auto Context Fetch aborted due to invalid paths: ${invalidPaths.join(', ')}. Returning original context request.`);
100
+ return requestContextInput;
101
+ }
102
+ const previousInputs = await this.sessionInputsRepository.find({
103
+ where: { session_id: sessionId },
104
+ order: { created_at: 'DESC' },
105
+ take: 2,
106
+ });
107
+ const originalInput = previousInputs.find((i) => i.id !== requestContextInput.id);
108
+ if (!originalInput) {
109
+ this.logger.warn(`Auto Context Fetch could not find original user prompt for session ${sessionId}. Aborting.`);
110
+ return requestContextInput;
111
+ }
112
+ const session = await this.sessionsService.findOne(sessionId);
113
+ const newDto = {
114
+ user_prompt: originalInput.user_prompt,
115
+ execution_strategy: originalInput.execution_strategy,
116
+ ad_hoc_context_definition: JSON.stringify({ files, folders }),
117
+ context_template_id: session.default_followup_context_template_id,
118
+ };
119
+ this.logger.log(`Auto Context Fetch is re-submitting prompt for session ${sessionId}.`);
120
+ return this.sessionInputsService.create(sessionId, newDto);
121
+ }
122
+ return requestContextInput;
78
123
  }
79
124
  async submitExternal(dto) {
80
125
  const result = await this.submit(dto);
@@ -93,6 +138,7 @@ exports.LlmResponsesService = LlmResponsesService = LlmResponsesService_1 = __de
93
138
  sessions_service_1.SessionsService,
94
139
  application_state_service_1.ApplicationStateService,
95
140
  session_inputs_service_1.SessionInputsService,
96
- events_gateway_1.EventsGateway])
141
+ events_gateway_1.EventsGateway,
142
+ workspace_service_1.WorkspaceService])
97
143
  ], LlmResponsesService);
98
144
  //# sourceMappingURL=llm-responses.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"llm-responses.service.js","sourceRoot":"","sources":["../../src/llm-responses/llm-responses.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-responses.service.js","sourceRoot":"","sources":["../../src/llm-responses/llm-responses.service.ts"],"names":[],"mappings":"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"}