specweave 0.20.0 → 0.21.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 (59) hide show
  1. package/dist/src/core/increment/duplicate-detector.d.ts +0 -3
  2. package/dist/src/core/increment/duplicate-detector.d.ts.map +1 -1
  3. package/dist/src/core/increment/duplicate-detector.js +4 -22
  4. package/dist/src/core/increment/duplicate-detector.js.map +1 -1
  5. package/package.json +1 -1
  6. package/dist/locales/de/.gitkeep +0 -0
  7. package/dist/locales/de/cli.json +0 -108
  8. package/dist/locales/en/cli.json +0 -287
  9. package/dist/locales/en/errors.json +0 -7
  10. package/dist/locales/en/templates.json +0 -6
  11. package/dist/locales/es/.gitkeep +0 -0
  12. package/dist/locales/es/cli.json +0 -41
  13. package/dist/locales/fr/.gitkeep +0 -0
  14. package/dist/locales/fr/cli.json +0 -108
  15. package/dist/locales/ja/.gitkeep +0 -0
  16. package/dist/locales/ja/cli.json +0 -108
  17. package/dist/locales/ko/.gitkeep +0 -0
  18. package/dist/locales/ko/cli.json +0 -108
  19. package/dist/locales/pt/.gitkeep +0 -0
  20. package/dist/locales/pt/cli.json +0 -108
  21. package/dist/locales/ru/.gitkeep +0 -0
  22. package/dist/locales/ru/cli.json +0 -269
  23. package/dist/locales/zh/.gitkeep +0 -0
  24. package/dist/locales/zh/cli.json +0 -108
  25. package/dist/plugins/specweave-ado/lib/enhanced-ado-sync.d.ts +0 -25
  26. package/dist/plugins/specweave-ado/lib/enhanced-ado-sync.d.ts.map +0 -1
  27. package/dist/plugins/specweave-ado/lib/enhanced-ado-sync.js +0 -191
  28. package/dist/plugins/specweave-ado/lib/enhanced-ado-sync.js.map +0 -1
  29. package/dist/plugins/specweave-kafka/lib/cli/kcat-wrapper.d.ts +0 -57
  30. package/dist/plugins/specweave-kafka/lib/cli/kcat-wrapper.d.ts.map +0 -1
  31. package/dist/plugins/specweave-kafka/lib/cli/kcat-wrapper.js +0 -248
  32. package/dist/plugins/specweave-kafka/lib/cli/kcat-wrapper.js.map +0 -1
  33. package/dist/plugins/specweave-kafka/lib/cli/types.d.ts +0 -82
  34. package/dist/plugins/specweave-kafka/lib/cli/types.d.ts.map +0 -1
  35. package/dist/plugins/specweave-kafka/lib/cli/types.js +0 -13
  36. package/dist/plugins/specweave-kafka/lib/cli/types.js.map +0 -1
  37. package/dist/plugins/specweave-kafka/lib/mcp/detector.d.ts +0 -49
  38. package/dist/plugins/specweave-kafka/lib/mcp/detector.d.ts.map +0 -1
  39. package/dist/plugins/specweave-kafka/lib/mcp/detector.js +0 -316
  40. package/dist/plugins/specweave-kafka/lib/mcp/detector.js.map +0 -1
  41. package/dist/plugins/specweave-kafka/lib/mcp/types.d.ts +0 -70
  42. package/dist/plugins/specweave-kafka/lib/mcp/types.d.ts.map +0 -1
  43. package/dist/plugins/specweave-kafka/lib/mcp/types.js +0 -23
  44. package/dist/plugins/specweave-kafka/lib/mcp/types.js.map +0 -1
  45. package/dist/plugins/specweave-kafka/lib/utils/partitioning.d.ts +0 -85
  46. package/dist/plugins/specweave-kafka/lib/utils/partitioning.d.ts.map +0 -1
  47. package/dist/plugins/specweave-kafka/lib/utils/partitioning.js +0 -281
  48. package/dist/plugins/specweave-kafka/lib/utils/partitioning.js.map +0 -1
  49. package/dist/plugins/specweave-kafka/lib/utils/sizing.d.ts +0 -75
  50. package/dist/plugins/specweave-kafka/lib/utils/sizing.d.ts.map +0 -1
  51. package/dist/plugins/specweave-kafka/lib/utils/sizing.js +0 -238
  52. package/dist/plugins/specweave-kafka/lib/utils/sizing.js.map +0 -1
  53. package/dist/spec-parser.js +0 -629
  54. package/dist/src/core/sync/spec-content-sync.d.ts +0 -88
  55. package/dist/src/core/sync/spec-content-sync.d.ts.map +0 -1
  56. package/dist/src/core/sync/spec-content-sync.js +0 -5
  57. package/dist/src/core/sync/spec-content-sync.js.map +0 -1
  58. package/dist/tsconfig.tsbuildinfo +0 -1
  59. package/plugins/specweave-ado/lib/enhanced-ado-sync.js +0 -170
