@devflow-tools/server 0.5.0 → 0.7.0

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 (86) hide show
  1. package/README.md +1 -1
  2. package/dist/app.module.d.ts.map +1 -1
  3. package/dist/app.module.js +10 -0
  4. package/dist/app.module.js.map +1 -1
  5. package/dist/benchmark/benchmark.controller.d.ts +18 -4
  6. package/dist/benchmark/benchmark.controller.d.ts.map +1 -1
  7. package/dist/benchmark/benchmark.controller.js +20 -12
  8. package/dist/benchmark/benchmark.controller.js.map +1 -1
  9. package/dist/benchmark/benchmark.service.d.ts +23 -5
  10. package/dist/benchmark/benchmark.service.d.ts.map +1 -1
  11. package/dist/benchmark/benchmark.service.js +82 -19
  12. package/dist/benchmark/benchmark.service.js.map +1 -1
  13. package/dist/context/context.controller.d.ts +24 -2
  14. package/dist/context/context.controller.d.ts.map +1 -1
  15. package/dist/context/context.controller.js +36 -0
  16. package/dist/context/context.controller.js.map +1 -1
  17. package/dist/context/context.controller.spec.d.ts +2 -0
  18. package/dist/context/context.controller.spec.d.ts.map +1 -0
  19. package/dist/context/context.controller.spec.js +191 -0
  20. package/dist/context/context.controller.spec.js.map +1 -0
  21. package/dist/context/context.module.d.ts.map +1 -1
  22. package/dist/context/context.module.js +2 -1
  23. package/dist/context/context.module.js.map +1 -1
  24. package/dist/context/context.service.d.ts +34 -1
  25. package/dist/context/context.service.d.ts.map +1 -1
  26. package/dist/context/context.service.js +52 -2
  27. package/dist/context/context.service.js.map +1 -1
  28. package/dist/data/data.controller.d.ts +19 -0
  29. package/dist/data/data.controller.d.ts.map +1 -0
  30. package/dist/data/data.controller.js +78 -0
  31. package/dist/data/data.controller.js.map +1 -0
  32. package/dist/data/data.controller.spec.d.ts +2 -0
  33. package/dist/data/data.controller.spec.d.ts.map +1 -0
  34. package/dist/data/data.controller.spec.js +85 -0
  35. package/dist/data/data.controller.spec.js.map +1 -0
  36. package/dist/data/data.module.d.ts +3 -0
  37. package/dist/data/data.module.d.ts.map +1 -0
  38. package/dist/data/data.module.js +22 -0
  39. package/dist/data/data.module.js.map +1 -0
  40. package/dist/data/data.service.d.ts +54 -0
  41. package/dist/data/data.service.d.ts.map +1 -0
  42. package/dist/data/data.service.js +99 -0
  43. package/dist/data/data.service.js.map +1 -0
  44. package/dist/data/data.service.spec.d.ts +2 -0
  45. package/dist/data/data.service.spec.d.ts.map +1 -0
  46. package/dist/data/data.service.spec.js +148 -0
  47. package/dist/data/data.service.spec.js.map +1 -0
  48. package/dist/main.js +1 -1
  49. package/dist/main.js.map +1 -1
  50. package/dist/projects/projects.controller.d.ts +3 -1
  51. package/dist/projects/projects.controller.d.ts.map +1 -1
  52. package/dist/projects/projects.controller.js +25 -1
  53. package/dist/projects/projects.controller.js.map +1 -1
  54. package/dist/projects/projects.controller.spec.d.ts +2 -0
  55. package/dist/projects/projects.controller.spec.d.ts.map +1 -0
  56. package/dist/projects/projects.controller.spec.js +81 -0
  57. package/dist/projects/projects.controller.spec.js.map +1 -0
  58. package/dist/projects/projects.service.d.ts +39 -0
  59. package/dist/projects/projects.service.d.ts.map +1 -1
  60. package/dist/projects/projects.service.js +23 -0
  61. package/dist/projects/projects.service.js.map +1 -1
  62. package/dist/registry/registry.controller.d.ts +1 -0
  63. package/dist/registry/registry.controller.d.ts.map +1 -1
  64. package/dist/registry/registry.controller.js +10 -0
  65. package/dist/registry/registry.controller.js.map +1 -1
  66. package/dist/registry/registry.module.d.ts.map +1 -1
  67. package/dist/registry/registry.module.js +2 -1
  68. package/dist/registry/registry.module.js.map +1 -1
  69. package/dist/registry/registry.service.d.ts +12 -2
  70. package/dist/registry/registry.service.d.ts.map +1 -1
  71. package/dist/registry/registry.service.js +87 -6
  72. package/dist/registry/registry.service.js.map +1 -1
  73. package/dist/telemetry/telemetry.controller.d.ts +12 -0
  74. package/dist/telemetry/telemetry.controller.d.ts.map +1 -1
  75. package/dist/telemetry/telemetry.controller.js +18 -4
  76. package/dist/telemetry/telemetry.controller.js.map +1 -1
  77. package/dist/telemetry/telemetry.service.d.ts +70 -1
  78. package/dist/telemetry/telemetry.service.d.ts.map +1 -1
  79. package/dist/telemetry/telemetry.service.js +344 -0
  80. package/dist/telemetry/telemetry.service.js.map +1 -1
  81. package/dist/workflow/workflow.controller.d.ts +4 -4
  82. package/dist/workflow/workflow.service.d.ts +7 -5
  83. package/dist/workflow/workflow.service.d.ts.map +1 -1
  84. package/dist/workflow/workflow.service.js +18 -0
  85. package/dist/workflow/workflow.service.js.map +1 -1
  86. package/package.json +11 -10
