@devflow-tools/server 0.1.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/dist/context/context.controller.d.ts +7 -4
  2. package/dist/context/context.controller.d.ts.map +1 -1
  3. package/dist/context/context.controller.js +16 -6
  4. package/dist/context/context.controller.js.map +1 -1
  5. package/dist/context/context.module.d.ts.map +1 -1
  6. package/dist/context/context.module.js +2 -1
  7. package/dist/context/context.module.js.map +1 -1
  8. package/dist/graph/graph.controller.d.ts +7 -7
  9. package/dist/graph/graph.controller.d.ts.map +1 -1
  10. package/dist/graph/graph.controller.js +24 -9
  11. package/dist/graph/graph.controller.js.map +1 -1
  12. package/dist/graph/graph.module.d.ts.map +1 -1
  13. package/dist/graph/graph.module.js +2 -1
  14. package/dist/graph/graph.module.js.map +1 -1
  15. package/dist/graph/graph.service.d.ts +2 -4
  16. package/dist/graph/graph.service.d.ts.map +1 -1
  17. package/dist/graph/graph.service.js +4 -0
  18. package/dist/graph/graph.service.js.map +1 -1
  19. package/dist/knowledge/knowledge.controller.d.ts +6 -3
  20. package/dist/knowledge/knowledge.controller.d.ts.map +1 -1
  21. package/dist/knowledge/knowledge.controller.js +15 -5
  22. package/dist/knowledge/knowledge.controller.js.map +1 -1
  23. package/dist/knowledge/knowledge.module.d.ts.map +1 -1
  24. package/dist/knowledge/knowledge.module.js +2 -1
  25. package/dist/knowledge/knowledge.module.js.map +1 -1
  26. package/dist/memory/memory.controller.d.ts +9 -6
  27. package/dist/memory/memory.controller.d.ts.map +1 -1
  28. package/dist/memory/memory.controller.js +21 -11
  29. package/dist/memory/memory.controller.js.map +1 -1
  30. package/dist/memory/memory.module.d.ts.map +1 -1
  31. package/dist/memory/memory.module.js +2 -1
  32. package/dist/memory/memory.module.js.map +1 -1
  33. package/dist/projects/projects.controller.d.ts +8 -0
  34. package/dist/projects/projects.controller.d.ts.map +1 -1
  35. package/dist/projects/projects.controller.js +20 -0
  36. package/dist/projects/projects.controller.js.map +1 -1
  37. package/dist/projects/projects.service.d.ts +3 -0
  38. package/dist/projects/projects.service.d.ts.map +1 -1
  39. package/dist/projects/projects.service.js +10 -0
  40. package/dist/projects/projects.service.js.map +1 -1
  41. package/dist/workflow/workflow.controller.d.ts +17 -6
  42. package/dist/workflow/workflow.controller.d.ts.map +1 -1
  43. package/dist/workflow/workflow.service.d.ts +18 -7
  44. package/dist/workflow/workflow.service.d.ts.map +1 -1
  45. package/dist/workflow/workflow.service.js +103 -30
  46. package/dist/workflow/workflow.service.js.map +1 -1
  47. package/package.json +10 -10
@@ -1,14 +1,17 @@
1
1
  import { ContextService, IndexStatus } from "./context.service.js";
2
+ import { ProjectsService } from "../projects/projects.service.js";
2
3
  import type { ContextResult } from "@devflow-tools/sdk";
