@devflow-tools/server 0.5.0 → 0.6.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.
@@ -1,6 +1,6 @@
1
- import { ContextService, IndexStatus } from "./context.service.js";
1
+ import { ContextService, IndexStatus, FeedbackEntry } from "./context.service.js";
2
2
  import { ProjectsService } from "../projects/projects.service.js";
3
- import type { ContextResult } from "@devflow-tools/sdk";
3
+ import type { ContextResult, TaskContextResult } from "@devflow-tools/sdk";
4
4
  export declare class ContextController {
5
5
  private readonly service;
6
6
  private readonly projects;
@@ -16,6 +16,24 @@ export declare class ContextController {
16
16
  mode?: "fast" | "deep";
17
17
  maxTokens?: number;
18
18
  }, xProject?: string): Promise<ContextResult>;
19
+ buildTask(body: {
20
+ rootPath?: string;
21
+ query: string;
22
+ mode?: "fast" | "deep";
23
+ maxTokens?: number;
24
+ }, xProject?: string): Promise<TaskContextResult>;
25
+ feedback(body: {
26
+ rootPath?: string;
27
+ query: string;
28
+ feedback: "hit" | "partial" | "miss";
29
+ }, xProject?: string): Promise<FeedbackEntry>;
30
+ feedbackSummary(): Promise<{
31
+ total: number;
32
+ hits: number;
33
+ partials: number;
34
+ misses: number;
35
+ hitRate: number;
36
+ }>;
19
37
  findSymbol(name: string, rootPath?: string, xProject?: string): Promise<import("@devflow-tools/sdk").SymbolEntry[]>;
20
38
  }
21
39
  //# sourceMappingURL=context.controller.d.ts.map