@@ -1,57 +0,0 @@
1
- /**
2
- * kcat CLI Wrapper
3
- *
4
- * Type-safe TypeScript wrapper for kcat (kafkacat) CLI tool.
5
- * Provides produce, consume, metadata, and query operations.
6
- */
7
- import { KcatProduceOptions, KcatConsumeOptions, KcatMetadataOptions, KcatQueryOptions, ClusterMetadata, ConsumerMessage, CLIExecutionResult } from './types';
8
- export declare class KcatWrapper {
9
- /**
10
- * Produce a message to Kafka topic
11
- */
12
- produce(message: string, options: KcatProduceOptions): Promise<CLIExecutionResult>;
13
- /**
14
- * Consume messages from Kafka topic
15
- */
16
- consume(options: KcatConsumeOptions): Promise<ConsumerMessage[]>;
17
- /**
18
- * Get cluster metadata
19
- */
20
- getMetadata(options: KcatMetadataOptions): Promise<ClusterMetadata>;
21
- /**
22
- * Query topic offsets
23
- */
24
- queryOffsets(options: KcatQueryOptions): Promise<Record<number, {
25
- earliest: number;
26
- latest: number;
27
- }>>;
28
- /**
29
- * Execute kcat command
30
- */
31
- private execute;
32
- /**
33
- * Parse consume output into messages
34
- */
35
- private parseConsumeOutput;
36
- /**
37
- * Parse metadata JSON output
38
- */
39
- private parseMetadataOutput;
40
- /**
41
- * Calculate replication factor from partitions
42
- */
43
- private calculateReplicationFactor;
44
- /**
45
- * Parse query offset output
46
- */
47
- private parseQueryOutput;
48
- /**
49
- * Check if kcat is installed
50
- */
51
- static isInstalled(): Promise<boolean>;
52
- /**
53
- * Get kcat version
54
- */
55
- static getVersion(): Promise<string>;
56
- }
57
- //# sourceMappingURL=kcat-wrapper.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"kcat-wrapper.d.ts","sourceRoot":"","sources":["../../../../../plugins/specweave-kafka/lib/cli/kcat-wrapper.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,kBAAkB,EAGnB,MAAM,SAAS,CAAC;AAIjB,qBAAa,WAAW;IACtB;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA+BxF;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAmCtE;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC;IAsBzE;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAsB5G;;OAEG;YACW,OAAO;IAsCrB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAsB1B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA4B3B;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAKlC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAmBxB;;OAEG;WACU,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAS5C;;OAEG;WACU,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;CAS3C"}
@@ -1,248 +0,0 @@
1
- /**
2
- * kcat CLI Wrapper
3
- *
4
- * Type-safe TypeScript wrapper for kcat (kafkacat) CLI tool.
5
- * Provides produce, consume, metadata, and query operations.
6
- */
7
- import { exec } from 'child_process';
8
- import { promisify } from 'util';
9
- const execAsync = promisify(exec);
10
- export class KcatWrapper {
11
- /**
12
- * Produce a message to Kafka topic
13
- */
14
- async produce(message, options) {
15
- const args = [
16
- 'kcat',
17
- '-P', // Producer mode
18
- '-b', options.brokers,
19
- '-t', options.topic
20
- ];
21
- if (options.key) {
22
- args.push('-K', ':'); // Key delimiter
23
- }
24
- if (options.partition !== undefined) {
25
- args.push('-p', options.partition.toString());
26
- }
27
- if (options.compression) {
28
- args.push('-z', options.compression);
29
- }
30
- if (options.acks !== undefined) {
31
- const acksValue = options.acks === 'all' ? '-1' : options.acks.toString();
32
- args.push('-X', `acks=${acksValue}`);
33
- }
34
- const command = args.join(' ');
35
- const input = options.key ? `${options.key}:${message}` : message;
36
- return this.execute(command, input);
37
- }
38
- /**
39
- * Consume messages from Kafka topic
40
- */
41
- async consume(options) {
42
- const args = [
43
- 'kcat',
44
- '-C', // Consumer mode
45
- '-b', options.brokers,
46
- '-t', options.topic,
47
- '-f', '%t:%p:%o:%k:%s\\n' // Format: topic:partition:offset:key:value
48
- ];
49
- if (options.offset) {
50
- args.push('-o', options.offset.toString());
51
- }
52
- if (options.partition !== undefined) {
53
- args.push('-p', options.partition.toString());
54
- }
55
- if (options.count) {
56
- args.push('-c', options.count.toString());
57
- }
58
- if (options.groupId) {
59
- args.push('-G', options.groupId);
60
- }
61
- const command = args.join(' ');
62
- const result = await this.execute(command);
63
- if (!result.success) {
64
- throw new Error(`kcat consume failed: ${result.error}`);
65
- }
66
- return this.parseConsumeOutput(result.output);
67
- }
68
- /**
69
- * Get cluster metadata
70
- */
71
- async getMetadata(options) {
72
- const args = [
73
- 'kcat',
74
- '-L', // Metadata mode
75
- '-b', options.brokers,
76
- '-J' // JSON output
77
- ];
78
- if (options.topic) {
79
- args.push('-t', options.topic);
80
- }
81
- const command = args.join(' ');
82
- const result = await this.execute(command);
83
- if (!result.success) {
84
- throw new Error(`kcat metadata failed: ${result.error}`);
85
- }
86
- return this.parseMetadataOutput(result.output);
87
- }
88
- /**
89
- * Query topic offsets
90
- */
91
- async queryOffsets(options) {
92
- const args = [
93
- 'kcat',
94
- '-Q', // Query mode
95
- '-b', options.brokers,
96
- '-t', options.topic
97
- ];
98
- if (options.partition !== undefined) {
99
- args.push('-p', options.partition.toString());
100
- }
101
- const command = args.join(' ');
102
- const result = await this.execute(command);
103
- if (!result.success) {
104
- throw new Error(`kcat query failed: ${result.error}`);
105
- }
106
- return this.parseQueryOutput(result.output);
107
- }
108
- /**
109
- * Execute kcat command
110
- */
111
- async execute(command, input) {
112
- const startTime = Date.now();
113
- try {
114
- const execOptions = {
115
- maxBuffer: 10 * 1024 * 1024, // 10MB buffer
116
- timeout: 30000 // 30 second timeout
117
- };
118
- if (input) {
119
- execOptions.input = input;
120
- }
121
- const { stdout, stderr } = await execAsync(command, execOptions);
122
- const duration = Date.now() - startTime;
123
- return {
124
- success: true,
125
- output: stdout,
126
- error: stderr || undefined,
127
- exitCode: 0,
128
- command,
129
- duration
130
- };
131
- }
132
- catch (error) {
133
- const duration = Date.now() - startTime;
134
- return {
135
- success: false,
136
- output: error.stdout || '',
137
- error: error.stderr || error.message,
138
- exitCode: error.code || 1,
139
- command,
140
- duration
141
- };
142
- }
143
- }
144
- /**
145
- * Parse consume output into messages
146
- */
147
- parseConsumeOutput(output) {
148
- const lines = output.trim().split('\n').filter(line => line.length > 0);
149
- const messages = [];
150
- for (const line of lines) {
151
- // Format: topic:partition:offset:key:value
152
- const parts = line.split(':');
153
- if (parts.length >= 5) {
154
- messages.push({
155
- topic: parts[0],
156
- partition: parseInt(parts[1]),
157
- offset: parseInt(parts[2]),
158
- key: parts[3] || undefined,
159
- value: parts.slice(4).join(':'), // Rejoin in case value contains ':'
160
- timestamp: Date.now() // kcat doesn't provide timestamp in this format
161
- });
162
- }
163
- }
164
- return messages;
165
- }
166
- /**
167
- * Parse metadata JSON output
168
- */
169
- parseMetadataOutput(output) {
170
- const metadata = JSON.parse(output);
171
- return {
172
- clusterId: metadata.originatingBroker?.cluster || 'unknown',
173
- controllerId: metadata.controllerId || -1,
174
- brokers: (metadata.brokers || []).map((b) => ({
175
- id: b.id,
176
- host: b.host,
177
- port: b.port,
178
- rack: b.rack
179
- })),
180
- topics: (metadata.topics || []).map((t) => ({
181
- name: t.topic,
182
- replicationFactor: this.calculateReplicationFactor(t.partitions),
183
- configs: {},
184
- partitions: (t.partitions || []).map((p) => ({
185
- id: p.partition,
186
- leader: p.leader,
187
- replicas: p.replicas || [],
188
- isr: p.isrs || [],
189
- earliestOffset: 0, // Not provided in metadata
190
- latestOffset: 0 // Not provided in metadata
191
- }))
192
- }))
193
- };
194
- }
195
- /**
196
- * Calculate replication factor from partitions
197
- */
198
- calculateReplicationFactor(partitions) {
199
- if (!partitions || partitions.length === 0)
200
- return 0;
201
- return partitions[0].replicas?.length || 0;
202
- }
203
- /**
204
- * Parse query offset output
205
- */
206
- parseQueryOutput(output) {
207
- const lines = output.trim().split('\n');
208
- const offsets = {};
209
- for (const line of lines) {
210
- // Format: topic partition [earliest] [latest]
211
- const match = line.match(/(\d+)\s+\[(\d+)\]\s+\[(\d+)\]/);
212
- if (match) {
213
- const partition = parseInt(match[1]);
214
- offsets[partition] = {
215
- earliest: parseInt(match[2]),
216
- latest: parseInt(match[3])
217
- };
218
- }
219
- }
220
- return offsets;
221
- }
222
- /**
223
- * Check if kcat is installed
224
- */
225
- static async isInstalled() {
226
- try {
227
- const { stdout } = await execAsync('which kcat 2>/dev/null || which kafkacat 2>/dev/null');
228
- return !!stdout.trim();
229
- }
230
- catch {
231
- return false;
232
- }
233
- }
234
- /**
235
- * Get kcat version
236
- */
237
- static async getVersion() {
238
- try {
239
- const { stdout } = await execAsync('kcat -V 2>&1 || kafkacat -V 2>&1');
240
- const match = stdout.match(/kafkacat - Apache Kafka producer and consumer tool\s+(\S+)/);
241
- return match ? match[1] : 'unknown';
242
- }
243
- catch {
244
- return 'unknown';
245
- }
246
- }
247
- }
248
- //# sourceMappingURL=kcat-wrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"kcat-wrapper.js","sourceRoot":"","sources":["../../../../../plugins/specweave-kafka/lib/cli/kcat-wrapper.ts"],"names":[],"mappings":"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"}
@@ -1,82 +0,0 @@
1
- /**
2
- * CLI Tool Types and Interfaces
3
- *
4
- * Types for kcat, kcli, kaf, kafkactl wrappers
5
- */
6
- export declare enum CLITool {
7
- KCAT = "kcat",
8
- KCLI = "kcli",
9
- KAF = "kaf",
10
- KAFKACTL = "kafkactl"
11
- }
12
- export interface KcatProduceOptions {
13
- topic: string;
14
- brokers: string;
15
- key?: string;
16
- partition?: number;
17
- headers?: Record<string, string>;
18
- compression?: 'none' | 'gzip' | 'snappy' | 'lz4' | 'zstd';
19
- acks?: 0 | 1 | 'all';
20
- }
21
- export interface KcatConsumeOptions {
22
- topic: string;
23
- brokers: string;
24
- offset?: 'beginning' | 'end' | 'stored' | number;
25
- partition?: number;
26
- count?: number;
27
- format?: 'json' | 'avro' | 'protobuf' | 'string';
28
- groupId?: string;
29
- }
30
- export interface KcatMetadataOptions {
31
- brokers: string;
32
- topic?: string;
33
- }
34
- export interface KcatQueryOptions {
35
- brokers: string;
36
- topic: string;
37
- partition?: number;
38
- }
39
- export interface TopicMetadata {
40
- name: string;
41
- partitions: PartitionMetadata[];
42
- replicationFactor: number;
43
- configs: Record<string, string>;
44
- }
45
- export interface PartitionMetadata {
46
- id: number;
47
- leader: number;
48
- replicas: number[];
49
- isr: number[];
50
- earliestOffset: number;
51
- latestOffset: number;
52
- }
53
- export interface BrokerMetadata {
54
- id: number;
55
- host: string;
56
- port: number;
57
- rack?: string;
58
- }
59
- export interface ClusterMetadata {
60
- brokers: BrokerMetadata[];
61
- topics: TopicMetadata[];
62
- clusterId: string;
63
- controllerId: number;
64
- }
65
- export interface ConsumerMessage {
66
- topic: string;
67
- partition: number;
68
- offset: number;
69
- timestamp: number;
70
- key?: string;
71
- value: string;
72
- headers?: Record<string, string>;
73
- }
74
- export interface CLIExecutionResult {
75
- success: boolean;
76
- output: string;
77
- error?: string;
78
- exitCode: number;
79
- command: string;
80
- duration: number;
81
- }
82
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../plugins/specweave-kafka/lib/cli/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,oBAAY,OAAO;IACjB,IAAI,SAAS;IACb,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,QAAQ,aAAa;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC;IAC1D,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,WAAW,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,QAAQ,CAAC;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB"}
@@ -1,13 +0,0 @@
1
- /**
2
- * CLI Tool Types and Interfaces
3
- *
4
- * Types for kcat, kcli, kaf, kafkactl wrappers
5
- */
6
- export var CLITool;
7
- (function (CLITool) {
8
- CLITool["KCAT"] = "kcat";
9
- CLITool["KCLI"] = "kcli";
10
- CLITool["KAF"] = "kaf";
11
- CLITool["KAFKACTL"] = "kafkactl";
12
- })(CLITool || (CLITool = {}));
13
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../plugins/specweave-kafka/lib/cli/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,CAAN,IAAY,OAKX;AALD,WAAY,OAAO;IACjB,wBAAa,CAAA;IACb,wBAAa,CAAA;IACb,sBAAW,CAAA;IACX,gCAAqB,CAAA;AACvB,CAAC,EALW,OAAO,KAAP,OAAO,QAKlB"}
@@ -1,49 +0,0 @@
1
- /**
2
- * MCP Server Detector
3
- *
4
- * Auto-detects installed and running MCP servers for Kafka integration.
5
- * Supports: kanapuli, tuannvm, Joel-hanson, Confluent
6
- */
7
- import { MCPDetectionResult } from './types';
8
- export declare class MCPServerDetector {
9
- /**
10
- * Detect all available MCP servers
11
- */
12
- detectAll(): Promise<MCPDetectionResult>;
13
- /**
14
- * Detect kanapuli/mcp-kafka server
15
- */
16
- private detectKanapuli;
17
- /**
18
- * Detect tuannvm/kafka-mcp-server (Go implementation)
19
- */
20
- private detectTuannvm;
21
- /**
22
- * Detect Joel-hanson/kafka-mcp-server
23
- */
24
- private detectJoelHanson;
25
- /**
26
- * Detect Confluent official MCP server
27
- */
28
- private detectConfluent;
29
- /**
30
- * Check if process is running
31
- */
32
- private isProcessRunning;
33
- /**
34
- * Rank servers by priority (Confluent > tuannvm > kanapuli > Joel-hanson)
35
- */
36
- private rankServers;
37
- /**
38
- * Get ranking reason
39
- */
40
- private getRankingReason;
41
- /**
42
- * Get capabilities for each MCP server type
43
- */
44
- private getKanapuliCapabilities;
45
- private getTuannvmCapabilities;
46
- private getJoelHansonCapabilities;
47
- private getConfluentCapabilities;
48
- }
49
- //# sourceMappingURL=detector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"detector.d.ts","sourceRoot":"","sources":["../../../../../plugins/specweave-kafka/lib/mcp/detector.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAGL,kBAAkB,EAGnB,MAAM,SAAS,CAAC;AAIjB,qBAAa,iBAAiB;IAC5B;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,kBAAkB,CAAC;IA6B9C;;OAEG;YACW,cAAc;IAyC5B;;OAEG;YACW,aAAa;IA2C3B;;OAEG;YACW,gBAAgB;IAwC9B;;OAEG;YACW,eAAe;IAuC7B;;OAEG;YACW,gBAAgB;IAS9B;;OAEG;IACH,OAAO,CAAC,WAAW;IAiBnB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAexB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAQ/B,OAAO,CAAC,sBAAsB;IAyB9B,OAAO,CAAC,yBAAyB;IAQjC,OAAO,CAAC,wBAAwB;CA8BjC"}