3
4
  export declare class ContextController {
4
5
  private readonly service;
5
- constructor(service: ContextService);
6
- status(rootPath: string): Promise<IndexStatus>;
6
+ private readonly projects;
7
+ constructor(service: ContextService, projects: ProjectsService);
8
+ private resolveRootPath;
9
+ status(rootPath?: string): Promise<IndexStatus>;
7
10
  index(body: {
8
- rootPath: string;
11
+ rootPath?: string;
9
12
  }): Promise<IndexStatus>;
10
13
  build(body: {
11
- rootPath: string;
14
+ rootPath?: string;
12
15
  query: string;
13
16
  mode?: "fast" | "deep";
14
17
  maxTokens?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"context.controller.d.ts","sourceRoot":"","sources":["../../src/context/context.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,qBACa,iBAAiB;IACQ,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,cAAc;IAGtE,MAAM,CAAoB,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAKjE,KAAK,CAAS,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,WAAW,CAAC;IAK/D,KAAK,CAAS,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,CAAC;CAGnI"}
1
+ {"version":3,"file":"context.controller.d.ts","sourceRoot":"","sources":["../../src/context/context.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,qBACa,iBAAiB;IAEF,OAAO,CAAC,QAAQ,CAAC,OAAO;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBADT,OAAO,EAAE,cAAc,EACtB,QAAQ,EAAE,eAAe;IAGrE,OAAO,CAAC,eAAe;IAOjB,MAAM,CAAoB,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAKlE,KAAK,CAAS,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,WAAW,CAAC;IAKhE,KAAK,CAAS,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,CAAC;CAGpI"}
@@ -10,20 +10,28 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  var __param = (this && this.__param) || function (paramIndex, decorator) {
11
11
  return function (target, key) { decorator(target, key, paramIndex); }
12
12
  };
13
- import { Controller, Get, Post, Body, Query, Inject } from "@nestjs/common";
13
+ import { Controller, Get, Post, Body, Query, Inject, BadRequestException } from "@nestjs/common";
14
14
  import { ContextService } from "./context.service.js";
15
+ import { ProjectsService } from "../projects/projects.service.js";
15
16
  let ContextController = class ContextController {
16
- constructor(service) {
17
+ constructor(service, projects) {
17
18
  this.service = service;
19
+ this.projects = projects;
20
+ }
21
+ resolveRootPath(rootPath) {
22
+ const resolved = rootPath ?? this.projects.getActiveProjectRoot();
23
+ if (!resolved)
24
+ throw new BadRequestException("rootPath is required — no active project connected");
25
+ return resolved;
18
26
  }
19
27
  async status(rootPath) {
20
- return this.service.getStatus(rootPath);
28
+ return this.service.getStatus(this.resolveRootPath(rootPath));
21
29
  }
22
30
  async index(body) {
23
- return this.service.indexProject(body.rootPath);
31
+ return this.service.indexProject(this.resolveRootPath(body.rootPath));
24
32
  }
25
33
  async build(body) {
26
- return this.service.buildContext(body.rootPath, body.query, body.mode ?? "fast", body.maxTokens);
34
+ return this.service.buildContext(this.resolveRootPath(body.rootPath), body.query, body.mode ?? "fast", body.maxTokens);
27
35
  }
28
36
  };
29
37
  __decorate([
@@ -50,7 +58,9 @@ __decorate([
50
58
  ContextController = __decorate([
51
59
  Controller("context"),
52
60
  __param(0, Inject(ContextService)),
53
- __metadata("design:paramtypes", [ContextService])
61
+ __param(1, Inject(ProjectsService)),
62
+ __metadata("design:paramtypes", [ContextService,
63
+ ProjectsService])
54
64
  ], ContextController);
55
65
  export { ContextController };
56
66
  //# sourceMappingURL=context.controller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.controller.js","sourceRoot":"","sources":["../../src/context/context.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAe,MAAM,sBAAsB,CAAC;AAI5D,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC5B,YAAqD,OAAuB;QAAvB,YAAO,GAAP,OAAO,CAAgB;IAAG,CAAC;IAG1E,AAAN,KAAK,CAAC,MAAM,CAAoB,QAAgB;QAC9C,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAGK,AAAN,KAAK,CAAC,KAAK,CAAS,IAA0B;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClD,CAAC;IAGK,AAAN,KAAK,CAAC,KAAK,CAAS,IAAqF;QACvG,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACnG,CAAC;CACF,CAAA;AAbO;IADL,GAAG,CAAC,QAAQ,CAAC;IACA,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;;;;+CAE9B;AAGK;IADL,IAAI,CAAC,OAAO,CAAC;IACD,WAAA,IAAI,EAAE,CAAA;;;;8CAElB;AAGK;IADL,IAAI,CAAC,OAAO,CAAC;IACD,WAAA,IAAI,EAAE,CAAA;;;;8CAElB;AAhBU,iBAAiB;IAD7B,UAAU,CAAC,SAAS,CAAC;IAEP,WAAA,MAAM,CAAC,cAAc,CAAC,CAAA;qCAA2B,cAAc;GADjE,iBAAiB,CAiB7B"}
1
+ {"version":3,"file":"context.controller.js","sourceRoot":"","sources":["../../src/context/context.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACjG,OAAO,EAAE,cAAc,EAAe,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAI3D,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC5B,YAC2C,OAAuB,EACtB,QAAyB;QAD1B,YAAO,GAAP,OAAO,CAAgB;QACtB,aAAQ,GAAR,QAAQ,CAAiB;IAClE,CAAC;IAEI,eAAe,CAAC,QAAiB;QACvC,MAAM,QAAQ,GAAG,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,CAAC;QAClE,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,mBAAmB,CAAC,oDAAoD,CAAC,CAAC;QACnG,OAAO,QAAQ,CAAC;IAClB,CAAC;IAGK,AAAN,KAAK,CAAC,MAAM,CAAoB,QAAiB;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;IAChE,CAAC;IAGK,AAAN,KAAK,CAAC,KAAK,CAAS,IAA2B;QAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxE,CAAC;IAGK,AAAN,KAAK,CAAC,KAAK,CAAS,IAAsF;QACxG,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACzH,CAAC;CACF,CAAA;AAbO;IADL,GAAG,CAAC,QAAQ,CAAC;IACA,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;;;;+CAE9B;AAGK;IADL,IAAI,CAAC,OAAO,CAAC;IACD,WAAA,IAAI,EAAE,CAAA;;;;8CAElB;AAGK;IADL,IAAI,CAAC,OAAO,CAAC;IACD,WAAA,IAAI,EAAE,CAAA;;;;8CAElB;AAzBU,iBAAiB;IAD7B,UAAU,CAAC,SAAS,CAAC;IAGjB,WAAA,MAAM,CAAC,cAAc,CAAC,CAAA;IACtB,WAAA,MAAM,CAAC,eAAe,CAAC,CAAA;qCAD0B,cAAc;QACZ,eAAe;GAH1D,iBAAiB,CA0B7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"context.module.d.ts","sourceRoot":"","sources":["../../src/context/context.module.ts"],"names":[],"mappings":"AAIA,qBACa,aAAa;CAAG"}
1
+ {"version":3,"file":"context.module.d.ts","sourceRoot":"","sources":["../../src/context/context.module.ts"],"names":[],"mappings":"AAKA,qBACa,aAAa;CAAG"}
@@ -7,10 +7,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { Module } from "@nestjs/common";
8
8
  import { ContextService } from "./context.service.js";
9
9
  import { ContextController } from "./context.controller.js";
10
+ import { ProjectsModule } from "../projects/projects.module.js";
10
11
  let ContextModule = class ContextModule {
11
12
  };
12
13
  ContextModule = __decorate([
13
- Module({ controllers: [ContextController], providers: [ContextService], exports: [ContextService] })
14
+ Module({ imports: [ProjectsModule], controllers: [ContextController], providers: [ContextService], exports: [ContextService] })
14
15
  ], ContextModule);
15
16
  export { ContextModule };
16
17
  //# sourceMappingURL=context.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.module.js","sourceRoot":"","sources":["../../src/context/context.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGrD,IAAM,aAAa,GAAnB,MAAM,aAAa;CAAG,CAAA;AAAhB,aAAa;IADzB,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC;GACxF,aAAa,CAAG"}
1
+ {"version":3,"file":"context.module.js","sourceRoot":"","sources":["../../src/context/context.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAGzD,IAAM,aAAa,GAAnB,MAAM,aAAa;CAAG,CAAA;AAAhB,aAAa;IADzB,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,cAAc,CAAC,EAAE,WAAW,EAAE,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC;GACnH,aAAa,CAAG"}
@@ -1,13 +1,13 @@
1
1
  import { GraphService } from "./graph.service.js";
2
+ import { ProjectsService } from "../projects/projects.service.js";
2
3
  export declare class GraphController {
3
4
  private readonly service;
4
- constructor(service: GraphService);
5
- getFullGraph(rootPath: string): Promise<{
6
- nodes: import("@devflow-tools/sdk").GraphNode[];
7
- edges: import("@devflow-tools/sdk").GraphEdge[];
8
- }>;
9
- getNode(rootPath: string, nodeId: string): Promise<import("@colbymchenry/codegraph").Node>;
10
- expandNode(rootPath: string, nodeId: string, depth?: string, direction?: string): Promise<{
5
+ private readonly projects;
6
+ constructor(service: GraphService, projects: ProjectsService);
7
+ private resolveRootPath;
8
+ getFullGraph(rootPath?: string, view?: string): Promise<any>;
9
+ getNode(rootPath: string | undefined, nodeId: string): Promise<import("@colbymchenry/codegraph").Node>;
10
+ expandNode(rootPath: string | undefined, nodeId: string, depth?: string, direction?: string): Promise<{
11
11
  node: import("@devflow-tools/sdk").GraphNode | undefined;
12
12
  subGraph: import("@devflow-tools/sdk").SubGraph;
13
13
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"graph.controller.d.ts","sourceRoot":"","sources":["../../src/graph/graph.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,qBACa,eAAe;IACQ,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,YAAY;IAGlE,YAAY,CAAoB,QAAQ,EAAE,MAAM;;;;IAGhD,OAAO,CAAoB,QAAQ,EAAE,MAAM,EAAmB,MAAM,EAAE,MAAM;IAG5E,UAAU,CACK,QAAQ,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,EACV,SAAS,CAAC,EAAE,MAAM;;;;CAEzC"}
1
+ {"version":3,"file":"graph.controller.d.ts","sourceRoot":"","sources":["../../src/graph/graph.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAElE,qBACa,eAAe;IAEF,OAAO,CAAC,QAAQ,CAAC,OAAO;IACrB,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBADX,OAAO,EAAE,YAAY,EAClB,QAAQ,EAAE,eAAe;IAGrE,OAAO,CAAC,eAAe;IAOjB,YAAY,CAAoB,QAAQ,CAAC,EAAE,MAAM,EAAiB,IAAI,CAAC,EAAE,MAAM;IAM/E,OAAO,CAAoB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAmB,MAAM,EAAE,MAAM;IAGxF,UAAU,CACK,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC9B,MAAM,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,EACV,SAAS,CAAC,EAAE,MAAM;;;;CAEzC"}
@@ -10,21 +10,34 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  var __param = (this && this.__param) || function (paramIndex, decorator) {
11
11
  return function (target, key) { decorator(target, key, paramIndex); }
12
12
  };
13
- import { Controller, Get, Param, Query, Inject } from "@nestjs/common";
13
+ import { Controller, Get, Param, Query, Inject, BadRequestException } from "@nestjs/common";
14
14
  import { GraphService } from "./graph.service.js";
15
+ import { ProjectsService } from "../projects/projects.service.js";
15
16
  let GraphController = class GraphController {
16
- constructor(service) {
17
+ constructor(service, projects) {
17
18
  this.service = service;
19
+ this.projects = projects;
18
20
  }
19
- async getFullGraph(rootPath) { return this.service.getFullGraph(rootPath); }
20
- async getNode(rootPath, nodeId) { return this.service.getNode(rootPath, nodeId); }
21
- async expandNode(rootPath, nodeId, depth, direction) { return this.service.expandNode(rootPath, nodeId, Number(depth) || 2, direction || "both"); }
21
+ resolveRootPath(rootPath) {
22
+ const resolved = rootPath ?? this.projects.getActiveProjectRoot();
23
+ if (!resolved)
24
+ throw new BadRequestException("rootPath is required — no active project connected");
25
+ return resolved;
26
+ }
27
+ async getFullGraph(rootPath, view) {
28
+ if (view === "layered")
29
+ return this.service.getLayeredGraph(this.resolveRootPath(rootPath));
30
+ return this.service.getFullGraph(this.resolveRootPath(rootPath));
31
+ }
32
+ async getNode(rootPath, nodeId) { return this.service.getNode(this.resolveRootPath(rootPath), nodeId); }
33
+ async expandNode(rootPath, nodeId, depth, direction) { return this.service.expandNode(this.resolveRootPath(rootPath), nodeId, Number(depth) || 2, direction || "both"); }
22
34
  };
23
35
  __decorate([
24
36
  Get(),
25
37
  __param(0, Query("rootPath")),
38
+ __param(1, Query("view")),
26
39
  __metadata("design:type", Function),
27
- __metadata("design:paramtypes", [String]),
40
+ __metadata("design:paramtypes", [String, String]),
28
41
  __metadata("design:returntype", Promise)
29
42
  ], GraphController.prototype, "getFullGraph", null);
30
43
  __decorate([
@@ -32,7 +45,7 @@ __decorate([
32
45
  __param(0, Query("rootPath")),
33
46
  __param(1, Param("nodeId")),
34
47
  __metadata("design:type", Function),
35
- __metadata("design:paramtypes", [String, String]),
48
+ __metadata("design:paramtypes", [Object, String]),
36
49
  __metadata("design:returntype", Promise)
37
50
  ], GraphController.prototype, "getNode", null);
38
51
  __decorate([
@@ -42,13 +55,15 @@ __decorate([
42
55
  __param(2, Query("depth")),
43
56
  __param(3, Query("direction")),
44
57
  __metadata("design:type", Function),
45
- __metadata("design:paramtypes", [String, String, String, String]),
58
+ __metadata("design:paramtypes", [Object, String, String, String]),
46
59
  __metadata("design:returntype", Promise)
47
60
  ], GraphController.prototype, "expandNode", null);
48
61
  GraphController = __decorate([
49
62
  Controller("graph"),
50
63
  __param(0, Inject(GraphService)),
51
- __metadata("design:paramtypes", [GraphService])
64
+ __param(1, Inject(ProjectsService)),
65
+ __metadata("design:paramtypes", [GraphService,
66
+ ProjectsService])
52
67
  ], GraphController);
53
68
  export { GraphController };
54
69
  //# sourceMappingURL=graph.controller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"graph.controller.js","sourceRoot":"","sources":["../../src/graph/graph.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAG3C,IAAM,eAAe,GAArB,MAAM,eAAe;IAC1B,YAAmD,OAAqB;QAArB,YAAO,GAAP,OAAO,CAAc;IAAG,CAAC;IAGtE,AAAN,KAAK,CAAC,YAAY,CAAoB,QAAgB,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAGjG,AAAN,KAAK,CAAC,OAAO,CAAoB,QAAgB,EAAmB,MAAc,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAGhI,AAAN,KAAK,CAAC,UAAU,CACK,QAAgB,EAClB,MAAc,EACf,KAAc,EACV,SAAkB,IACpC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;CACjG,CAAA;AAZO;IADL,GAAG,EAAE;IACc,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;;;;mDAAkE;AAGjG;IADL,GAAG,CAAC,SAAS,CAAC;IACA,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;IAAoB,WAAA,KAAK,CAAC,QAAQ,CAAC,CAAA;;;;8CAAmE;AAGhI;IADL,GAAG,CAAC,gBAAgB,CAAC;IAEnB,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;IACjB,WAAA,KAAK,CAAC,QAAQ,CAAC,CAAA;IACf,WAAA,KAAK,CAAC,OAAO,CAAC,CAAA;IACd,WAAA,KAAK,CAAC,WAAW,CAAC,CAAA;;;;iDAC2E;AAfrF,eAAe;IAD3B,UAAU,CAAC,OAAO,CAAC;IAEL,WAAA,MAAM,CAAC,YAAY,CAAC,CAAA;qCAA2B,YAAY;GAD7D,eAAe,CAgB3B"}
1
+ {"version":3,"file":"graph.controller.js","sourceRoot":"","sources":["../../src/graph/graph.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAG3D,IAAM,eAAe,GAArB,MAAM,eAAe;IAC1B,YACyC,OAAqB,EAClB,QAAyB;QAD5B,YAAO,GAAP,OAAO,CAAc;QAClB,aAAQ,GAAR,QAAQ,CAAiB;IAClE,CAAC;IAEI,eAAe,CAAC,QAAiB;QACvC,MAAM,QAAQ,GAAG,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,CAAC;QAClE,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,mBAAmB,CAAC,oDAAoD,CAAC,CAAC;QACnG,OAAO,QAAQ,CAAC;IAClB,CAAC;IAGK,AAAN,KAAK,CAAC,YAAY,CAAoB,QAAiB,EAAiB,IAAa;QACnF,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC5F,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnE,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CAAoB,QAA4B,EAAmB,MAAc,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAGlK,AAAN,KAAK,CAAC,UAAU,CACK,QAA4B,EAC9B,MAAc,EACf,KAAc,EACV,SAAkB,IACpC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;CACvH,CAAA;AAfO;IADL,GAAG,EAAE;IACc,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;IAAqB,WAAA,KAAK,CAAC,MAAM,CAAC,CAAA;;;;mDAGtE;AAGK;IADL,GAAG,CAAC,SAAS,CAAC;IACA,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;IAAgC,WAAA,KAAK,CAAC,QAAQ,CAAC,CAAA;;;;8CAAyF;AAGlK;IADL,GAAG,CAAC,gBAAgB,CAAC;IAEnB,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;IACjB,WAAA,KAAK,CAAC,QAAQ,CAAC,CAAA;IACf,WAAA,KAAK,CAAC,OAAO,CAAC,CAAA;IACd,WAAA,KAAK,CAAC,WAAW,CAAC,CAAA;;;;iDACiG;AA3B3G,eAAe;IAD3B,UAAU,CAAC,OAAO,CAAC;IAGf,WAAA,MAAM,CAAC,YAAY,CAAC,CAAA;IACpB,WAAA,MAAM,CAAC,eAAe,CAAC,CAAA;qCADwB,YAAY;QACR,eAAe;GAH1D,eAAe,CA4B3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"graph.module.d.ts","sourceRoot":"","sources":["../../src/graph/graph.module.ts"],"names":[],"mappings":"AAKA,qBACa,WAAW;CAAG"}
1
+ {"version":3,"file":"graph.module.d.ts","sourceRoot":"","sources":["../../src/graph/graph.module.ts"],"names":[],"mappings":"AAMA,qBACa,WAAW;CAAG"}
@@ -6,12 +6,13 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { Module } from "@nestjs/common";
8
8
  import { ContextModule } from "../context/context.module.js";
9
+ import { ProjectsModule } from "../projects/projects.module.js";
9
10
  import { GraphService } from "./graph.service.js";
10
11
  import { GraphController } from "./graph.controller.js";
11
12
  let GraphModule = class GraphModule {
12
13
  };
13
14
  GraphModule = __decorate([
14
- Module({ imports: [ContextModule], controllers: [GraphController], providers: [GraphService], exports: [GraphService] })
15
+ Module({ imports: [ContextModule, ProjectsModule], controllers: [GraphController], providers: [GraphService], exports: [GraphService] })
15
16
  ], GraphModule);
16
17
  export { GraphModule };
17
18
  //# sourceMappingURL=graph.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"graph.module.js","sourceRoot":"","sources":["../../src/graph/graph.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGjD,IAAM,WAAW,GAAjB,MAAM,WAAW;CAAG,CAAA;AAAd,WAAW;IADvB,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC,eAAe,CAAC,EAAE,SAAS,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;GAC5G,WAAW,CAAG"}
1
+ {"version":3,"file":"graph.module.js","sourceRoot":"","sources":["../../src/graph/graph.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGjD,IAAM,WAAW,GAAjB,MAAM,WAAW;CAAG,CAAA;AAAd,WAAW;IADvB,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,WAAW,EAAE,CAAC,eAAe,CAAC,EAAE,SAAS,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;GAC5H,WAAW,CAAG"}
@@ -1,8 +1,6 @@
1
1
  export declare class GraphService {
2
- getFullGraph(rootPath: string): Promise<{
3
- nodes: import("@devflow-tools/sdk").GraphNode[];
4
- edges: import("@devflow-tools/sdk").GraphEdge[];
5
- }>;
2
+ getFullGraph(rootPath: string): Promise<any>;
3
+ getLayeredGraph(rootPath: string): Promise<any>;
6
4
  getNode(rootPath: string, nodeId: string): Promise<import("@colbymchenry/codegraph").Node>;
7
5
  expandNode(rootPath: string, nodeId: string, depth: number, direction: string): Promise<{
8
6
  node: import("@devflow-tools/sdk").GraphNode | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"graph.service.d.ts","sourceRoot":"","sources":["../../src/graph/graph.service.ts"],"names":[],"mappings":"AAIA,qBACa,YAAY;IACjB,YAAY,CAAC,QAAQ,EAAE,MAAM;;;;IAK7B,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IASxC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;;;;CAQpF"}
1
+ {"version":3,"file":"graph.service.d.ts","sourceRoot":"","sources":["../../src/graph/graph.service.ts"],"names":[],"mappings":"AAIA,qBACa,YAAY;IACjB,YAAY,CAAC,QAAQ,EAAE,MAAM;IAK7B,eAAe,CAAC,QAAQ,EAAE,MAAM;IAKhC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IASxC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;;;;CAQpF"}
@@ -12,6 +12,10 @@ let GraphService = class GraphService {
12
12
  const { graph } = await createEngines(rootPath);
13
13
  return graph.export();
14
14
  }
15
+ async getLayeredGraph(rootPath) {
16
+ const { graph } = await createEngines(rootPath);
17
+ return graph.getLayeredGraph();
18
+ }
15
19
  async getNode(rootPath, nodeId) {
16
20
  const { codegraph } = await createEngines(rootPath);
17
21
  const node = codegraph.getNode(nodeId);
@@ -1 +1 @@
1
- {"version":3,"file":"graph.service.js","sourceRoot":"","sources":["../../src/graph/graph.service.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAG9C,IAAM,YAAY,GAAlB,MAAM,YAAY;IACvB,KAAK,CAAC,YAAY,CAAC,QAAgB;QACjC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChD,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAgB,EAAE,MAAc;QAC5C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,iBAAiB,CAAC;gBACrC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,cAAc,EAAE,OAAO,EAAE,SAAS,MAAM,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE;aAC9F,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,MAAc,EAAE,KAAa,EAAE,SAAiB;QACjF,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EAAE;YACjC,KAAK;YACL,SAAS,EAAE,SAA+C;SAC3D,CAAC,CAAC;QACH,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;IAC9E,CAAC;CACF,CAAA;AAvBY,YAAY;IADxB,UAAU,EAAE;GACA,YAAY,CAuBxB"}
1
+ {"version":3,"file":"graph.service.js","sourceRoot":"","sources":["../../src/graph/graph.service.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAG9C,IAAM,YAAY,GAAlB,MAAM,YAAY;IACvB,KAAK,CAAC,YAAY,CAAC,QAAgB;QACjC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChD,OAAQ,KAAa,CAAC,MAAM,EAAE,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAAgB;QACpC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChD,OAAQ,KAAa,CAAC,eAAe,EAAE,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAgB,EAAE,MAAc;QAC5C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,iBAAiB,CAAC;gBACrC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,cAAc,EAAE,OAAO,EAAE,SAAS,MAAM,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE;aAC9F,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,MAAc,EAAE,KAAa,EAAE,SAAiB;QACjF,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EAAE;YACjC,KAAK;YACL,SAAS,EAAE,SAA+C;SAC3D,CAAC,CAAC;QACH,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;IAC9E,CAAC;CACF,CAAA;AA5BY,YAAY;IADxB,UAAU,EAAE;GACA,YAAY,CA4BxB"}
@@ -1,10 +1,13 @@
1
1
  import { KnowledgeService } from "./knowledge.service.js";
2
+ import { ProjectsService } from "../projects/projects.service.js";
2
3
  export declare class KnowledgeController {
3
4
  private readonly service;
4
- constructor(service: KnowledgeService);
5
- search(rootPath: string, q?: string, scope?: string): Promise<import("@devflow-tools/sdk").KnowledgeEntry[]>;
5
+ private readonly projects;
6
+ constructor(service: KnowledgeService, projects: ProjectsService);
7
+ private resolveRootPath;
8
+ search(rootPath?: string, q?: string, scope?: string): Promise<import("@devflow-tools/sdk").KnowledgeEntry[]>;
6
9
  sync(body: {
7
- rootPath: string;
10
+ rootPath?: string;
8
11
  pluginName?: string;
9
12
  }): Promise<{
10
13
  synced: number;
@@ -1 +1 @@
1
- {"version":3,"file":"knowledge.controller.d.ts","sourceRoot":"","sources":["../../src/knowledge/knowledge.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,qBACa,mBAAmB;IACQ,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,gBAAgB;IAG1E,MAAM,CAAoB,QAAQ,EAAE,MAAM,EAAc,CAAC,CAAC,EAAE,MAAM,EAAkB,KAAK,CAAC,EAAE,MAAM;IAKlG,IAAI,CAAS,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;;;CAGnE"}
1
+ {"version":3,"file":"knowledge.controller.d.ts","sourceRoot":"","sources":["../../src/knowledge/knowledge.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAElE,qBACa,mBAAmB;IAEF,OAAO,CAAC,QAAQ,CAAC,OAAO;IACzB,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBADP,OAAO,EAAE,gBAAgB,EAC1B,QAAQ,EAAE,eAAe;IAGrE,OAAO,CAAC,eAAe;IAOjB,MAAM,CAAoB,QAAQ,CAAC,EAAE,MAAM,EAAc,CAAC,CAAC,EAAE,MAAM,EAAkB,KAAK,CAAC,EAAE,MAAM;IAKnG,IAAI,CAAS,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;;;CAGpE"}
@@ -10,17 +10,25 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  var __param = (this && this.__param) || function (paramIndex, decorator) {
11
11
  return function (target, key) { decorator(target, key, paramIndex); }
12
12
  };
13
- import { Controller, Get, Post, Query, Body, Inject } from "@nestjs/common";
13
+ import { Controller, Get, Post, Query, Body, Inject, BadRequestException } from "@nestjs/common";
14
14
  import { KnowledgeService } from "./knowledge.service.js";
15
+ import { ProjectsService } from "../projects/projects.service.js";
15
16
  let KnowledgeController = class KnowledgeController {
16
- constructor(service) {
17
+ constructor(service, projects) {
17
18
  this.service = service;
19
+ this.projects = projects;
20
+ }
21
+ resolveRootPath(rootPath) {
22
+ const resolved = rootPath ?? this.projects.getActiveProjectRoot();
23
+ if (!resolved)
24
+ throw new BadRequestException("rootPath is required — no active project connected");
25
+ return resolved;
18
26
  }
19
27
  async search(rootPath, q, scope) {
20
- return this.service.search(rootPath, q ?? "", scope);
28
+ return this.service.search(this.resolveRootPath(rootPath), q ?? "", scope);
21
29
  }
22
30
  async sync(body) {
23
- return this.service.sync(body.rootPath, body.pluginName);
31
+ return this.service.sync(this.resolveRootPath(body.rootPath), body.pluginName);
24
32
  }
25
33
  };
26
34
  __decorate([
@@ -42,7 +50,9 @@ __decorate([
42
50
  KnowledgeController = __decorate([
43
51
  Controller("knowledge"),
44
52
  __param(0, Inject(KnowledgeService)),
45
- __metadata("design:paramtypes", [KnowledgeService])
53
+ __param(1, Inject(ProjectsService)),
54
+ __metadata("design:paramtypes", [KnowledgeService,
55
+ ProjectsService])
46
56
  ], KnowledgeController);
47
57
  export { KnowledgeController };
48
58
  //# sourceMappingURL=knowledge.controller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"knowledge.controller.js","sourceRoot":"","sources":["../../src/knowledge/knowledge.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAGnD,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAC9B,YAAuD,OAAyB;QAAzB,YAAO,GAAP,OAAO,CAAkB;IAAG,CAAC;IAG9E,AAAN,KAAK,CAAC,MAAM,CAAoB,QAAgB,EAAc,CAAU,EAAkB,KAAc;QACtG,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC;IACvD,CAAC;IAGK,AAAN,KAAK,CAAC,IAAI,CAAS,IAA+C;QAChE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3D,CAAC;CACF,CAAA;AARO;IADL,GAAG,CAAC,QAAQ,CAAC;IACA,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;IAAoB,WAAA,KAAK,CAAC,GAAG,CAAC,CAAA;IAAc,WAAA,KAAK,CAAC,OAAO,CAAC,CAAA;;;;iDAExF;AAGK;IADL,IAAI,CAAC,MAAM,CAAC;IACD,WAAA,IAAI,EAAE,CAAA;;;;+CAEjB;AAXU,mBAAmB;IAD/B,UAAU,CAAC,WAAW,CAAC;IAET,WAAA,MAAM,CAAC,gBAAgB,CAAC,CAAA;qCAA2B,gBAAgB;GADrE,mBAAmB,CAY/B"}
1
+ {"version":3,"file":"knowledge.controller.js","sourceRoot":"","sources":["../../src/knowledge/knowledge.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACjG,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAG3D,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAC9B,YAC6C,OAAyB,EAC1B,QAAyB;QADxB,YAAO,GAAP,OAAO,CAAkB;QAC1B,aAAQ,GAAR,QAAQ,CAAiB;IAClE,CAAC;IAEI,eAAe,CAAC,QAAiB;QACvC,MAAM,QAAQ,GAAG,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,CAAC;QAClE,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,mBAAmB,CAAC,oDAAoD,CAAC,CAAC;QACnG,OAAO,QAAQ,CAAC;IAClB,CAAC;IAGK,AAAN,KAAK,CAAC,MAAM,CAAoB,QAAiB,EAAc,CAAU,EAAkB,KAAc;QACvG,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC;IAC7E,CAAC;IAGK,AAAN,KAAK,CAAC,IAAI,CAAS,IAAgD;QACjE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACjF,CAAC;CACF,CAAA;AARO;IADL,GAAG,CAAC,QAAQ,CAAC;IACA,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;IAAqB,WAAA,KAAK,CAAC,GAAG,CAAC,CAAA;IAAc,WAAA,KAAK,CAAC,OAAO,CAAC,CAAA;;;;iDAEzF;AAGK;IADL,IAAI,CAAC,MAAM,CAAC;IACD,WAAA,IAAI,EAAE,CAAA;;;;+CAEjB;AApBU,mBAAmB;IAD/B,UAAU,CAAC,WAAW,CAAC;IAGnB,WAAA,MAAM,CAAC,gBAAgB,CAAC,CAAA;IACxB,WAAA,MAAM,CAAC,eAAe,CAAC,CAAA;qCAD4B,gBAAgB;QAChB,eAAe;GAH1D,mBAAmB,CAqB/B"}
@@ -1 +1 @@
1
- {"version":3,"file":"knowledge.module.d.ts","sourceRoot":"","sources":["../../src/knowledge/knowledge.module.ts"],"names":[],"mappings":"AAKA,qBACa,eAAe;CAAG"}
1
+ {"version":3,"file":"knowledge.module.d.ts","sourceRoot":"","sources":["../../src/knowledge/knowledge.module.ts"],"names":[],"mappings":"AAMA,qBACa,eAAe;CAAG"}
@@ -6,12 +6,13 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { Module } from "@nestjs/common";
8
8
  import { ContextModule } from "../context/context.module.js";
9
+ import { ProjectsModule } from "../projects/projects.module.js";
9
10
  import { KnowledgeService } from "./knowledge.service.js";
10
11
  import { KnowledgeController } from "./knowledge.controller.js";
11
12
  let KnowledgeModule = class KnowledgeModule {
12
13
  };
13
14
  KnowledgeModule = __decorate([
14
- Module({ imports: [ContextModule], controllers: [KnowledgeController], providers: [KnowledgeService], exports: [KnowledgeService] })
15
+ Module({ imports: [ContextModule, ProjectsModule], controllers: [KnowledgeController], providers: [KnowledgeService], exports: [KnowledgeService] })
15
16
  ], KnowledgeModule);
16
17
  export { KnowledgeModule };
17
18
  //# sourceMappingURL=knowledge.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"knowledge.module.js","sourceRoot":"","sources":["../../src/knowledge/knowledge.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGzD,IAAM,eAAe,GAArB,MAAM,eAAe;CAAG,CAAA;AAAlB,eAAe;IAD3B,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC,mBAAmB,CAAC,EAAE,SAAS,EAAE,CAAC,gBAAgB,CAAC,EAAE,OAAO,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAC;GACxH,eAAe,CAAG"}
1
+ {"version":3,"file":"knowledge.module.js","sourceRoot":"","sources":["../../src/knowledge/knowledge.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGzD,IAAM,eAAe,GAArB,MAAM,eAAe;CAAG,CAAA;AAAlB,eAAe;IAD3B,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,WAAW,EAAE,CAAC,mBAAmB,CAAC,EAAE,SAAS,EAAE,CAAC,gBAAgB,CAAC,EAAE,OAAO,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAC;GACxI,eAAe,CAAG"}
@@ -1,18 +1,21 @@
1
1
  import { MemoryService } from "./memory.service.js";
2
+ import { ProjectsService } from "../projects/projects.service.js";
2
3
  export declare class MemoryController {
3
4
  private readonly service;
4
- constructor(service: MemoryService);
5
- getAll(rootPath: string): Promise<import("./memory.service.js").MemoryData>;
6
- update(rootPath: string, layer: string, key: string, body: {
5
+ private readonly projects;
6
+ constructor(service: MemoryService, projects: ProjectsService);
7
+ private resolveRootPath;
8
+ getAll(rootPath?: string): Promise<import("./memory.service.js").MemoryData>;
9
+ update(rootPath: string | undefined, layer: string, key: string, body: {
7
10
  value: unknown;
8
11
  }): Promise<{
9
12
  ok: boolean;
10
13
  }>;
11
- getCandidates(rootPath: string): Promise<unknown[]>;
12
- approve(rootPath: string, id: string): Promise<{
14
+ getCandidates(rootPath?: string): Promise<unknown[]>;
15
+ approve(rootPath: string | undefined, id: string): Promise<{
13
16
  approved: boolean;
14
17
  }>;
15
- reject(rootPath: string, id: string): Promise<{
18
+ reject(rootPath: string | undefined, id: string): Promise<{
16
19
  rejected: boolean;
17
20
  }>;
18
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"memory.controller.d.ts","sourceRoot":"","sources":["../../src/memory/memory.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,qBACa,gBAAgB;IACQ,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,aAAa;IAGpE,MAAM,CAAoB,QAAQ,EAAE,MAAM;IAG1C,MAAM,CAAoB,QAAQ,EAAE,MAAM,EAAkB,KAAK,EAAE,MAAM,EAAgB,GAAG,EAAE,MAAM,EAAU,IAAI,EAAE;QAAE,KAAK,EAAE,OAAO,CAAA;KAAE;;;IAKtI,aAAa,CAAoB,QAAQ,EAAE,MAAM;IAGjD,OAAO,CAAoB,QAAQ,EAAE,MAAM,EAAe,EAAE,EAAE,MAAM;;;IAGpE,MAAM,CAAoB,QAAQ,EAAE,MAAM,EAAe,EAAE,EAAE,MAAM;;;CAC1E"}
1
+ {"version":3,"file":"memory.controller.d.ts","sourceRoot":"","sources":["../../src/memory/memory.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAElE,qBACa,gBAAgB;IAEF,OAAO,CAAC,QAAQ,CAAC,OAAO;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBADV,OAAO,EAAE,aAAa,EACpB,QAAQ,EAAE,eAAe;IAGrE,OAAO,CAAC,eAAe;IAOjB,MAAM,CAAoB,QAAQ,CAAC,EAAE,MAAM;IAG3C,MAAM,CAAoB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAkB,KAAK,EAAE,MAAM,EAAgB,GAAG,EAAE,MAAM,EAAU,IAAI,EAAE;QAAE,KAAK,EAAE,OAAO,CAAA;KAAE;;;IAKlJ,aAAa,CAAoB,QAAQ,CAAC,EAAE,MAAM;IAGlD,OAAO,CAAoB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAe,EAAE,EAAE,MAAM;;;IAGhF,MAAM,CAAoB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAe,EAAE,EAAE,MAAM;;;CACtF"}
@@ -10,20 +10,28 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  var __param = (this && this.__param) || function (paramIndex, decorator) {
11
11
  return function (target, key) { decorator(target, key, paramIndex); }
12
12
  };
13
- import { Controller, Get, Put, Post, Param, Body, Query, Inject } from "@nestjs/common";
13
+ import { Controller, Get, Put, Post, Param, Body, Query, Inject, BadRequestException } from "@nestjs/common";
14
14
  import { MemoryService } from "./memory.service.js";
15
+ import { ProjectsService } from "../projects/projects.service.js";
15
16
  let MemoryController = class MemoryController {
16
- constructor(service) {
17
+ constructor(service, projects) {
17
18
  this.service = service;
19
+ this.projects = projects;
18
20
  }
19
- async getAll(rootPath) { return this.service.getAll(rootPath); }
21
+ resolveRootPath(rootPath) {
22
+ const resolved = rootPath ?? this.projects.getActiveProjectRoot();
23
+ if (!resolved)
24
+ throw new BadRequestException("rootPath is required — no active project connected");
25
+ return resolved;
26
+ }
27
+ async getAll(rootPath) { return this.service.getAll(this.resolveRootPath(rootPath)); }
20
28
  async update(rootPath, layer, key, body) {
21
- await this.service.update(rootPath, layer, key, body.value);
29
+ await this.service.update(this.resolveRootPath(rootPath), layer, key, body.value);
22
30
  return { ok: true };
23
31
  }
24
- async getCandidates(rootPath) { return this.service.getCandidates(rootPath); }
25
- async approve(rootPath, id) { await this.service.approveCandidate(rootPath, id); return { approved: true }; }
26
- async reject(rootPath, id) { await this.service.rejectCandidate(rootPath, id); return { rejected: true }; }
32
+ async getCandidates(rootPath) { return this.service.getCandidates(this.resolveRootPath(rootPath)); }
33
+ async approve(rootPath, id) { await this.service.approveCandidate(this.resolveRootPath(rootPath), id); return { approved: true }; }
34
+ async reject(rootPath, id) { await this.service.rejectCandidate(this.resolveRootPath(rootPath), id); return { rejected: true }; }
27
35
  };
28
36
  __decorate([
29
37
  Get(),
@@ -39,7 +47,7 @@ __decorate([
39
47
  __param(2, Param("key")),
40
48
  __param(3, Body()),
41
49
  __metadata("design:type", Function),
42
- __metadata("design:paramtypes", [String, String, String, Object]),
50
+ __metadata("design:paramtypes", [Object, String, String, Object]),
43
51
  __metadata("design:returntype", Promise)
44
52
  ], MemoryController.prototype, "update", null);
45
53
  __decorate([
@@ -54,7 +62,7 @@ __decorate([
54
62
  __param(0, Query("rootPath")),
55
63
  __param(1, Param("id")),
56
64
  __metadata("design:type", Function),
57
- __metadata("design:paramtypes", [String, String]),
65
+ __metadata("design:paramtypes", [Object, String]),
58
66
  __metadata("design:returntype", Promise)
59
67
  ], MemoryController.prototype, "approve", null);
60
68
  __decorate([
@@ -62,13 +70,15 @@ __decorate([
62
70
  __param(0, Query("rootPath")),
63
71
  __param(1, Param("id")),
64
72
  __metadata("design:type", Function),
65
- __metadata("design:paramtypes", [String, String]),
73
+ __metadata("design:paramtypes", [Object, String]),
66
74
  __metadata("design:returntype", Promise)
67
75
  ], MemoryController.prototype, "reject", null);
68
76
  MemoryController = __decorate([
69
77
  Controller("memory"),
70
78
  __param(0, Inject(MemoryService)),
71
- __metadata("design:paramtypes", [MemoryService])
79
+ __param(1, Inject(ProjectsService)),
80
+ __metadata("design:paramtypes", [MemoryService,
81
+ ProjectsService])
72
82
  ], MemoryController);
73
83
  export { MemoryController };
74
84
  //# sourceMappingURL=memory.controller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory.controller.js","sourceRoot":"","sources":["../../src/memory/memory.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxF,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAG7C,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAC3B,YAAoD,OAAsB;QAAtB,YAAO,GAAP,OAAO,CAAe;IAAG,CAAC;IAGxE,AAAN,KAAK,CAAC,MAAM,CAAoB,QAAgB,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAGrF,AAAN,KAAK,CAAC,MAAM,CAAoB,QAAgB,EAAkB,KAAa,EAAgB,GAAW,EAAU,IAAwB;QAC1I,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAAC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;IACnF,CAAC;IAGK,AAAN,KAAK,CAAC,aAAa,CAAoB,QAAgB,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAGnG,AAAN,KAAK,CAAC,OAAO,CAAoB,QAAgB,EAAe,EAAU,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAGvJ,AAAN,KAAK,CAAC,MAAM,CAAoB,QAAgB,EAAe,EAAU,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;CAC5J,CAAA;AAfO;IADL,GAAG,EAAE;IACQ,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;;;;8CAA4D;AAGrF;IADL,GAAG,CAAC,aAAa,CAAC;IACL,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;IAAoB,WAAA,KAAK,CAAC,OAAO,CAAC,CAAA;IAAiB,WAAA,KAAK,CAAC,KAAK,CAAC,CAAA;IAAe,WAAA,IAAI,EAAE,CAAA;;;;8CAElH;AAGK;IADL,GAAG,CAAC,YAAY,CAAC;IACG,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;;;;qDAAmE;AAGnG;IADL,IAAI,CAAC,wBAAwB,CAAC;IAChB,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;IAAoB,WAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;+CAA8F;AAGvJ;IADL,IAAI,CAAC,uBAAuB,CAAC;IAChB,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;IAAoB,WAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;8CAA6F;AAlBhJ,gBAAgB;IAD5B,UAAU,CAAC,QAAQ,CAAC;IAEN,WAAA,MAAM,CAAC,aAAa,CAAC,CAAA;qCAA2B,aAAa;GAD/D,gBAAgB,CAmB5B"}
1
+ {"version":3,"file":"memory.controller.js","sourceRoot":"","sources":["../../src/memory/memory.controller.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"memory.module.d.ts","sourceRoot":"","sources":["../../src/memory/memory.module.ts"],"names":[],"mappings":"AAKA,qBACa,YAAY;CAAG"}
1
+ {"version":3,"file":"memory.module.d.ts","sourceRoot":"","sources":["../../src/memory/memory.module.ts"],"names":[],"mappings":"AAMA,qBACa,YAAY;CAAG"}
@@ -6,12 +6,13 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { Module } from "@nestjs/common";
8
8
  import { ContextModule } from "../context/context.module.js";
9
+ import { ProjectsModule } from "../projects/projects.module.js";
9
10
  import { MemoryService } from "./memory.service.js";
10
11
  import { MemoryController } from "./memory.controller.js";
11
12
  let MemoryModule = class MemoryModule {
12
13
  };
13
14
  MemoryModule = __decorate([
14
- Module({ imports: [ContextModule], controllers: [MemoryController], providers: [MemoryService], exports: [MemoryService] })
15
+ Module({ imports: [ContextModule, ProjectsModule], controllers: [MemoryController], providers: [MemoryService], exports: [MemoryService] })
15
16
  ], MemoryModule);
16
17
  export { MemoryModule };
17
18
  //# sourceMappingURL=memory.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory.module.js","sourceRoot":"","sources":["../../src/memory/memory.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAGnD,IAAM,YAAY,GAAlB,MAAM,YAAY;CAAG,CAAA;AAAf,YAAY;IADxB,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC,gBAAgB,CAAC,EAAE,SAAS,EAAE,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;GAC/G,YAAY,CAAG"}
1
+ {"version":3,"file":"memory.module.js","sourceRoot":"","sources":["../../src/memory/memory.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAGnD,IAAM,YAAY,GAAlB,MAAM,YAAY;CAAG,CAAA;AAAf,YAAY;IADxB,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,WAAW,EAAE,CAAC,gBAAgB,CAAC,EAAE,SAAS,EAAE,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;GAC/H,YAAY,CAAG"}
@@ -9,6 +9,14 @@ export declare class ProjectsController {
9
9
  rootPath: string;
10
10
  stack?: string[];
11
11
  }): Promise<ProjectDto>;
12
+ connect(body: {
13
+ rootPath: string;
14
+ }): Promise<{
15
+ rootPath: string;
16
+ }>;
17
+ getActive(): Promise<{
18
+ rootPath: string | null;
19
+ }>;
12
20
  delete(id: string): Promise<void>;
13
21
  }
14
22
  //# sourceMappingURL=projects.controller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"projects.controller.d.ts","sourceRoot":"","sources":["../../src/projects/projects.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEpE,qBACa,kBAAkB;IACQ,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,eAAe;IAGxE,IAAI,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAG7B,OAAO,CAAc,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAGrD,MAAM,CAAS,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;IAG/F,MAAM,CAAc,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CACrD"}
1
+ {"version":3,"file":"projects.controller.d.ts","sourceRoot":"","sources":["../../src/projects/projects.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEpE,qBACa,kBAAkB;IACQ,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,eAAe;IAGxE,IAAI,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAG7B,OAAO,CAAc,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAGrD,MAAM,CAAS,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;IAG/F,OAAO,CAAS,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAM1E,SAAS,IAAI,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IAKjD,MAAM,CAAc,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CACrD"}
@@ -19,6 +19,13 @@ let ProjectsController = class ProjectsController {
19
19
  async list() { return this.service.list(); }
20
20
  async getById(id) { return this.service.getById(id); }
21
21
  async create(body) { return this.service.create(body); }
22
+ async connect(body) {
23
+ this.service.setActiveProject(body.rootPath);
24
+ return { rootPath: body.rootPath };
25
+ }
26
+ async getActive() {
27
+ return { rootPath: this.service.getActiveProjectRoot() };
28
+ }
22
29
  async delete(id) { return this.service.delete(id); }
23
30
  };
24
31
  __decorate([
@@ -41,6 +48,19 @@ __decorate([
41
48
  __metadata("design:paramtypes", [Object]),
42
49
  __metadata("design:returntype", Promise)
43
50
  ], ProjectsController.prototype, "create", null);
51
+ __decorate([
52
+ Post("connect"),
53
+ __param(0, Body()),
54
+ __metadata("design:type", Function),
55
+ __metadata("design:paramtypes", [Object]),
56
+ __metadata("design:returntype", Promise)
57
+ ], ProjectsController.prototype, "connect", null);
58
+ __decorate([
59
+ Get("active"),
60
+ __metadata("design:type", Function),
61
+ __metadata("design:paramtypes", []),
62
+ __metadata("design:returntype", Promise)
63
+ ], ProjectsController.prototype, "getActive", null);
44
64
  __decorate([
45
65
  Delete(":id"),
46
66
  __param(0, Param("id")),
@@ -1 +1 @@
1
- {"version":3,"file":"projects.controller.js","sourceRoot":"","sources":["../../src/projects/projects.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACpF,OAAO,EAAE,eAAe,EAAc,MAAM,uBAAuB,CAAC;AAG7D,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAC7B,YAAsD,OAAwB;QAAxB,YAAO,GAAP,OAAO,CAAiB;IAAG,CAAC;IAG5E,AAAN,KAAK,CAAC,IAAI,KAA4B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAG7D,AAAN,KAAK,CAAC,OAAO,CAAc,EAAU,IAAyB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAG1F,AAAN,KAAK,CAAC,MAAM,CAAS,IAA0D,IAAyB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAGrI,AAAN,KAAK,CAAC,MAAM,CAAc,EAAU,IAAmB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;CACzF,CAAA;AAVO;IADL,GAAG,EAAE;;;;8CAC6D;AAG7D;IADL,GAAG,CAAC,KAAK,CAAC;IACI,WAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;iDAAsE;AAG1F;IADL,IAAI,EAAE;IACO,WAAA,IAAI,EAAE,CAAA;;;;gDAAuH;AAGrI;IADL,MAAM,CAAC,KAAK,CAAC;IACA,WAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;gDAA+D;AAb7E,kBAAkB;IAD9B,UAAU,CAAC,UAAU,CAAC;IAER,WAAA,MAAM,CAAC,eAAe,CAAC,CAAA;qCAA2B,eAAe;GADnE,kBAAkB,CAc9B"}
1
+ {"version":3,"file":"projects.controller.js","sourceRoot":"","sources":["../../src/projects/projects.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACpF,OAAO,EAAE,eAAe,EAAc,MAAM,uBAAuB,CAAC;AAG7D,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAC7B,YAAsD,OAAwB;QAAxB,YAAO,GAAP,OAAO,CAAiB;IAAG,CAAC;IAG5E,AAAN,KAAK,CAAC,IAAI,KAA4B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAG7D,AAAN,KAAK,CAAC,OAAO,CAAc,EAAU,IAAyB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAG1F,AAAN,KAAK,CAAC,MAAM,CAAS,IAA0D,IAAyB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAGrI,AAAN,KAAK,CAAC,OAAO,CAAS,IAA0B;QAC9C,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC7C,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;IACrC,CAAC;IAGK,AAAN,KAAK,CAAC,SAAS;QACb,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC;IAC3D,CAAC;IAGK,AAAN,KAAK,CAAC,MAAM,CAAc,EAAU,IAAmB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;CACzF,CAAA;AArBO;IADL,GAAG,EAAE;;;;8CAC6D;AAG7D;IADL,GAAG,CAAC,KAAK,CAAC;IACI,WAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;iDAAsE;AAG1F;IADL,IAAI,EAAE;IACO,WAAA,IAAI,EAAE,CAAA;;;;gDAAuH;AAGrI;IADL,IAAI,CAAC,SAAS,CAAC;IACD,WAAA,IAAI,EAAE,CAAA;;;;iDAGpB;AAGK;IADL,GAAG,CAAC,QAAQ,CAAC;;;;mDAGb;AAGK;IADL,MAAM,CAAC,KAAK,CAAC;IACA,WAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;gDAA+D;AAxB7E,kBAAkB;IAD9B,UAAU,CAAC,UAAU,CAAC;IAER,WAAA,MAAM,CAAC,eAAe,CAAC,CAAA;qCAA2B,eAAe;GADnE,kBAAkB,CAyB9B"}
@@ -7,6 +7,9 @@ export interface ProjectDto {
7
7
  }
8
8
  export declare class ProjectsService {
9
9
  private projects;
10
+ private activeProjectRoot;
11
+ setActiveProject(rootPath: string): void;
12
+ getActiveProjectRoot(): string | null;
10
13
  list(): Promise<ProjectDto[]>;
11
14
  getById(id: string): Promise<ProjectDto>;
12
15
  create(input: {
@@ -1 +1 @@
1
- {"version":3,"file":"projects.service.d.ts","sourceRoot":"","sources":["../../src/projects/projects.service.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBACa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAiC;IAE3C,IAAI,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAI7B,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAMxC,MAAM,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;IAOxF,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAIxC"}
1
+ {"version":3,"file":"projects.service.d.ts","sourceRoot":"","sources":["../../src/projects/projects.service.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBACa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAiC;IACjD,OAAO,CAAC,iBAAiB,CAA2D;IAEpF,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIxC,oBAAoB,IAAI,MAAM,GAAG,IAAI;IAI/B,IAAI,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAI7B,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAMxC,MAAM,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;IAUxF,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAIxC"}
@@ -9,6 +9,13 @@ import { ErrorCode } from "../common/error-codes.js";
9
9
  let ProjectsService = class ProjectsService {
10
10
  constructor() {
11
11
  this.projects = new Map();
12
+ this.activeProjectRoot = process.env.DEVFLOW_PROJECT_ROOT ?? null;
13
+ }
14
+ setActiveProject(rootPath) {
15
+ this.activeProjectRoot = rootPath;
16
+ }
17
+ getActiveProjectRoot() {
18
+ return this.activeProjectRoot;
12
19
  }
13
20
  async list() {
14
21
  return Array.from(this.projects.values());
@@ -23,6 +30,9 @@ let ProjectsService = class ProjectsService {
23
30
  const id = `proj_${Date.now()}_${Math.random().toString(36).slice(2, 7)}`;
24
31
  const project = { id, name: input.name, rootPath: input.rootPath, stack: input.stack, createdAt: Date.now() };
25
32
  this.projects.set(id, project);
33
+ if (!this.activeProjectRoot) {
34
+ this.activeProjectRoot = input.rootPath;
35
+ }
26
36
  return project;
27
37
  }
28
38
  async delete(id) {
@@ -1 +1 @@
1
- {"version":3,"file":"projects.service.js","sourceRoot":"","sources":["../../src/projects/projects.service.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAW9C,IAAM,eAAe,GAArB,MAAM,eAAe;IAArB;QACG,aAAQ,GAAG,IAAI,GAAG,EAAsB,CAAC;IAuBnD,CAAC;IArBC,KAAK,CAAC,IAAI;QACR,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAU;QACtB,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChC,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,iBAAiB,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACzI,OAAO,CAAC,CAAC;IACX,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAA2D;QACtE,MAAM,EAAE,GAAG,QAAQ,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC1E,MAAM,OAAO,GAAe,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAC1H,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAC/B,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,MAAM,IAAI,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,iBAAiB,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAC7J,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;CACF,CAAA;AAxBY,eAAe;IAD3B,UAAU,EAAE;GACA,eAAe,CAwB3B"}
1
+ {"version":3,"file":"projects.service.js","sourceRoot":"","sources":["../../src/projects/projects.service.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAW9C,IAAM,eAAe,GAArB,MAAM,eAAe;IAArB;QACG,aAAQ,GAAG,IAAI,GAAG,EAAsB,CAAC;QACzC,sBAAiB,GAAkB,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,IAAI,CAAC;IAkCtF,CAAC;IAhCC,gBAAgB,CAAC,QAAgB;QAC/B,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC;IACpC,CAAC;IAED,oBAAoB;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,IAAI;QACR,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAU;QACtB,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChC,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,iBAAiB,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACzI,OAAO,CAAC,CAAC;IACX,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAA2D;QACtE,MAAM,EAAE,GAAG,QAAQ,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC1E,MAAM,OAAO,GAAe,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAC1H,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,QAAQ,CAAC;QAC1C,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,MAAM,IAAI,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,iBAAiB,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAC7J,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;CACF,CAAA;AApCY,eAAe;IAD3B,UAAU,EAAE;GACA,eAAe,CAoC3B"}
@@ -12,18 +12,29 @@ export declare class WorkflowController {
12
12
  listRuns(limit?: string, offset?: string): Promise<{
13
13
  runId: string;
14
14
  workflowName: string;
15
- status: string;
16
- steps: unknown[];
15
+ status: "running" | "completed" | "failed" | "canceled";
16
+ steps: {
17
+ stepId: string;
18
+ status: "running" | "failed" | "pending" | "success" | "skipped";
19
+ output: unknown;
20
+ error: string | undefined;
21
+ startedAt: number;
22
+ }[];
17
23
  startedAt: number;
18
- finishedAt?: number;
24
+ finishedAt: number | undefined;
19
25
  }[]>;
20
26
  getRun(id: string): Promise<{
21
27
  runId: string;
22
28
  workflowName: string;
23
- status: string;
24
- steps: unknown[];
29
+ status: "running" | "completed" | "failed" | "canceled";
30
+ steps: {
31
+ stepId: string;
32
+ status: "running" | "failed" | "pending" | "success" | "skipped";
33
+ output: unknown;
34
+ error: string | undefined;
35
+ }[];
25
36
  startedAt: number;
26
- finishedAt?: number;
37
+ finishedAt: number | undefined;
27
38
  }>;
28
39
  stream(id: string, reply: FastifyReply): Promise<void>;
29
40
  approve(id: string): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.controller.d.ts","sourceRoot":"","sources":["../../src/workflow/workflow.controller.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,qBACa,kBAAkB;IACQ,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,eAAe;IAGxE,IAAI;IAGJ,GAAG,CAAgB,IAAI,EAAE,MAAM,EAAU,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE;;;IAKlF,QAAQ,CAAiB,KAAK,CAAC,EAAE,MAAM,EAAmB,MAAM,CAAC,EAAE,MAAM;;;;;;;;IAKzE,MAAM,CAAc,EAAE,EAAE,MAAM;;;;;;;;IAG9B,MAAM,CAAc,EAAE,EAAE,MAAM,EAAS,KAAK,EAAE,YAAY;IAY1D,OAAO,CAAc,EAAE,EAAE,MAAM;;;IAG/B,MAAM,CAAc,EAAE,EAAE,MAAM,EAAU,IAAI,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;;;CAGxE"}
1
+ {"version":3,"file":"workflow.controller.d.ts","sourceRoot":"","sources":["../../src/workflow/workflow.controller.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,qBACa,kBAAkB;IACQ,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,eAAe;IAGxE,IAAI;IAGJ,GAAG,CAAgB,IAAI,EAAE,MAAM,EAAU,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE;;;IAKlF,QAAQ,CAAiB,KAAK,CAAC,EAAE,MAAM,EAAmB,MAAM,CAAC,EAAE,MAAM;;;;;;;;;;;;;;IAKzE,MAAM,CAAc,EAAE,EAAE,MAAM;;;;;;;;;;;;;IAG9B,MAAM,CAAc,EAAE,EAAE,MAAM,EAAS,KAAK,EAAE,YAAY;IAY1D,OAAO,CAAc,EAAE,EAAE,MAAM;;;IAG/B,MAAM,CAAc,EAAE,EAAE,MAAM,EAAU,IAAI,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;;;CAGxE"}
@@ -12,7 +12,7 @@ export interface StepEvent {
12
12
  export declare class WorkflowService {
13
13
  engine: WorkflowEngine;
14
14
  private events;
15
- private runStates;
15
+ private engineRunIds;
16
16
  list(): Promise<WorkflowMeta[]>;
17
17
  run(type: string, input: Record<string, unknown>): Promise<{
18
18
  runId: string;
@@ -20,18 +20,29 @@ export declare class WorkflowService {
20
20
  listRuns(limit: number, offset: number): Promise<{
21
21
  runId: string;
22
22
  workflowName: string;
23
- status: string;
24
- steps: unknown[];
23
+ status: "running" | "completed" | "failed" | "canceled";
24
+ steps: {
25
+ stepId: string;
26
+ status: "running" | "failed" | "pending" | "success" | "skipped";
27
+ output: unknown;
28
+ error: string | undefined;
29
+ startedAt: number;
30
+ }[];
25
31
  startedAt: number;
26
- finishedAt?: number;
32
+ finishedAt: number | undefined;
27
33
  }[]>;
28
34
  getRun(runId: string): Promise<{
29
35
  runId: string;
30
36
  workflowName: string;
31
- status: string;
32
- steps: unknown[];
37
+ status: "running" | "completed" | "failed" | "canceled";
38
+ steps: {
39
+ stepId: string;
40
+ status: "running" | "failed" | "pending" | "success" | "skipped";
41
+ output: unknown;
42
+ error: string | undefined;
43
+ }[];
33
44
  startedAt: number;
34
- finishedAt?: number;
45
+ finishedAt: number | undefined;
35
46
  }>;
36
47
  streamRun(runId: string): Subject<StepEvent>;
37
48
  approveRun(runId: string): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.service.d.ts","sourceRoot":"","sources":["../../src/workflow/workflow.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAG/B,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBACa,eAAe;IAC1B,MAAM,iBAAwB;IAC9B,OAAO,CAAC,MAAM,CAAyC;IACvD,OAAO,CAAC,SAAS,CAAwI;IAEnJ,IAAI,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAI/B,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAyB7E,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;eA/BC,MAAM;sBAAgB,MAAM;gBAAU,MAAM;eAAS,OAAO,EAAE;mBAAa,MAAM;qBAAe,MAAM;;IAoC7I,MAAM,CAAC,KAAK,EAAE,MAAM;eApCmB,MAAM;sBAAgB,MAAM;gBAAU,MAAM;eAAS,OAAO,EAAE;mBAAa,MAAM;qBAAe,MAAM;;IA0CnJ,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAMtC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAK/D"}
1
+ {"version":3,"file":"workflow.service.d.ts","sourceRoot":"","sources":["../../src/workflow/workflow.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAG/B,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBACa,eAAe;IAC1B,MAAM,iBAAwB;IAC9B,OAAO,CAAC,MAAM,CAAyC;IACvD,OAAO,CAAC,YAAY,CAA6B;IAE3C,IAAI,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAI/B,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IA0D7E,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;;;;;;;;;;;;;;IAwBtC,MAAM,CAAC,KAAK,EAAE,MAAM;;;;;;;;;;;;;IAqB1B,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAQtC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYxC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAW/D"}
@@ -12,7 +12,7 @@ let WorkflowService = class WorkflowService {
12
12
  constructor() {
13
13
  this.engine = new WorkflowEngine();
14
14
  this.events = new Map();
15
- this.runStates = new Map();
15
+ this.engineRunIds = new Map();
16
16
  }
17
17
  async list() {
18
18
  return this.engine.list();
@@ -20,55 +20,128 @@ let WorkflowService = class WorkflowService {
20
20
  async run(type, input) {
21
21
  const defs = await this.engine.list();
22
22
  if (!defs.find((d) => d.name === type)) {
23
- throw new NotFoundException({ error: { code: ErrorCode.WORKFLOW_NOT_FOUND, message: `Workflow "${type}" not found`, details: {} } });
23
+ throw new NotFoundException({
24
+ error: { code: ErrorCode.WORKFLOW_NOT_FOUND, message: `Workflow "${type}" not found`, details: {} }
25
+ });
24
26
  }
25
- const runId = `run_${Date.now()}_${Math.random().toString(36).slice(2, 7)}`;
26
- this.events.set(runId, new Subject());
27
- const startTime = Date.now();
28
- this.runStates.set(runId, { runId, workflowName: type, status: "running", steps: [], startedAt: startTime });
29
- // Execute in background
27
+ const serviceRunId = `run_${Date.now()}_${Math.random().toString(36).slice(2, 7)}`;
28
+ const subject = new Subject();
29
+ this.events.set(serviceRunId, subject);
30
30
  this.engine.run(type, input).then((result) => {
31
- const rs = this.runStates.get(runId);
32
- if (rs) {
33
- rs.status = result.status === "completed" ? "completed" : "failed";
34
- rs.finishedAt = Date.now();
31
+ this.engineRunIds.set(serviceRunId, result.runId);
32
+ const engineRun = this.engine.getRun(result.runId);
33
+ if (engineRun) {
34
+ for (const step of engineRun.steps) {
35
+ subject.next({
36
+ runId: serviceRunId,
37
+ stepId: step.stepId,
38
+ status: step.status === "success" ? "completed" : step.status === "failed" ? "failed" : "started",
39
+ output: step.output,
40
+ error: step.error,
41
+ timestamp: Date.now(),
42
+ });
43
+ }
44
+ if (result.status !== "running") {
45
+ subject.complete();
46
+ }
35
47
  }
36
- }).catch((err) => {
37
- const rs = this.runStates.get(runId);
38
- if (rs) {
39
- rs.status = "failed";
40
- rs.finishedAt = Date.now();
48
+ if (result.status === "running") {
49
+ this.engine.onEvent(result.runId, (event) => {
50
+ subject.next({
51
+ runId: serviceRunId,
52
+ stepId: event.stepId,
53
+ status: event.type === "step-done" ? "completed" : event.type === "step-error" ? "failed" : "started",
54
+ output: "output" in event ? event.output : undefined,
55
+ error: "error" in event ? event.error : undefined,
56
+ timestamp: Date.now(),
57
+ });
58
+ });
41
59
  }
42
- const subj = this.events.get(runId);
43
- if (subj)
44
- subj.error(err);
60
+ }).catch((err) => {
61
+ subject.next({
62
+ runId: serviceRunId,
63
+ stepId: "engine",
64
+ status: "failed",
65
+ error: err.message,
66
+ timestamp: Date.now(),
67
+ });
68
+ subject.complete();
45
69
  });
46
- return { runId };
70
+ return { runId: serviceRunId };
47
71
  }
48
72
  async listRuns(limit, offset) {
49
- const runs = Array.from(this.runStates.values());
73
+ const engineRuns = await this.engine.listRuns();
74
+ const runs = engineRuns.map((r) => {
75
+ const serviceRunId = Array.from(this.engineRunIds.entries()).find(([, engineId]) => engineId === r.runId)?.[0];
76
+ return {
77
+ runId: serviceRunId ?? r.runId,
78
+ workflowName: r.type,
79
+ status: r.status,
80
+ steps: r.steps.map((s) => ({
81
+ stepId: s.stepId,
82
+ status: s.status,
83
+ output: s.output,
84
+ error: s.error,
85
+ startedAt: 0,
86
+ })),
87
+ startedAt: r.startedAt,
88
+ finishedAt: r.finishedAt,
89
+ };
90
+ });
50
91
  return runs.slice(offset, offset + limit);
51
92
  }
52
93
  async getRun(runId) {
53
- const run = this.runStates.get(runId);
94
+ const engineRunId = this.engineRunIds.get(runId) ?? runId;
95
+ const run = this.engine.getRun(engineRunId);
54
96
  if (!run)
55
- throw new NotFoundException({ error: { code: ErrorCode.RUN_NOT_FOUND, message: `Run "${runId}" not found`, details: {} } });
56
- return run;
97
+ throw new NotFoundException({
98
+ error: { code: ErrorCode.RUN_NOT_FOUND, message: `Run "${runId}" not found`, details: {} }
99
+ });
100
+ return {
101
+ runId,
102
+ workflowName: run.type,
103
+ status: run.status,
104
+ steps: run.steps.map((s) => ({
105
+ stepId: s.stepId,
106
+ status: s.status,
107
+ output: s.output,
108
+ error: s.error,
109
+ })),
110
+ startedAt: run.startedAt,
111
+ finishedAt: run.finishedAt,
112
+ };
57
113
  }
58
114
  streamRun(runId) {
59
115
  const subject = this.events.get(runId);
60
116
  if (!subject)
61
- throw new NotFoundException({ error: { code: ErrorCode.RUN_NOT_FOUND, message: `Run "${runId}" not found`, details: {} } });
117
+ throw new NotFoundException({
118
+ error: { code: ErrorCode.RUN_NOT_FOUND, message: `Run "${runId}" not found`, details: {} }
119
+ });
62
120
  return subject;
63
121
  }
64
122
  async approveRun(runId) {
65
- const run = await this.getRun(runId);
66
- run.approved = true;
123
+ const engineRunId = this.engineRunIds.get(runId) ?? runId;
124
+ const run = this.engine.getRun(engineRunId);
125
+ if (!run)
126
+ throw new NotFoundException({
127
+ error: { code: ErrorCode.RUN_NOT_FOUND, message: `Run "${runId}" not found`, details: {} }
128
+ });
129
+ const manualStep = run.steps.find((s) => s.status === "awaiting_approval");
130
+ if (manualStep) {
131
+ await this.engine.approve(engineRunId, manualStep.stepId);
132
+ }
67
133
  }
68
134
  async rejectRun(runId, reason) {
69
- const run = await this.getRun(runId);
70
- run.approved = false;
71
- run.rejectReason = reason;
135
+ const engineRunId = this.engineRunIds.get(runId) ?? runId;
136
+ const run = this.engine.getRun(engineRunId);
137
+ if (!run)
138
+ throw new NotFoundException({
139
+ error: { code: ErrorCode.RUN_NOT_FOUND, message: `Run "${runId}" not found`, details: {} }
140
+ });
141
+ const manualStep = run.steps.find((s) => s.status === "awaiting_approval");
142
+ if (manualStep) {
143
+ await this.engine.reject(engineRunId, manualStep.stepId, reason ?? "Rejected");
144
+ }
72
145
  }
73
146
  };
74
147
  WorkflowService = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.service.js","sourceRoot":"","sources":["../../src/workflow/workflow.service.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEhE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAY9C,IAAM,eAAe,GAArB,MAAM,eAAe;IAArB;QACL,WAAM,GAAG,IAAI,cAAc,EAAE,CAAC;QACtB,WAAM,GAAG,IAAI,GAAG,EAA8B,CAAC;QAC/C,cAAS,GAAG,IAAI,GAAG,EAA6H,CAAC;IA0D3J,CAAC;IAxDC,KAAK,CAAC,IAAI;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,KAA8B;QACpD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,kBAAkB,EAAE,OAAO,EAAE,aAAa,IAAI,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACvI,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC5E,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,OAAO,EAAa,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;QAC7G,wBAAwB;QACxB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,EAAE,EAAE,CAAC;gBACP,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACnE,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,CAAC;QACH,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACf,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,EAAE,EAAE,CAAC;gBAAC,EAAE,CAAC,MAAM,GAAG,QAAQ,CAAC;gBAAC,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAAC,CAAC;YAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,IAAI;gBAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QACH,OAAO,EAAE,KAAK,EAAE,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAa,EAAE,MAAc;QAC1C,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAa;QACxB,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,aAAa,EAAE,OAAO,EAAE,QAAQ,KAAK,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACtI,OAAO,GAAG,CAAC;IACb,CAAC;IAED,SAAS,CAAC,KAAa;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,aAAa,EAAE,OAAO,EAAE,QAAQ,KAAK,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1I,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,KAAa;QAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpC,GAAW,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAAa,EAAE,MAAe;QAC5C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpC,GAAW,CAAC,QAAQ,GAAG,KAAK,CAAC;QAC7B,GAAW,CAAC,YAAY,GAAG,MAAM,CAAC;IACrC,CAAC;CACF,CAAA;AA7DY,eAAe;IAD3B,UAAU,EAAE;GACA,eAAe,CA6D3B"}
1
+ {"version":3,"file":"workflow.service.js","sourceRoot":"","sources":["../../src/workflow/workflow.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@devflow-tools/server",
3
- "version": "0.1.0",
3
+ "version": "0.2.1",
4
4
  "type": "module",
5
5
  "main": "./dist/main.js",
6
6
  "scripts": {
@@ -12,14 +12,14 @@
12
12
  "clean": "rm -rf dist"
13
13
  },
14
14
  "dependencies": {
15
- "@devflow-tools/adapters": "*",
16
- "@devflow-tools/benchmark": "*",
17
- "@devflow-tools/context-engine": "*",
18
- "@devflow-tools/knowledge-engine": "*",
19
- "@devflow-tools/memory-engine": "*",
20
- "@devflow-tools/sdk": "*",
21
- "@devflow-tools/telemetry": "*",
22
- "@devflow-tools/workflow-engine": "*",
15
+ "@devflow-tools/adapters": "^0.2.1",
16
+ "@devflow-tools/benchmark": "^0.2.1",
17
+ "@devflow-tools/context-engine": "^0.2.1",
18
+ "@devflow-tools/knowledge-engine": "^0.2.1",
19
+ "@devflow-tools/memory-engine": "^0.2.1",
20
+ "@devflow-tools/sdk": "^0.2.1",
21
+ "@devflow-tools/telemetry": "^0.2.1",
22
+ "@devflow-tools/workflow-engine": "^0.2.1",
23
23
  "@nestjs/common": "^10.4.0",
24
24
  "@nestjs/core": "^10.4.0",
25
25
  "@nestjs/platform-fastify": "^10.4.0",
@@ -37,5 +37,5 @@
37
37
  "files": [
38
38
  "dist"
39
39
  ],
40
- "gitHead": "4cede97fc7fc673f929427fac169acab100ca8ed"
40
+ "gitHead": "1fe69f4e7f6d57a7f7ec3140bdc0e9d7765c3e77"
41
41
  }