@@ -4,16 +4,25 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { Injectable, NotFoundException } from "@nestjs/common";
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ import { Injectable, NotFoundException, Inject } from "@nestjs/common";
14
+ import { TelemetryService } from "../telemetry/telemetry.service.js";
8
15
  import { ErrorCode } from "../common/error-codes.js";
9
16
  let RegistryService = class RegistryService {
10
- constructor() {
17
+ constructor(telemetryService) {
18
+ this.telemetryService = telemetryService;
11
19
  this.plugins = new Map();
20
+ this.installRecords = [];
12
21
  }
13
22
  async list(search, tag) {
14
23
  let result = Array.from(this.plugins.values());
15
24
  if (search) {
16
- const q = search.toLowerCase();
25
+ let q = search.toLowerCase();
17
26
  result = result.filter((p) => p.name.toLowerCase().includes(q) || p.description.toLowerCase().includes(q));
18
27
  }
19
28
  if (tag) {
@@ -40,7 +49,7 @@ let RegistryService = class RegistryService {
40
49
  this.plugins.set(name, meta);
41
50
  return meta;
42
51
  }
43
- async install(name, _rootPath) {
52
+ async install(name, rootPath) {
44
53
  const npmName = name.startsWith("@devflow-tools/plugin-") ? name : `@devflow-tools/plugin-${name}`;
45
54
  const shortName = name.replace(/^@devflow-tools\/plugin-/, "");
46
55
  this.plugins.set(shortName, {
@@ -51,16 +60,88 @@ let RegistryService = class RegistryService {
51
60
  tags: [],
52
61
  createdAt: Date.now(),
53
62
  });
63
+ if (rootPath) {
64
+ await this.recordPluginInstall(shortName, rootPath);
65
+ }
54
66
  return { ok: true, name: shortName };
55
67
  }
56
- async uninstall(name, _rootPath) {
68
+ async uninstall(name, rootPath) {
57
69
  const shortName = name.replace(/^@devflow-tools\/plugin-/, "");
58
70
  this.plugins.delete(shortName);
71
+ if (rootPath) {
72
+ await this.recordPluginUninstall(shortName, rootPath);
73
+ }
59
74
  return { ok: true, name: shortName };
60
75
  }
76
+ async recordPluginInstall(pluginName, projectRoot) {
77
+ const existing = this.installRecords.find((r) => r.pluginName === pluginName && r.projectRoot === projectRoot);
78
+ if (existing) {
79
+ existing.uninstalledAt = undefined;
80
+ }
81
+ else {
82
+ this.installRecords.push({
83
+ pluginName,
84
+ projectRoot,
85
+ installedAt: Date.now(),
86
+ });
87
+ }
88
+ }
89
+ async recordPluginUninstall(pluginName, projectRoot) {
90
+ const record = this.installRecords.find((r) => r.pluginName === pluginName && r.projectRoot === projectRoot);
91
+ if (record) {
92
+ record.uninstalledAt = Date.now();
93
+ }
94
+ }
95
+ async listInstalledProjects(pluginName) {
96
+ return this.installRecords
97
+ .filter((r) => r.pluginName === pluginName && !r.uninstalledAt)
98
+ .map((r) => r.projectRoot);
99
+ }
100
+ async buildPluginEffectiveness(pluginName) {
101
+ const installedProjects = await this.listInstalledProjects(pluginName);
102
+ const installCount = installedProjects.length;
103
+ const usageStats = await this.telemetryService.getPluginUsageStats(pluginName);
104
+ const activeRate = installCount > 0
105
+ ? usageStats.activeProjects / installCount
106
+ : 0;
107
+ const successRate = usageStats.totalRuns > 0
108
+ ? usageStats.successfulRuns / usageStats.totalRuns
109
+ : 0;
110
+ let recommendation = "optimize";
111
+ if (activeRate > 0.7 && successRate > 0.8) {
112
+ recommendation = "install";
113
+ }
114
+ else if (activeRate < 0.3 || successRate < 0.5) {
115
+ recommendation = "remove";
116
+ }
117
+ return {
118
+ name: pluginName,
119
+ installCount,
120
+ usageCount: usageStats.totalRuns,
121
+ activeRate,
122
+ successRate,
123
+ avgTokenImpact: usageStats.avgTokenImpact,
124
+ lastUsedAt: usageStats.lastUsedAt,
125
+ recommendation,
126
+ };
127
+ }
128
+ async getPluginEffectiveness(projectRoot) {
129
+ const records = projectRoot
130
+ ? this.installRecords.filter((r) => r.projectRoot === projectRoot && !r.uninstalledAt)
131
+ : this.installRecords.filter((r) => !r.uninstalledAt);
132
+ const pluginNames = [...new Set(records.map((r) => r.pluginName))];
133
+ const summaries = [];
134
+ for (const name of pluginNames) {
135
+ const summary = await this.buildPluginEffectiveness(name);
136
+ summaries.push(summary);
137
+ }
138
+ return summaries;
139
+ }
61
140
  };
62
141
  RegistryService = __decorate([
63
- Injectable()
142
+ Injectable(),
143
+ __param(0, Inject(TelemetryService)),
144
+ __metadata("design:paramtypes", [TelemetryService])
64
145
  ], RegistryService);
65
146
  export { RegistryService };
66
147
  //# sourceMappingURL=registry.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.service.js","sourceRoot":"","sources":["../../src/registry/registry.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.service.js","sourceRoot":"","sources":["../../src/registry/registry.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;IAO9B,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"}
@@ -19,7 +19,11 @@ let TelemetryController = class TelemetryController {
19
19
  async listRuns(limit, offset, source) {
20
20
  return this.service.listRuns(Number(limit) || 20, Number(offset) || 0, source);
21
21
  }
22
- async getRun(id) { return this.service.getRun(id); }
22
+ async getRun(id) {
23
+ const run = await this.service.getRun(id);
24
+ const analysis = await this.service.classifyFailure(id);
25
+ return { ...run, ...analysis };
26
+ }
23
27
  async getTimeline(from, to) {
24
28
  return this.service.getTimeline(from, to);
25
29
  }
@@ -32,6 +36,9 @@ let TelemetryController = class TelemetryController {
32
36
  async getStats(days) {
33
37
  return this.service.getStats(Number(days) || 7);
34
38
  }
39
+ async getRoiSummary(days) {
40
+ return this.service.getRoiSummary(Number(days) || 7);
41
+ }
35
42
  async cleanup(body) {
36
43
  const count = await this.service.cleanup(body.olderThanDays ?? 30);
37
44
  return { ok: true, data: { removedRuns: count } };
@@ -76,21 +83,28 @@ __decorate([
76
83
  __metadata("design:returntype", Promise)
77
84
  ], TelemetryController.prototype, "getRunStats", null);
78
85
  __decorate([
79
- Get("telemetry/stats"),
86
+ Get("stats"),
80
87
  __param(0, Query("days")),
81
88
  __metadata("design:type", Function),
82
89
  __metadata("design:paramtypes", [String]),
83
90
  __metadata("design:returntype", Promise)
84
91
  ], TelemetryController.prototype, "getStats", null);
85
92
  __decorate([
86
- Post("telemetry/cleanup"),
93
+ Get("roi-summary"),
94
+ __param(0, Query("days")),
95
+ __metadata("design:type", Function),
96
+ __metadata("design:paramtypes", [String]),
97
+ __metadata("design:returntype", Promise)
98
+ ], TelemetryController.prototype, "getRoiSummary", null);
99
+ __decorate([
100
+ Post("cleanup"),
87
101
  __param(0, Body()),
88
102
  __metadata("design:type", Function),
89
103
  __metadata("design:paramtypes", [Object]),
90
104
  __metadata("design:returntype", Promise)
91
105
  ], TelemetryController.prototype, "cleanup", null);
92
106
  TelemetryController = __decorate([
93
- Controller(),
107
+ Controller("telemetry"),
94
108
  __param(0, Inject(TelemetryService)),
95
109
  __metadata("design:paramtypes", [TelemetryService])
96
110
  ], TelemetryController);
@@ -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,6 +1,8 @@
1
1
  import { TelemetryEngine } from "@devflow-tools/telemetry";
2
+ import type { TelemetryEvent, RoiSummary } from "@devflow-tools/sdk";
2
3
  export declare class TelemetryService {
3
4
  engine: TelemetryEngine;
5
+ recordEvent(event: TelemetryEvent): Promise<void>;
4
6
  listRuns(limit: number, offset: number, source?: string): Promise<{
5
7
  id: any;
6
8
  agent: any;
@@ -12,8 +14,18 @@ export declare class TelemetryService {
12
14
  }[]>;
13
15
  getRun(id: string): Promise<any>;
14
16
  getTimeline(from?: string, to?: string): Promise<any[]>;
15
- getRunEvents(runId: string): Promise<import("@devflow-tools/sdk").TelemetryEvent[]>;
17
+ getRunEvents(runId: string): Promise<TelemetryEvent[]>;
16
18
  getRunStats(runId: string): Promise<import("@devflow-tools/sdk").RunStats>;
19
+ getFeedbackStats(projectRoot?: string, periodDays?: number): Promise<{
20
+ total: number;
21
+ hits: number;
22
+ partials: number;
23
+ misses: number;
24
+ hitRate: number;
25
+ partialRate: number;
26
+ missRate: number;
27
+ }>;
28
+ private collectAllEvents;
17
29
  getStats(periodDays?: number): Promise<{
18
30
  period: {
19
31
  from: string;
@@ -33,6 +45,63 @@ export declare class TelemetryService {
33
45
  tokens: number;
34
46
  date: string;
35
47
  }[];
48
+ byWorkflow: {
49
+ name: string;
50
+ runs: number;
51
+ successRate: number;
52
+ avgDuration: number;
53
+ }[];
54
+ byPlugin: {
55
+ name: string;
56
+ runs: number;
57
+ successRate: number;
58
+ }[];
59
+ }>;
60
+ private buildWorkflowBreakdown;
61
+ private buildPluginBreakdown;
62
+ getOpsRoiSummary(): Promise<{
63
+ period: string;
64
+ totalRuns: number;
65
+ successfulRuns: number;
66
+ successRate: number;
67
+ avgTokenUsage: number;
68
+ avgDuration: number;
69
+ feedbackHitRate: number;
70
+ trend: "stable";
71
+ }>;
72
+ getExperimentalRoiSummary(): Promise<{
73
+ totalScenarios: number;
74
+ avgTimeSavedRate: number;
75
+ avgTokenReductionRate: number;
76
+ avgFirstPassLift: number;
77
+ avgReworkReductionRate: number;
78
+ conclusion: string;
79
+ }>;
80
+ getRoiSummary(periodDays?: number): Promise<RoiSummary>;
81
+ getPluginEffectiveness(pluginName: string, projectRoot?: string): Promise<{
82
+ name: string;
83
+ installCount: number;
84
+ activeRate: number;
85
+ successRate: number;
86
+ avgTokenImpact: number;
87
+ lastUsedAt: string | undefined;
88
+ recommendation: "install" | "optimize" | "remove";
89
+ }>;
90
+ getPluginUsageStats(pluginName: string): Promise<{
91
+ activeProjects: number;
92
+ totalRuns: number;
93
+ successfulRuns: number;
94
+ avgTokenImpact: number;
95
+ lastUsedAt?: string;
96
+ }>;
97
+ private getRecommendation;
98
+ classifyFailure(runId: string): Promise<{
99
+ failureCategory?: string;
100
+ failureReason?: string;
101
+ suggestedActions?: Array<{
102
+ action: string;
103
+ priority: string;
104
+ }>;
36
105
  }>;
37
106
  cleanup(olderThanDays: number): Promise<number>;
38
107
  }
@@ -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,cAAc,EAAE,UAAU,EAAmB,MAAM,oBAAoB,CAAC;AAGtF,qBACa,gBAAgB;IAC3B,MAAM,kBAAyB;IAEzB,WAAW,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD,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,gBAAgB,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QACzE,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IA4BF,OAAO,CAAC,gBAAgB;IAUlB,QAAQ,CAAC,UAAU,SAAI;;;;;;;;;;;;;;;kBAMQ,MAAM;oBAAU,MAAM;;;;;;;;;;;;;;;IA2C3D,OAAO,CAAC,sBAAsB;IAsB9B,OAAO,CAAC,oBAAoB;IAgBtB,gBAAgB,IAAI,OAAO,CAAC;QAChC,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;QACvB,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,eAAe,EAAE,MAAM,CAAC;QACxB,KAAK,EAAE,QAAQ,CAAC;KACjB,CAAC;IA0CI,yBAAyB,IAAI,OAAO,CAAC;QACzC,cAAc,EAAE,MAAM,CAAC;QACvB,gBAAgB,EAAE,MAAM,CAAC;QACzB,qBAAqB,EAAE,MAAM,CAAC;QAC9B,gBAAgB,EAAE,MAAM,CAAC;QACzB,sBAAsB,EAAE,MAAM,CAAC;QAC/B,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IAcI,aAAa,CAAC,UAAU,SAAI,GAAG,OAAO,CAAC,UAAU,CAAC;IAsGlD,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM;;;;;;;;;IA6B/D,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;QACrD,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IAkCF,OAAO,CAAC,iBAAiB;IAOnB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAC5C,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,gBAAgB,CAAC,EAAE,KAAK,CAAC;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAChE,CAAC;IA+DI,OAAO,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAYtD"}