@@ -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,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,EAAgC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAKnH,KAAK,CAAS,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,EAAgC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAKjH,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,EAAgC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAK9K,UAAU,CAAgB,IAAI,EAAE,MAAM,EAAqB,QAAQ,CAAC,EAAE,MAAM,EAAgC,QAAQ,CAAC,EAAE,MAAM;CAGpI"}
1
+ {"version":3,"file":"context.controller.d.ts","sourceRoot":"","sources":["../../src/context/context.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE3E,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,EAAgC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAKnH,KAAK,CAAS,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,EAAgC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAKjH,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,EAAgC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAK9K,SAAS,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,EAAgC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAKtL,QAAQ,CAAS,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,KAAK,GAAG,SAAS,GAAG,MAAM,CAAA;KAAE,EAAgC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAK3K,eAAe;;;;;;;IAKf,UAAU,CAAgB,IAAI,EAAE,MAAM,EAAqB,QAAQ,CAAC,EAAE,MAAM,EAAgC,QAAQ,CAAC,EAAE,MAAM;CAGpI"}
@@ -33,6 +33,15 @@ let ContextController = class ContextController {
33
33
  async build(body, xProject) {
34
34
  return this.service.buildContext(this.resolveRootPath(body.rootPath, xProject), body.query, body.mode ?? "fast", body.maxTokens);
35
35
  }
36
+ async buildTask(body, xProject) {
37
+ return this.service.buildTaskContext(this.resolveRootPath(body.rootPath, xProject), body.query, body.mode ?? "fast", body.maxTokens);
38
+ }
39
+ async feedback(body, xProject) {
40
+ return this.service.recordFeedback(this.resolveRootPath(body.rootPath, xProject), body.query, body.feedback);
41
+ }
42
+ async feedbackSummary() {
43
+ return this.service.getFeedbackSummaries();
44
+ }
36
45
  async findSymbol(name, rootPath, xProject) {
37
46
  return this.service.findSymbol(this.resolveRootPath(rootPath, xProject), name);
38
47
  }
@@ -61,6 +70,28 @@ __decorate([
61
70
  __metadata("design:paramtypes", [Object, String]),
62
71
  __metadata("design:returntype", Promise)
63
72
  ], ContextController.prototype, "build", null);
73
+ __decorate([
74
+ Post("build-task"),
75
+ __param(0, Body()),
76
+ __param(1, Headers("x-devflow-project")),
77
+ __metadata("design:type", Function),
78
+ __metadata("design:paramtypes", [Object, String]),
79
+ __metadata("design:returntype", Promise)
80
+ ], ContextController.prototype, "buildTask", null);
81
+ __decorate([
82
+ Post("feedback"),
83
+ __param(0, Body()),
84
+ __param(1, Headers("x-devflow-project")),
85
+ __metadata("design:type", Function),
86
+ __metadata("design:paramtypes", [Object, String]),
87
+ __metadata("design:returntype", Promise)
88
+ ], ContextController.prototype, "feedback", null);
89
+ __decorate([
90
+ Get("feedback-summary"),
91
+ __metadata("design:type", Function),
92
+ __metadata("design:paramtypes", []),
93
+ __metadata("design:returntype", Promise)
94
+ ], ContextController.prototype, "feedbackSummary", null);
64
95
  __decorate([
65
96
  Get("symbol/:name"),
66
97
  __param(0, Param("name")),
@@ -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,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACjH,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,EAAE,QAAiB;QAC1D,MAAM,QAAQ,GAAG,QAAQ,IAAI,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,CAAC;QAC9E,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,mBAAmB,CAAC,oDAAoD,CAAC,CAAC;QACnG,OAAO,QAAQ,CAAC;IAClB,CAAC;IAGK,AAAN,KAAK,CAAC,MAAM,CAAoB,QAAiB,EAAgC,QAAiB;QAChG,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC1E,CAAC;IAGK,AAAN,KAAK,CAAC,KAAK,CAAS,IAA2B,EAAgC,QAAiB;QAC9F,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;IAClF,CAAC;IAGK,AAAN,KAAK,CAAC,KAAK,CAAS,IAAsF,EAAgC,QAAiB;QACzJ,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACnI,CAAC;IAGK,AAAN,KAAK,CAAC,UAAU,CAAgB,IAAY,EAAqB,QAAiB,EAAgC,QAAiB;QACjI,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC;IACjF,CAAC;CACF,CAAA;AAlBO;IADL,GAAG,CAAC,QAAQ,CAAC;IACA,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;IAAqB,WAAA,OAAO,CAAC,mBAAmB,CAAC,CAAA;;;;+CAE/E;AAGK;IADL,IAAI,CAAC,OAAO,CAAC;IACD,WAAA,IAAI,EAAE,CAAA;IAA+B,WAAA,OAAO,CAAC,mBAAmB,CAAC,CAAA;;;;8CAE7E;AAGK;IADL,IAAI,CAAC,OAAO,CAAC;IACD,WAAA,IAAI,EAAE,CAAA;IAA0F,WAAA,OAAO,CAAC,mBAAmB,CAAC,CAAA;;;;8CAExI;AAGK;IADL,GAAG,CAAC,cAAc,CAAC;IACF,WAAA,KAAK,CAAC,MAAM,CAAC,CAAA;IAAgB,WAAA,KAAK,CAAC,UAAU,CAAC,CAAA;IAAqB,WAAA,OAAO,CAAC,mBAAmB,CAAC,CAAA;;;;mDAEhH;AA9BU,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,CA+B7B"}
1
+ {"version":3,"file":"context.controller.js","sourceRoot":"","sources":["../../src/context/context.controller.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,30 @@
1
- import type { ContextResult } from "@devflow-tools/sdk";
1
+ import type { ContextResult, TaskContextResult } from "@devflow-tools/sdk";
2
2
  export interface IndexStatus {
3
3
  totalFiles: number;
4
4
  totalSymbols: number;
5
5
  lastIndexTime: number;
6
6
  indexing: boolean;
7
7
  }
8
+ export interface FeedbackEntry {
9
+ query: string;
10
+ feedback: "hit" | "partial" | "miss";
11
+ timestamp: number;
12
+ projectRoot: string;
13
+ }
8
14
  export declare class ContextService {
15
+ private feedbackEntries;
9
16
  indexProject(rootPath: string): Promise<IndexStatus>;
10
17
  getStatus(rootPath: string): Promise<IndexStatus>;
11
18
  buildContext(rootPath: string, query: string, mode: "fast" | "deep", maxTokens?: number): Promise<ContextResult>;
19
+ buildTaskContext(rootPath: string, query: string, mode: "fast" | "deep", maxTokens?: number): Promise<TaskContextResult>;
12
20
  findSymbol(rootPath: string, name: string): Promise<import("@devflow-tools/sdk").SymbolEntry[]>;
21
+ recordFeedback(rootPath: string, query: string, feedback: "hit" | "partial" | "miss"): Promise<FeedbackEntry>;
22
+ getFeedbackSummaries(): Promise<{
23
+ total: number;
24
+ hits: number;
25
+ partials: number;
26
+ misses: number;
27
+ hitRate: number;
28
+ }>;
13
29
  }
14
30
  //# sourceMappingURL=context.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.service.d.ts","sourceRoot":"","sources":["../../src/context/context.service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,qBACa,cAAc;IACnB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAYpD,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAoBjD,YAAY,CAChB,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GACzE,OAAO,CAAC,aAAa,CAAC;IAKnB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;CAIhD"}
1
+ {"version":3,"file":"context.service.d.ts","sourceRoot":"","sources":["../../src/context/context.service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE3E,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,KAAK,GAAG,SAAS,GAAG,MAAM,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,qBACa,cAAc;IACzB,OAAO,CAAC,eAAe,CAAuB;IAExC,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAYpD,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAoBjD,YAAY,CAChB,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GACzE,OAAO,CAAC,aAAa,CAAC;IAKnB,gBAAgB,CACpB,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GACzE,OAAO,CAAC,iBAAiB,CAAC;IAKvB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAKzC,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAM7G,oBAAoB,IAAI,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAO1H"}
@@ -7,6 +7,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { Injectable } from "@nestjs/common";
8
8
  import { createEngines } from "@devflow-tools/context-engine";
9
9
  let ContextService = class ContextService {
10
+ constructor() {
11
+ this.feedbackEntries = [];
12
+ }
10
13
  async indexProject(rootPath) {
11
14
  const { context, codegraph } = await createEngines(rootPath);
12
15
  await context.index(rootPath);
@@ -42,10 +45,26 @@ let ContextService = class ContextService {
42
45
  const { context } = await createEngines(rootPath);
43
46
  return context.build({ query, mode, maxTokens: maxTokens ?? 8000, includeGraph: mode === "deep" });
44
47
  }
48
+ async buildTaskContext(rootPath, query, mode, maxTokens) {
49
+ const { context } = await createEngines(rootPath);
50
+ return context.buildTaskContext(query, { mode, maxTokens: maxTokens ?? 8000 });
51
+ }
45
52
  async findSymbol(rootPath, name) {
46
53
  const { indexer } = await createEngines(rootPath);
47
54
  return indexer.findSymbol(name);
48
55
  }
56
+ async recordFeedback(rootPath, query, feedback) {
57
+ const entry = { query, feedback, timestamp: Date.now(), projectRoot: rootPath };
58
+ this.feedbackEntries.push(entry);
59
+ return entry;
60
+ }
61
+ async getFeedbackSummaries() {
62
+ const total = this.feedbackEntries.length;
63
+ const hits = this.feedbackEntries.filter(e => e.feedback === "hit").length;
64
+ const partials = this.feedbackEntries.filter(e => e.feedback === "partial").length;
65
+ const misses = this.feedbackEntries.filter(e => e.feedback === "miss").length;
66
+ return { total, hits, partials, misses, hitRate: total > 0 ? hits / total : 0 };
67
+ }
49
68
  };
50
69
  ContextService = __decorate([
51
70
  Injectable()
@@ -1 +1 @@
1
- {"version":3,"file":"context.service.js","sourceRoot":"","sources":["../../src/context/context.service.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAWvD,IAAM,cAAc,GAApB,MAAM,cAAc;IACzB,KAAK,CAAC,YAAY,CAAC,QAAgB;QACjC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC7D,MAAM,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC9B,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;QACnC,OAAO;YACL,UAAU,EAAE,KAAK,CAAC,SAAS;YAC3B,YAAY,EAAE,KAAK,CAAC,SAAS;YAC7B,aAAa,EAAE,KAAK,CAAC,WAAW;YAChC,QAAQ,EAAE,SAAS,CAAC,UAAU,EAAE;SACjC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAgB;QAC9B,IAAI,CAAC;YACH,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;YACpD,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;YACnC,OAAO;gBACL,UAAU,EAAE,KAAK,CAAC,SAAS;gBAC3B,YAAY,EAAE,KAAK,CAAC,SAAS;gBAC7B,aAAa,EAAE,KAAK,CAAC,WAAW;gBAChC,QAAQ,EAAE,SAAS,CAAC,UAAU,EAAE;aACjC,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;gBACL,UAAU,EAAE,CAAC;gBACb,YAAY,EAAE,CAAC;gBACf,aAAa,EAAE,CAAC;gBAChB,QAAQ,EAAE,KAAK;aAChB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,QAAgB,EAAE,KAAa,EAAE,IAAqB,EAAE,SAAkB;QAE1E,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;QAClD,OAAO,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,IAAI,IAAI,EAAE,YAAY,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC,CAAC;IACrG,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,IAAY;QAC7C,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;QAClD,OAAO,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;CACF,CAAA;AA5CY,cAAc;IAD1B,UAAU,EAAE;GACA,cAAc,CA4C1B"}
1
+ {"version":3,"file":"context.service.js","sourceRoot":"","sources":["../../src/context/context.service.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
- import { ProjectsService, ProjectDto } from "./projects.service.js";
1
+ import { ProjectsService, ProjectDto, OnboardingPackResponse } from "./projects.service.js";
2
2
  export declare class ProjectsController {
3
3
  private readonly service;
4
4
  constructor(service: ProjectsService);
5
5
  list(): Promise<ProjectDto[]>;
6
6
  getById(id: string): Promise<ProjectDto>;
7
+ getOnboardingPack(id: string): Promise<OnboardingPackResponse>;
7
8
  create(body: {
8
9
  name: string;
9
10
  rootPath: string;
@@ -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,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"}
1
+ {"version":3,"file":"projects.controller.d.ts","sourceRoot":"","sources":["../../src/projects/projects.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAE5F,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,iBAAiB,CAAc,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAM3E,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"}
@@ -18,6 +18,10 @@ let ProjectsController = class ProjectsController {
18
18
  }
19
19
  async list() { return this.service.list(); }
20
20
  async getById(id) { return this.service.getById(id); }
21
+ async getOnboardingPack(id) {
22
+ const project = await this.service.getById(id);
23
+ return this.service.getOnboardingPack(project.rootPath);
24
+ }
21
25
  async create(body) { return this.service.create(body); }
22
26
  async connect(body) {
23
27
  this.service.setActiveProject(body.rootPath);
@@ -41,6 +45,13 @@ __decorate([
41
45
  __metadata("design:paramtypes", [String]),
42
46
  __metadata("design:returntype", Promise)
43
47
  ], ProjectsController.prototype, "getById", null);
48
+ __decorate([
49
+ Get(":id/onboarding-pack"),
50
+ __param(0, Param("id")),
51
+ __metadata("design:type", Function),
52
+ __metadata("design:paramtypes", [String]),
53
+ __metadata("design:returntype", Promise)
54
+ ], ProjectsController.prototype, "getOnboardingPack", null);
44
55
  __decorate([
45
56
  Post(),
46
57
  __param(0, Body()),
@@ -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,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"}
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,EAAsC,MAAM,uBAAuB,CAAC;AAGrF,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,iBAAiB,CAAc,EAAU;QAC7C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC1D,CAAC;IAGK,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;AA3BO;IADL,GAAG,EAAE;;;;8CAC6D;AAG7D;IADL,GAAG,CAAC,KAAK,CAAC;IACI,WAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;iDAAsE;AAG1F;IADL,GAAG,CAAC,qBAAqB,CAAC;IACF,WAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;2DAGnC;AAGK;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;AA9B7E,kBAAkB;IAD9B,UAAU,CAAC,UAAU,CAAC;IAER,WAAA,MAAM,CAAC,eAAe,CAAC,CAAA;qCAA2B,eAAe;GADnE,kBAAkB,CA+B9B"}
@@ -5,6 +5,43 @@ export interface ProjectDto {
5
5
  stack?: string[];
6
6
  createdAt: number;
7
7
  }
8
+ export interface OnboardingPackResponse {
9
+ projectName: string;
10
+ createdAt: string;
11
+ root: string;
12
+ stats: {
13
+ files: number;
14
+ symbols: number;
15
+ graphNodes: number;
16
+ };
17
+ stack: {
18
+ languages: string[];
19
+ frameworks: string[];
20
+ buildTools: string[];
21
+ testTools: string[];
22
+ };
23
+ keyModules: Array<{
24
+ name: string;
25
+ paths: string[];
26
+ reason: string;
27
+ }>;
28
+ keyFiles: Array<{
29
+ path: string;
30
+ reason: string;
31
+ }>;
32
+ keySymbols: Array<{
33
+ name: string;
34
+ file: string;
35
+ kind: string;
36
+ }>;
37
+ architectureLayers: Array<{
38
+ name: string;
39
+ files: number;
40
+ }>;
41
+ recommendedPlugins: string[];
42
+ recommendedWorkflows: string[];
43
+ recommendedQueries: string[];
44
+ }
8
45
  export declare class ProjectsService {
9
46
  private projects;
10
47
  private activeProjectRoot;
@@ -18,5 +55,6 @@ export declare class ProjectsService {
18
55
  stack?: string[];
19
56
  }): Promise<ProjectDto>;
20
57
  delete(id: string): Promise<void>;
58
+ getOnboardingPack(rootPath: string): Promise<OnboardingPackResponse>;
21
59
  }
22
60
  //# sourceMappingURL=projects.service.d.ts.map
@@ -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;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"}
1
+ {"version":3,"file":"projects.service.d.ts","sourceRoot":"","sources":["../../src/projects/projects.service.ts"],"names":[],"mappings":"AAKA,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,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9D,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAChG,UAAU,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrE,QAAQ,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClD,UAAU,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChE,kBAAkB,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3D,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,kBAAkB,EAAE,MAAM,EAAE,CAAC;CAC9B;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;IAKjC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAS3E"}
@@ -5,6 +5,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import { Injectable, NotFoundException } from "@nestjs/common";
8
+ import { readFileSync, existsSync } from "fs";
9
+ import { join } from "path";
8
10
  import { ErrorCode } from "../common/error-codes.js";
9
11
  let ProjectsService = class ProjectsService {
10
12
  constructor() {
@@ -40,6 +42,15 @@ let ProjectsService = class ProjectsService {
40
42
  throw new NotFoundException({ error: { code: ErrorCode.PROJECT_NOT_FOUND, message: `Project "${id}" not found`, details: {} } });
41
43
  this.projects.delete(id);
42
44
  }
45
+ async getOnboardingPack(rootPath) {
46
+ const packPath = join(rootPath, ".devflow", "onboarding-pack.json");
47
+ if (!existsSync(packPath)) {
48
+ throw new NotFoundException({
49
+ error: { code: ErrorCode.PROJECT_NOT_FOUND, message: "Onboarding pack not found. Run `devflow init` first.", details: {} },
50
+ });
51
+ }
52
+ return JSON.parse(readFileSync(packPath, "utf-8"));
53
+ }
43
54
  };
44
55
  ProjectsService = __decorate([
45
56
  Injectable()
@@ -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;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"}
1
+ {"version":3,"file":"projects.service.js","sourceRoot":"","sources":["../../src/projects/projects.service.ts"],"names":[],"mappings":"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"}
@@ -34,7 +34,19 @@ export declare class TelemetryController {
34
34
  tokens: number;
35
35
  date: string;
36
36
  }[];
37
+ byWorkflow: {
38
+ name: string;
39
+ runs: number;
40
+ successRate: number;
41
+ avgDuration: number;
42
+ }[];
43
+ byPlugin: {
44
+ name: string;
45
+ runs: number;
46
+ successRate: number;
47
+ }[];
37
48
  }>;
49
+ getRoiSummary(days?: string): Promise<import("@devflow-tools/sdk").RoiSummary>;
38
50
  cleanup(body: {
39
51
  olderThanDays?: number;
40
52
  }): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry.controller.d.ts","sourceRoot":"","sources":["../../src/telemetry/telemetry.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,QAAQ,CAAiB,KAAK,CAAC,EAAE,MAAM,EAAmB,MAAM,CAAC,EAAE,MAAM,EAAmB,MAAM,CAAC,EAAE,MAAM;;;;;;;;;IAK3G,MAAM,CAAc,EAAE,EAAE,MAAM;IAG9B,WAAW,CAAgB,IAAI,CAAC,EAAE,MAAM,EAAe,EAAE,CAAC,EAAE,MAAM;IAKlE,YAAY,CAAiB,KAAK,EAAE,MAAM;IAK1C,WAAW,CAAiB,KAAK,EAAE,MAAM;IAKzC,QAAQ,CAAgB,IAAI,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;IAKrC,OAAO,CAAS,IAAI,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;CAIvD"}
1
+ {"version":3,"file":"telemetry.controller.d.ts","sourceRoot":"","sources":["../../src/telemetry/telemetry.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,QAAQ,CAAiB,KAAK,CAAC,EAAE,MAAM,EAAmB,MAAM,CAAC,EAAE,MAAM,EAAmB,MAAM,CAAC,EAAE,MAAM;;;;;;;;;IAK3G,MAAM,CAAc,EAAE,EAAE,MAAM;IAG9B,WAAW,CAAgB,IAAI,CAAC,EAAE,MAAM,EAAe,EAAE,CAAC,EAAE,MAAM;IAKlE,YAAY,CAAiB,KAAK,EAAE,MAAM;IAK1C,WAAW,CAAiB,KAAK,EAAE,MAAM;IAKzC,QAAQ,CAAgB,IAAI,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKrC,aAAa,CAAgB,IAAI,CAAC,EAAE,MAAM;IAK1C,OAAO,CAAS,IAAI,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;CAIvD"}
@@ -32,6 +32,9 @@ let TelemetryController = class TelemetryController {
32
32
  async getStats(days) {
33
33
  return this.service.getStats(Number(days) || 7);
34
34
  }
35
+ async getRoiSummary(days) {
36
+ return this.service.getRoiSummary(Number(days) || 7);
37
+ }
35
38
  async cleanup(body) {
36
39
  const count = await this.service.cleanup(body.olderThanDays ?? 30);
37
40
  return { ok: true, data: { removedRuns: count } };
@@ -82,6 +85,13 @@ __decorate([
82
85
  __metadata("design:paramtypes", [String]),
83
86
  __metadata("design:returntype", Promise)
84
87
  ], TelemetryController.prototype, "getStats", null);
88
+ __decorate([
89
+ Get("telemetry/roi-summary"),
90
+ __param(0, Query("days")),
91
+ __metadata("design:type", Function),
92
+ __metadata("design:paramtypes", [String]),
93
+ __metadata("design:returntype", Promise)
94
+ ], TelemetryController.prototype, "getRoiSummary", null);
85
95
  __decorate([
86
96
  Post("telemetry/cleanup"),
87
97
  __param(0, Body()),
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry.controller.js","sourceRoot":"","sources":["../../src/telemetry/telemetry.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACnF,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,QAAQ,CAAiB,KAAc,EAAmB,MAAe,EAAmB,MAAe;QAC/G,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IACjF,CAAC;IAGK,AAAN,KAAK,CAAC,MAAM,CAAc,EAAU,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAGnE,AAAN,KAAK,CAAC,WAAW,CAAgB,IAAa,EAAe,EAAW;QACtE,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC5C,CAAC;IAGK,AAAN,KAAK,CAAC,YAAY,CAAiB,KAAa;QAC9C,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAGK,AAAN,KAAK,CAAC,WAAW,CAAiB,KAAa;QAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAGK,AAAN,KAAK,CAAC,QAAQ,CAAgB,IAAa;QACzC,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAClD,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CAAS,IAAgC;QACpD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;QACnE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC;IACpD,CAAC;CACF,CAAA;AAhCO;IADL,GAAG,CAAC,MAAM,CAAC;IACI,WAAA,KAAK,CAAC,OAAO,CAAC,CAAA;IAAkB,WAAA,KAAK,CAAC,QAAQ,CAAC,CAAA;IAAmB,WAAA,KAAK,CAAC,QAAQ,CAAC,CAAA;;;;mDAEhG;AAGK;IADL,GAAG,CAAC,UAAU,CAAC;IACF,WAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;iDAAgD;AAGnE;IADL,GAAG,CAAC,UAAU,CAAC;IACG,WAAA,KAAK,CAAC,MAAM,CAAC,CAAA;IAAiB,WAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;sDAE3D;AAGK;IADL,GAAG,CAAC,oBAAoB,CAAC;IACN,WAAA,KAAK,CAAC,OAAO,CAAC,CAAA;;;;uDAEjC;AAGK;IADL,GAAG,CAAC,mBAAmB,CAAC;IACN,WAAA,KAAK,CAAC,OAAO,CAAC,CAAA;;;;sDAEhC;AAGK;IADL,GAAG,CAAC,iBAAiB,CAAC;IACP,WAAA,KAAK,CAAC,MAAM,CAAC,CAAA;;;;mDAE5B;AAGK;IADL,IAAI,CAAC,mBAAmB,CAAC;IACX,WAAA,IAAI,EAAE,CAAA;;;;kDAGpB;AAnCU,mBAAmB;IAD/B,UAAU,EAAE;IAEE,WAAA,MAAM,CAAC,gBAAgB,CAAC,CAAA;qCAA2B,gBAAgB;GADrE,mBAAmB,CAoC/B"}
1
+ {"version":3,"file":"telemetry.controller.js","sourceRoot":"","sources":["../../src/telemetry/telemetry.controller.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { TelemetryEngine } from "@devflow-tools/telemetry";
2
+ import type { RoiSummary } from "@devflow-tools/sdk";
2
3
  export declare class TelemetryService {
3
4
  engine: TelemetryEngine;
4
5
  listRuns(limit: number, offset: number, source?: string): Promise<{
@@ -33,7 +34,21 @@ export declare class TelemetryService {
33
34
  tokens: number;
34
35
  date: string;
35
36
  }[];
37
+ byWorkflow: {
38
+ name: string;
39
+ runs: number;
40
+ successRate: number;
41
+ avgDuration: number;
42
+ }[];
43
+ byPlugin: {
44
+ name: string;
45
+ runs: number;
46
+ successRate: number;
47
+ }[];
36
48
  }>;
49
+ private buildWorkflowBreakdown;
50
+ private buildPluginBreakdown;
51
+ getRoiSummary(periodDays?: number): Promise<RoiSummary>;
37
52
  cleanup(olderThanDays: number): Promise<number>;
38
53
  }
39
54
  //# sourceMappingURL=telemetry.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry.service.d.ts","sourceRoot":"","sources":["../../src/telemetry/telemetry.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAG3D,qBACa,gBAAgB;IAC3B,MAAM,kBAAyB;IAEzB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;;;;;;;;;IAYvD,MAAM,CAAC,EAAE,EAAE,MAAM;IAMjB,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM;IActC,YAAY,CAAC,KAAK,EAAE,MAAM;IAI1B,WAAW,CAAC,KAAK,EAAE,MAAM;IAIzB,QAAQ,CAAC,UAAU,SAAI;;;;;;;;;;;;;;;kBAMQ,MAAM;oBAAU,MAAM;;;;IAyCrD,OAAO,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAYtD"}
1
+ {"version":3,"file":"telemetry.service.d.ts","sourceRoot":"","sources":["../../src/telemetry/telemetry.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAmB,MAAM,oBAAoB,CAAC;AAGtE,qBACa,gBAAgB;IAC3B,MAAM,kBAAyB;IAEzB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;;;;;;;;;IAYvD,MAAM,CAAC,EAAE,EAAE,MAAM;IAMjB,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM;IActC,YAAY,CAAC,KAAK,EAAE,MAAM;IAI1B,WAAW,CAAC,KAAK,EAAE,MAAM;IAIzB,QAAQ,CAAC,UAAU,SAAI;;;;;;;;;;;;;;;kBAMQ,MAAM;oBAAU,MAAM;;;;;;;;;;;;;;;IA2C3D,OAAO,CAAC,sBAAsB;IAsB9B,OAAO,CAAC,oBAAoB;IAgBtB,aAAa,CAAC,UAAU,SAAI,GAAG,OAAO,CAAC,UAAU,CAAC;IAgGlD,OAAO,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAYtD"}
@@ -89,6 +89,136 @@ let TelemetryService = class TelemetryService {
89
89
  byDay: Object.entries(days)
90
90
  .map(([date, d]) => ({ date, ...d }))
91
91
  .sort((a, b) => a.date.localeCompare(b.date)),
92
+ byWorkflow: this.buildWorkflowBreakdown(periodRuns, now),
93
+ byPlugin: this.buildPluginBreakdown(periodRuns),
94
+ };
95
+ }
96
+ buildWorkflowBreakdown(periodRuns, now) {
97
+ const byWorkflow = {};
98
+ for (const r of periodRuns) {
99
+ const wf = r.workflowName ?? r.meta?.workflowName ?? "unknown";
100
+ if (!byWorkflow[wf])
101
+ byWorkflow[wf] = { runs: 0, completed: 0, failed: 0, avgDuration: 0 };
102
+ byWorkflow[wf].runs++;
103
+ if (r.status === "completed")
104
+ byWorkflow[wf].completed++;
105
+ else
106
+ byWorkflow[wf].failed++;
107
+ byWorkflow[wf].avgDuration += ((r.finishedAt ?? now) - r.startedAt);
108
+ }
109
+ for (const wf of Object.keys(byWorkflow)) {
110
+ byWorkflow[wf].avgDuration = byWorkflow[wf].runs > 0
111
+ ? Math.round(byWorkflow[wf].avgDuration / byWorkflow[wf].runs) : 0;
112
+ }
113
+ return Object.entries(byWorkflow).map(([name, d]) => ({
114
+ name,
115
+ runs: d.runs,
116
+ successRate: d.runs > 0 ? d.completed / d.runs : 0,
117
+ avgDuration: d.avgDuration,
118
+ }));
119
+ }
120
+ buildPluginBreakdown(periodRuns) {
121
+ const byPlugin = {};
122
+ for (const r of periodRuns) {
123
+ const pl = r.pluginName ?? r.meta?.pluginName ?? "none";
124
+ if (!byPlugin[pl])
125
+ byPlugin[pl] = { runs: 0, completed: 0, failed: 0 };
126
+ byPlugin[pl].runs++;
127
+ if (r.status === "completed")
128
+ byPlugin[pl].completed++;
129
+ else
130
+ byPlugin[pl].failed++;
131
+ }
132
+ return Object.entries(byPlugin).map(([name, d]) => ({
133
+ name,
134
+ runs: d.runs,
135
+ successRate: d.runs > 0 ? d.completed / d.runs : 0,
136
+ }));
137
+ }
138
+ async getRoiSummary(periodDays = 7) {
139
+ const runs = Array.from(this.engine.runs.values());
140
+ const now = Date.now();
141
+ const cutoff = now - periodDays * 24 * 60 * 60 * 1000;
142
+ const periodRuns = runs.filter((r) => r.startedAt >= cutoff);
143
+ // Overview
144
+ const totalRuns = periodRuns.length;
145
+ const completedRuns = periodRuns.filter((r) => r.status === "completed").length;
146
+ const failedRuns = periodRuns.filter((r) => r.status !== "completed").length;
147
+ const avgDuration = totalRuns > 0
148
+ ? Math.round(periodRuns.reduce((s, r) => s + ((r.finishedAt ?? now) - r.startedAt), 0) / totalRuns)
149
+ : 0;
150
+ const avgTokens = totalRuns > 0
151
+ ? Math.round(periodRuns.reduce((s, r) => s + (r.tokenUsed ?? 0), 0) / totalRuns)
152
+ : 0;
153
+ const firstPassSuccesses = periodRuns.filter((r) => r.firstPassSuccess === true || r.meta?.firstPassSuccess === true).length;
154
+ const firstPassSuccessRate = totalRuns > 0 ? firstPassSuccesses / totalRuns : 0;
155
+ const feedbackHits = periodRuns.filter((r) => r.relevanceFeedback === "hit" || r.meta?.relevanceFeedback === "hit").length;
156
+ const feedbackTotal = periodRuns.filter((r) => r.relevanceFeedback !== undefined || r.meta?.relevanceFeedback !== undefined).length;
157
+ const feedbackHitRate = feedbackTotal > 0 ? feedbackHits / feedbackTotal : 0;
158
+ // Efficiency
159
+ const totalRetries = periodRuns.reduce((s, r) => s + (r.retryCount ?? r.meta?.retryCount ?? 0), 0);
160
+ const avgRetryCount = totalRuns > 0 ? totalRetries / totalRuns : 0;
161
+ const avgTimePerTask = avgDuration;
162
+ // Failure breakdown
163
+ const failureBreakdown = {
164
+ context_insufficient: 0,
165
+ knowledge_missing: 0,
166
+ workflow_design_issue: 0,
167
+ tool_error: 0,
168
+ agent_override: 0,
169
+ unknown: 0,
170
+ };
171
+ for (const r of periodRuns) {
172
+ if (r.status !== "completed") {
173
+ const runId = r.meta?.runId;
174
+ if (runId) {
175
+ try {
176
+ const cat = await this.engine.classifyFailure(runId);
177
+ failureBreakdown[cat] = (failureBreakdown[cat] ?? 0) + 1;
178
+ }
179
+ catch {
180
+ failureBreakdown.unknown++;
181
+ }
182
+ }
183
+ else {
184
+ failureBreakdown.unknown++;
185
+ }
186
+ }
187
+ }
188
+ // Daily breakdown
189
+ const days = {};
190
+ for (const r of periodRuns) {
191
+ const day = new Date(r.startedAt).toISOString().slice(0, 10);
192
+ if (!days[day])
193
+ days[day] = { runs: 0, tokens: 0, failures: 0 };
194
+ days[day].runs++;
195
+ days[day].tokens += r.tokenUsed ?? 0;
196
+ if (r.status !== "completed")
197
+ days[day].failures++;
198
+ }
199
+ return {
200
+ period: {
201
+ from: new Date(cutoff).toISOString().slice(0, 10),
202
+ to: new Date(now).toISOString().slice(0, 10),
203
+ },
204
+ overview: {
205
+ totalRuns, completedRuns, failedRuns, avgDuration, avgTokens,
206
+ firstPassSuccessRate, feedbackHitRate,
207
+ },
208
+ efficiency: {
209
+ totalTokensSaved: 0, // needs baseline comparison data
210
+ avgTimePerTask,
211
+ avgRetryCount,
212
+ },
213
+ failures: {
214
+ total: failedRuns,
215
+ breakdown: failureBreakdown,
216
+ },
217
+ workflows: this.buildWorkflowBreakdown(periodRuns, now),
218
+ plugins: this.buildPluginBreakdown(periodRuns),
219
+ byDay: Object.entries(days)
220
+ .map(([date, d]) => ({ date, ...d }))
221
+ .sort((a, b) => a.date.localeCompare(b.date)),
92
222
  };
93
223
  }
94
224
  async cleanup(olderThanDays) {
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry.service.js","sourceRoot":"","sources":["../../src/telemetry/telemetry.service.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAG9C,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAAtB;QACL,WAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IAqGjC,CAAC;IAnGC,KAAK,CAAC,QAAQ,CAAC,KAAa,EAAE,MAAc,EAAE,MAAe;QAC3D,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAE,IAAI,CAAC,MAAc,CAAC,IAAI,CAAC,MAAM,EAAE,CAAU,CAAC;QACrE,IAAI,QAAQ,GAAG,IAAI,CAAC;QACpB,IAAI,MAAM,EAAE,CAAC;YACX,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;YAC7D,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE;YAC7E,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS;SACtG,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,MAAM,GAAG,GAAI,IAAI,CAAC,MAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACnI,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,IAAa,EAAE,EAAW;QAC1C,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAE,IAAI,CAAC,MAAc,CAAC,IAAI,CAAC,MAAM,EAAE,CAAU,CAAC;QACrE,OAAO,IAAI;aACR,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE;YACjB,IAAI,IAAI,IAAI,CAAC,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC;gBAAE,OAAO,KAAK,CAAC;YACrD,IAAI,EAAE,IAAI,CAAC,CAAC,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC;gBAAE,OAAO,KAAK,CAAC;YACjD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;aACD,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;YAC7C,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI;YACpD,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS;SAC7C,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACf,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,KAAa;QAC9B,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAa;QAC7B,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,UAAU,GAAG,CAAC;QAC3B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAE,IAAI,CAAC,MAAc,CAAC,IAAI,CAAC,MAAM,EAAE,CAAU,CAAC;QACrE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,GAAG,GAAG,UAAU,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QACtD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,CAAC;QAElE,MAAM,IAAI,GAAqD,EAAE,CAAC;QAClE,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7D,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;gBAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YACjB,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC;QACvC,CAAC;QAED,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,IAAI,aAAa,GAAG,CAAC,CAAC;QAEtB,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,CAAE,IAAI,CAAC,MAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAU,CAAC;YAC/E,WAAW,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC;YAChC,aAAa,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,MAAM,CAAC;YACzE,aAAa,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,MAAM,CAAC;QAC3E,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACzD,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAEpD,OAAO;YACL,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YACpB,OAAO,EAAE;gBACP,SAAS,EAAE,UAAU,CAAC,MAAM;gBAC5B,aAAa,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM;gBAC7E,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM;gBACvE,WAAW;gBACX,aAAa;gBACb,aAAa;gBACb,cAAc,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC;oBACnC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC;oBACxH,CAAC,CAAC,CAAC;aACN;YACD,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;iBACxB,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;iBACpC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SAChD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,aAAqB;QACjC,MAAM,IAAI,GAAI,IAAI,CAAC,MAAc,CAAC,IAAwB,CAAC;QAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAChE,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;YAC7B,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,GAAG,MAAM,EAAE,CAAC;gBAC5C,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAChB,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAA;AAtGY,gBAAgB;IAD5B,UAAU,EAAE;GACA,gBAAgB,CAsG5B"}
1
+ {"version":3,"file":"telemetry.service.js","sourceRoot":"","sources":["../../src/telemetry/telemetry.service.ts"],"names":[],"mappings":"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"}
@@ -12,10 +12,10 @@ export declare class WorkflowController {
12
12
  listRuns(limit?: string, offset?: string): Promise<{
13
13
  runId: string;
14
14
  workflowName: string;
15
- status: "running" | "completed" | "failed" | "canceled";
15
+ status: "completed" | "failed" | "running" | "canceled";
16
16
  steps: {
17
17
  stepId: string;
18
- status: "running" | "failed" | "pending" | "success" | "skipped";
18
+ status: "failed" | "running" | "pending" | "success" | "skipped";
19
19
  output: unknown;
20
20
  error: string | undefined;
21
21
  startedAt: number;
@@ -26,10 +26,10 @@ export declare class WorkflowController {
26
26
  getRun(id: string): Promise<{
27
27
  runId: string;
28
28
  workflowName: string;
29
- status: "running" | "completed" | "failed" | "canceled";
29
+ status: "completed" | "failed" | "running" | "canceled";
30
30
  steps: {
31
31
  stepId: string;
32
- status: "running" | "failed" | "pending" | "success" | "skipped";
32
+ status: "failed" | "running" | "pending" | "success" | "skipped";
33
33
  output: unknown;
34
34
  error: string | undefined;
35
35
  }[];
@@ -20,10 +20,10 @@ export declare class WorkflowService {
20
20
  listRuns(limit: number, offset: number): Promise<{
21
21
  runId: string;
22
22
  workflowName: string;
23
- status: "running" | "completed" | "failed" | "canceled";
23
+ status: "completed" | "failed" | "running" | "canceled";
24
24
  steps: {
25
25
  stepId: string;
26
- status: "running" | "failed" | "pending" | "success" | "skipped";
26
+ status: "failed" | "running" | "pending" | "success" | "skipped";
27
27
  output: unknown;
28
28
  error: string | undefined;
29
29
  startedAt: number;
@@ -34,10 +34,10 @@ export declare class WorkflowService {
34
34
  getRun(runId: string): Promise<{
35
35
  runId: string;
36
36
  workflowName: string;
37
- status: "running" | "completed" | "failed" | "canceled";
37
+ status: "completed" | "failed" | "running" | "canceled";
38
38
  steps: {
39
39
  stepId: string;
40
- status: "running" | "failed" | "pending" | "success" | "skipped";
40
+ status: "failed" | "running" | "pending" | "success" | "skipped";
41
41
  output: unknown;
42
42
  error: string | undefined;
43
43
  }[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@devflow-tools/server",
3
- "version": "0.5.0",
3
+ "version": "0.6.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": "^0.5.0",
16
- "@devflow-tools/benchmark": "^0.5.0",
17
- "@devflow-tools/context-engine": "^0.5.0",
18
- "@devflow-tools/knowledge-engine": "^0.5.0",
19
- "@devflow-tools/memory-engine": "^0.5.0",
20
- "@devflow-tools/sdk": "^0.5.0",
21
- "@devflow-tools/telemetry": "^0.5.0",
22
- "@devflow-tools/workflow-engine": "^0.5.0",
15
+ "@devflow-tools/adapters": "^0.4.0",
16
+ "@devflow-tools/benchmark": "^0.4.0",
17
+ "@devflow-tools/context-engine": "^0.4.0",
18
+ "@devflow-tools/knowledge-engine": "^0.4.0",
19
+ "@devflow-tools/memory-engine": "^0.4.0",
20
+ "@devflow-tools/sdk": "^0.4.0",
21
+ "@devflow-tools/telemetry": "^0.4.0",
22
+ "@devflow-tools/workflow-engine": "^0.4.0",
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": "431c0f26e14d476c08d543ef5cd65367413dbc98"
40
+ "gitHead": "2d52bb1401b6501a527cac7de0f664c18bf60dcf"
41
41
  }