@kadi.build/core 0.0.1-alpha.13 → 0.0.1-alpha.15
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.
- package/dist/abilities/AbilityLoader.d.ts +136 -12
- package/dist/abilities/AbilityLoader.d.ts.map +1 -1
- package/dist/abilities/AbilityLoader.js +432 -64
- package/dist/abilities/AbilityLoader.js.map +1 -1
- package/dist/abilities/types.d.ts +119 -4
- package/dist/abilities/types.d.ts.map +1 -1
- package/dist/broker/BrokerConnectionManager.d.ts +12 -32
- package/dist/broker/BrokerConnectionManager.d.ts.map +1 -1
- package/dist/broker/BrokerConnectionManager.js +12 -40
- package/dist/broker/BrokerConnectionManager.js.map +1 -1
- package/dist/client/KadiClient.d.ts +6 -8
- package/dist/client/KadiClient.d.ts.map +1 -1
- package/dist/client/KadiClient.js +143 -89
- package/dist/client/KadiClient.js.map +1 -1
- package/dist/config/ConfigLoader.d.ts.map +1 -1
- package/dist/config/ConfigLoader.js +1 -0
- package/dist/config/ConfigLoader.js.map +1 -1
- package/dist/config/ConfigResolver.d.ts +7 -14
- package/dist/config/ConfigResolver.d.ts.map +1 -1
- package/dist/config/ConfigResolver.js +23 -42
- package/dist/config/ConfigResolver.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/transports/NativeTransport.d.ts.map +1 -1
- package/dist/transports/NativeTransport.js +22 -0
- package/dist/transports/NativeTransport.js.map +1 -1
- package/dist/transports/StdioTransport.d.ts +17 -2
- package/dist/transports/StdioTransport.d.ts.map +1 -1
- package/dist/transports/StdioTransport.js +45 -10
- package/dist/transports/StdioTransport.js.map +1 -1
- package/dist/types/config.d.ts +90 -51
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/config.js.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/utils/LockfileResolver.d.ts +169 -28
- package/dist/utils/LockfileResolver.d.ts.map +1 -1
- package/dist/utils/LockfileResolver.js +325 -71
- package/dist/utils/LockfileResolver.js.map +1 -1
- package/dist/utils/legacyHelpers.d.ts +82 -0
- package/dist/utils/legacyHelpers.d.ts.map +1 -0
- package/dist/utils/legacyHelpers.js +226 -0
- package/dist/utils/legacyHelpers.js.map +1 -0
- package/package.json +1 -1
- package/dist/api/index.d.ts +0 -92
- package/dist/api/index.d.ts.map +0 -1
- package/dist/api/index.js +0 -124
- package/dist/api/index.js.map +0 -1
|
@@ -12,7 +12,6 @@
|
|
|
12
12
|
import { EventEmitter } from 'events';
|
|
13
13
|
import { KadiError, ErrorCode } from '../types/index.js';
|
|
14
14
|
import { KadiMessages } from '../messages/index.js';
|
|
15
|
-
import { ConfigResolver } from '../config/ConfigResolver.js';
|
|
16
15
|
import { ToolRegistry } from '../tools/ToolRegistry.js';
|
|
17
16
|
import { EventHub } from '../events/EventHub.js';
|
|
18
17
|
import { BrokerConnectionManager } from '../broker/BrokerConnectionManager.js';
|
|
@@ -92,17 +91,43 @@ export class KadiClient extends EventEmitter {
|
|
|
92
91
|
*/
|
|
93
92
|
constructor(config) {
|
|
94
93
|
super();
|
|
95
|
-
//
|
|
94
|
+
// Step 1: Normalize input - convert string URL to config object
|
|
95
|
+
// Allows: new KadiClient('ws://localhost:8080') shorthand
|
|
96
|
+
const cfg = typeof config === 'string'
|
|
97
|
+
? { name: 'kadi-client', broker: config }
|
|
98
|
+
: config;
|
|
99
|
+
// Step 2: Apply defaults to create resolved config
|
|
100
|
+
// Only uses what's passed to constructor - no env vars, no file loading
|
|
101
|
+
this.config = {
|
|
102
|
+
name: cfg.name || 'unnamed-client',
|
|
103
|
+
version: cfg.version || '1.0.0',
|
|
104
|
+
description: cfg.description,
|
|
105
|
+
role: cfg.role || 'agent',
|
|
106
|
+
transport: cfg.transport || 'native',
|
|
107
|
+
broker: cfg.broker, // Optional - undefined for local-only mode
|
|
108
|
+
networks: cfg.networks || ['global'],
|
|
109
|
+
abilityAgentJSON: cfg.abilityAgentJSON,
|
|
110
|
+
autoConnect: cfg.autoConnect || false,
|
|
111
|
+
projectRoot: cfg.projectRoot || process.cwd(),
|
|
112
|
+
advanced: {
|
|
113
|
+
heartbeatInterval: 30000,
|
|
114
|
+
requestTimeout: 30000,
|
|
115
|
+
connectionTimeout: 10000,
|
|
116
|
+
autoReconnect: true,
|
|
117
|
+
maxReconnectAttempts: 5,
|
|
118
|
+
verbose: false,
|
|
119
|
+
...cfg.advanced // User overrides
|
|
120
|
+
},
|
|
121
|
+
sources: {}
|
|
122
|
+
};
|
|
123
|
+
// Step 3: Initialize subsystems
|
|
96
124
|
this.tools = new ToolRegistry();
|
|
97
|
-
this.events = new EventHub(
|
|
125
|
+
this.events = new EventHub(this.config.name);
|
|
98
126
|
this.brokers = new BrokerConnectionManager();
|
|
99
|
-
this.abilityLoader = new AbilityLoader(
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
// Update event hub source to match client name
|
|
104
|
-
this.events.setSource(this.config.name);
|
|
105
|
-
// Forward broker events
|
|
127
|
+
this.abilityLoader = new AbilityLoader({
|
|
128
|
+
projectRoot: this.config.projectRoot
|
|
129
|
+
});
|
|
130
|
+
// Step 4: Wire up event forwarding from broker to client
|
|
106
131
|
this.setupBrokerEventForwarding();
|
|
107
132
|
}
|
|
108
133
|
/**
|
|
@@ -117,58 +142,59 @@ export class KadiClient extends EventEmitter {
|
|
|
117
142
|
* ```
|
|
118
143
|
*/
|
|
119
144
|
async connect() {
|
|
145
|
+
// Step 1: Prevent double-connection (would leak resources)
|
|
120
146
|
if (this.initialized) {
|
|
121
|
-
return;
|
|
147
|
+
return undefined;
|
|
122
148
|
}
|
|
123
|
-
//
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
if (this.config.brokers && Object.keys(this.config.brokers).length > 0) {
|
|
129
|
-
await this.connectToBrokers();
|
|
149
|
+
// Step 2: Connect to broker if URL was provided
|
|
150
|
+
// If no broker configured, client works in local-only mode
|
|
151
|
+
let agentId;
|
|
152
|
+
if (this.config.broker) {
|
|
153
|
+
agentId = await this.connectToBroker();
|
|
130
154
|
}
|
|
155
|
+
// Step 3: Mark as initialized and notify listeners
|
|
131
156
|
this.initialized = true;
|
|
132
157
|
this.emit('ready');
|
|
158
|
+
// Step 4: Return agent ID assigned by broker (for logging/debugging)
|
|
159
|
+
return agentId;
|
|
133
160
|
}
|
|
134
161
|
/**
|
|
135
|
-
* Connect to
|
|
162
|
+
* Connect to the configured broker
|
|
163
|
+
*
|
|
164
|
+
* Establishes WebSocket connection, performs authentication handshake,
|
|
165
|
+
* registers tools, and starts heartbeat monitoring.
|
|
136
166
|
*/
|
|
137
|
-
async
|
|
138
|
-
if (!this.config.
|
|
139
|
-
return;
|
|
167
|
+
async connectToBroker() {
|
|
168
|
+
if (!this.config.broker) {
|
|
169
|
+
return undefined;
|
|
140
170
|
}
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
171
|
+
// Step 1: Create broker connection config
|
|
172
|
+
// Single broker always named 'default' internally
|
|
173
|
+
const brokerConfig = {
|
|
174
|
+
name: 'default',
|
|
175
|
+
url: this.config.broker,
|
|
144
176
|
heartbeatInterval: this.config.advanced.heartbeatInterval,
|
|
145
177
|
requestTimeout: this.config.advanced.requestTimeout,
|
|
146
178
|
connectionTimeout: this.config.advanced.connectionTimeout
|
|
147
|
-
}
|
|
148
|
-
//
|
|
149
|
-
await this.brokers.
|
|
150
|
-
//
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
});
|
|
167
|
-
// Register capabilities
|
|
168
|
-
await this.registerCapabilitiesWithBroker(protocol);
|
|
169
|
-
// Start heartbeat
|
|
170
|
-
protocol.startHeartbeat(this.config.advanced.heartbeatInterval ?? 30000);
|
|
171
|
-
}
|
|
179
|
+
};
|
|
180
|
+
// Step 2: Establish WebSocket connection
|
|
181
|
+
const connection = await this.brokers.connect(brokerConfig);
|
|
182
|
+
// Step 3: Create protocol handler for KADI handshake and tool calls
|
|
183
|
+
const protocol = new BrokerProtocol(connection);
|
|
184
|
+
this.protocols.set('default', protocol);
|
|
185
|
+
// Step 4: Authenticate with broker and receive agent ID
|
|
186
|
+
const handshakeResult = await protocol.handshake({
|
|
187
|
+
role: this.config.role || 'agent',
|
|
188
|
+
name: this.config.name,
|
|
189
|
+
version: this.config.version,
|
|
190
|
+
protocolVersion: PROTOCOL_VERSION,
|
|
191
|
+
networks: this.config.networks
|
|
192
|
+
});
|
|
193
|
+
// Step 5: Register all tools to make them discoverable
|
|
194
|
+
await this.registerCapabilitiesWithBroker(protocol);
|
|
195
|
+
// Step 6: Start heartbeat to keep connection alive
|
|
196
|
+
protocol.startHeartbeat(this.config.advanced.heartbeatInterval ?? 30000);
|
|
197
|
+
return handshakeResult.agentId;
|
|
172
198
|
}
|
|
173
199
|
/**
|
|
174
200
|
* Register capabilities with a broker
|
|
@@ -254,11 +280,19 @@ export class KadiClient extends EventEmitter {
|
|
|
254
280
|
}
|
|
255
281
|
// Register the tool with the converted schemas
|
|
256
282
|
this.tools.register(finalDefinition, handler);
|
|
257
|
-
// If already connected to
|
|
283
|
+
// If already connected to broker, register the new tool immediately
|
|
284
|
+
// This allows tools to be added dynamically after initial connection
|
|
285
|
+
// NOTE: We don't await this to avoid blocking the registerTool call,
|
|
286
|
+
// but the registration happens asynchronously in the background
|
|
258
287
|
if (this.initialized && this.protocols.size > 0) {
|
|
259
|
-
|
|
288
|
+
const protocol = this.protocols.get('default');
|
|
289
|
+
if (protocol) {
|
|
290
|
+
// Register ALL tools with broker asynchronously (not just the new one)
|
|
291
|
+
// Important: This is fire-and-forget to keep registerTool synchronous
|
|
292
|
+
// If you need to ensure registration completes, call await client.waitForRegistration()
|
|
293
|
+
// Note: Must send all tools because broker replaces the entire tool set
|
|
260
294
|
protocol.registerCapabilities({
|
|
261
|
-
tools:
|
|
295
|
+
tools: this.tools.extractDefinitions(), // Send ALL tools, not just new one
|
|
262
296
|
networks: this.config.networks,
|
|
263
297
|
displayName: this.config.name
|
|
264
298
|
}).catch(error => {
|
|
@@ -438,24 +472,49 @@ export class KadiClient extends EventEmitter {
|
|
|
438
472
|
* ```
|
|
439
473
|
*/
|
|
440
474
|
async disconnect() {
|
|
441
|
-
|
|
442
|
-
|
|
475
|
+
if (process.env.KADI_DEBUG) {
|
|
476
|
+
console.log(`[DEBUG] KadiClient.disconnect() called for ${this.config.name}`);
|
|
477
|
+
console.log(`[DEBUG] Initialized: ${this.initialized}`);
|
|
478
|
+
}
|
|
479
|
+
// Stop broker heartbeat and cleanup protocol
|
|
480
|
+
if (process.env.KADI_DEBUG) {
|
|
481
|
+
console.log(`[DEBUG] Cleaning up broker protocol`);
|
|
482
|
+
}
|
|
483
|
+
const protocol = this.protocols.get('default');
|
|
484
|
+
if (protocol) {
|
|
443
485
|
protocol.cleanup();
|
|
444
486
|
}
|
|
445
|
-
// Disconnect from
|
|
487
|
+
// Disconnect from broker
|
|
488
|
+
if (process.env.KADI_DEBUG) {
|
|
489
|
+
console.log(`[DEBUG] Disconnecting from broker...`);
|
|
490
|
+
}
|
|
446
491
|
await this.brokers.disconnectAll();
|
|
492
|
+
if (process.env.KADI_DEBUG) {
|
|
493
|
+
console.log(`[DEBUG] Broker disconnected`);
|
|
494
|
+
}
|
|
447
495
|
// Unload all abilities
|
|
496
|
+
if (process.env.KADI_DEBUG) {
|
|
497
|
+
console.log(`[DEBUG] Unloading all abilities...`);
|
|
498
|
+
}
|
|
448
499
|
await this.abilityLoader.unloadAll();
|
|
500
|
+
if (process.env.KADI_DEBUG) {
|
|
501
|
+
console.log(`[DEBUG] All abilities unloaded`);
|
|
502
|
+
}
|
|
449
503
|
// Clear event subscriptions
|
|
450
504
|
this.events.clear();
|
|
451
505
|
// Clear protocols
|
|
452
506
|
this.protocols.clear();
|
|
507
|
+
// Remove all listeners from brokers to allow process to exit
|
|
508
|
+
this.brokers.removeAllListeners();
|
|
453
509
|
this.initialized = false;
|
|
454
510
|
this.emit('disconnected');
|
|
455
511
|
// If running in stdio mode, exit process
|
|
456
512
|
if (this.stdioServer) {
|
|
457
513
|
this.stdioServer.shutdown();
|
|
458
514
|
}
|
|
515
|
+
if (process.env.KADI_DEBUG) {
|
|
516
|
+
console.log(`[DEBUG] KadiClient.disconnect() completed for ${this.config.name}`);
|
|
517
|
+
}
|
|
459
518
|
}
|
|
460
519
|
/**
|
|
461
520
|
* Stdio server instance (when running in stdio mode)
|
|
@@ -603,10 +662,24 @@ export class KadiClient extends EventEmitter {
|
|
|
603
662
|
reader.onData(chunk);
|
|
604
663
|
});
|
|
605
664
|
// Step 6: Handle graceful shutdown on SIGTERM/SIGINT
|
|
606
|
-
|
|
665
|
+
// CRITICAL: This enables the chain reaction for nested abilities
|
|
666
|
+
// When parent sends SIGTERM, this process will disconnect its own
|
|
667
|
+
// loaded abilities BEFORE exiting, preventing orphan processes
|
|
668
|
+
const cleanup = async () => {
|
|
669
|
+
console.log('[KADI Stdio Server] Received shutdown signal, cleaning up...');
|
|
670
|
+
// STEP 1: Disconnect all loaded abilities FIRST
|
|
671
|
+
// This ensures the chain reaction propagates down to all nested abilities
|
|
672
|
+
// Example: TypeScript → Python → Go
|
|
673
|
+
// TypeScript sends SIGTERM to Python
|
|
674
|
+
// Python (this handler) calls disconnect() → kills Go
|
|
675
|
+
// Go exits cleanly
|
|
676
|
+
// Python exits cleanly
|
|
677
|
+
await this.disconnect();
|
|
678
|
+
// STEP 2: Then cleanup stdio resources
|
|
607
679
|
console.log = originalLog;
|
|
608
680
|
reader.destroy();
|
|
609
681
|
writer.destroy();
|
|
682
|
+
// STEP 3: Exit cleanly
|
|
610
683
|
process.exit(0);
|
|
611
684
|
};
|
|
612
685
|
process.on('SIGTERM', cleanup);
|
|
@@ -668,10 +741,21 @@ export class KadiClient extends EventEmitter {
|
|
|
668
741
|
// Broker connection should auto-reconnect if configured
|
|
669
742
|
});
|
|
670
743
|
// Step 7: Handle graceful shutdown on SIGTERM/SIGINT
|
|
744
|
+
// CRITICAL: Complete cleanup for nested abilities
|
|
745
|
+
//
|
|
746
|
+
// This server is serving in BROKER mode (how it exposes itself),
|
|
747
|
+
// BUT it might have also LOADED other abilities using any transport:
|
|
748
|
+
// - stdio: Local child processes (need to be killed)
|
|
749
|
+
// - native: In-process modules (need to be unloaded)
|
|
750
|
+
// - broker: Remote services (connections need to be closed)
|
|
751
|
+
//
|
|
752
|
+
// Calling this.disconnect() handles ALL of these:
|
|
753
|
+
// 1. Disconnects from broker (how this server serves)
|
|
754
|
+
// 2. Unloads ALL abilities this server loaded (prevents orphans)
|
|
671
755
|
const shutdown = async () => {
|
|
672
756
|
console.log('\n[KADI Broker Server] Shutting down...');
|
|
673
|
-
await
|
|
674
|
-
console.log('[KADI Broker Server]
|
|
757
|
+
await this.disconnect();
|
|
758
|
+
console.log('[KADI Broker Server] Cleanup complete');
|
|
675
759
|
process.exit(0);
|
|
676
760
|
};
|
|
677
761
|
process.on('SIGTERM', shutdown);
|
|
@@ -803,36 +887,6 @@ export class KadiClient extends EventEmitter {
|
|
|
803
887
|
get networks() {
|
|
804
888
|
return this.config.networks;
|
|
805
889
|
}
|
|
806
|
-
/**
|
|
807
|
-
* Create minimal configuration for constructor
|
|
808
|
-
* Full resolution happens in connect()
|
|
809
|
-
*/
|
|
810
|
-
createMinimalConfig(config) {
|
|
811
|
-
const normalized = typeof config === 'string'
|
|
812
|
-
? { brokers: { default: config } }
|
|
813
|
-
: config;
|
|
814
|
-
return {
|
|
815
|
-
name: normalized.name ?? 'unnamed-client',
|
|
816
|
-
version: normalized.version ?? '1.0.0',
|
|
817
|
-
description: normalized.description ?? '',
|
|
818
|
-
role: normalized.role ?? 'agent',
|
|
819
|
-
transport: normalized.transport ?? 'native',
|
|
820
|
-
brokers: normalized.brokers ?? { default: '' },
|
|
821
|
-
defaultBroker: normalized.defaultBroker ?? 'default',
|
|
822
|
-
networks: normalized.networks ?? ['global'],
|
|
823
|
-
abilityAgentJSON: normalized.abilityAgentJSON ?? '',
|
|
824
|
-
autoConnect: normalized.autoConnect ?? false,
|
|
825
|
-
advanced: {
|
|
826
|
-
heartbeatInterval: 30000,
|
|
827
|
-
requestTimeout: 30000,
|
|
828
|
-
connectionTimeout: 10000,
|
|
829
|
-
autoReconnect: true,
|
|
830
|
-
maxReconnectAttempts: 5,
|
|
831
|
-
verbose: false
|
|
832
|
-
},
|
|
833
|
-
sources: {}
|
|
834
|
-
};
|
|
835
|
-
}
|
|
836
890
|
/**
|
|
837
891
|
* Setup broker event forwarding
|
|
838
892
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KadiClient.js","sourceRoot":"","sources":["../../src/client/KadiClient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"KadiClient.js","sourceRoot":"","sources":["../../src/client/KadiClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigLoader.d.ts","sourceRoot":"","sources":["../../src/config/ConfigLoader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAiB,MAAM,mBAAmB,CAAC;AAEnF;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,YAAY;IACvB;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,WAAW,CAI1B;IAEF;;;;;;;;;;;;;;;;OAgBG;IACH,mBAAmB,IAAI,SAAS;
|
|
1
|
+
{"version":3,"file":"ConfigLoader.d.ts","sourceRoot":"","sources":["../../src/config/ConfigLoader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAiB,MAAM,mBAAmB,CAAC;AAEnF;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,YAAY;IACvB;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,WAAW,CAI1B;IAEF;;;;;;;;;;;;;;;;OAgBG;IACH,mBAAmB,IAAI,SAAS;IAWhC;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,YAAY,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAoBtE;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAqBtB;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAWtB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,OAAO,CAAC,mBAAmB;IAoB3B;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAatB;;;;;;;;;;;;;;;OAeG;IACH,aAAa,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;CAYhD"}
|
|
@@ -59,6 +59,7 @@ export class ConfigLoader {
|
|
|
59
59
|
KADI_NETWORKS: process.env.KADI_NETWORKS,
|
|
60
60
|
KADI_TRANSPORT: this.parseTransport(process.env.KADI_TRANSPORT),
|
|
61
61
|
KADI_AGENT_NAME: process.env.KADI_AGENT_NAME,
|
|
62
|
+
KADI_PROJECT_ROOT: process.env.KADI_PROJECT_ROOT,
|
|
62
63
|
KADI_AUTO_CONNECT: process.env.KADI_AUTO_CONNECT
|
|
63
64
|
};
|
|
64
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigLoader.js","sourceRoot":"","sources":["../../src/config/ConfigLoader.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ConfigLoader.js","sourceRoot":"","sources":["../../src/config/ConfigLoader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAGxC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,OAAO,YAAY;IACvB;;OAEG;IACc,WAAW,GAAG;QAC7B,YAAY;QACZ,kBAAkB;QAClB,cAAc;KACf,CAAC;IAEF;;;;;;;;;;;;;;;;OAgBG;IACH,mBAAmB;QACjB,OAAO;YACL,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe;YAC5C,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa;YACxC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;YAC/D,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe;YAC5C,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;YAChD,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;SACjD,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,KAAK,CAAC,YAAY,CAAC,QAAiB;QAClC,MAAM,SAAS,GAAG,QAAQ,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAE5C,0BAA0B;QAC1B,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YAC5D,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;QAED,qCAAqC;QACrC,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;QAC1D,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACK,cAAc,CAAC,QAAgB,EAAE,QAAgB;QACvD,IAAI,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAE1B,OAAO,UAAU,KAAK,IAAI,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YAC/C,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACzB,OAAO,QAAQ,CAAC;YAClB,CAAC;YAED,wBAAwB;YACxB,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;YACtC,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;gBAC7B,MAAM,CAAC,eAAe;YACxB,CAAC;YACD,UAAU,GAAG,SAAS,CAAC;QACzB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACK,cAAc,CAAC,QAAgB;QACrC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAChD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAoB,CAAC;YACtD,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,8BAA8B,QAAQ,GAAG,EAAE,KAAK,CAAC,CAAC;YAC/D,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACK,mBAAmB,CAAC,QAAgB;QAC1C,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QACtE,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YACvD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAA+B,CAAC;YAEtE,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;gBACrB,OAAO,WAAW,CAAC,IAAI,CAAC;YAC1B,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,6CAA6C;QAC/C,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACK,cAAc,CAAC,KAAyB;QAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAClC,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;YAClE,OAAO,KAAsB,CAAC;QAChC,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,aAAa,CAAC,QAAiB;QAC7B,MAAM,SAAS,GAAG,QAAQ,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAE5C,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YAC5D,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO,QAAQ,CAAC;YAClB,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|
|
@@ -21,13 +21,13 @@ import { ConfigLoader } from './ConfigLoader.js';
|
|
|
21
21
|
* ```typescript
|
|
22
22
|
* const resolver = new ConfigResolver();
|
|
23
23
|
*
|
|
24
|
-
* // Simple string config
|
|
24
|
+
* // Simple string config (broker URL)
|
|
25
25
|
* const config = await resolver.resolve('ws://localhost:8080');
|
|
26
26
|
*
|
|
27
27
|
* // Full config object
|
|
28
28
|
* const config = await resolver.resolve({
|
|
29
29
|
* name: 'my-service',
|
|
30
|
-
*
|
|
30
|
+
* broker: 'ws://localhost:8080'
|
|
31
31
|
* });
|
|
32
32
|
* ```
|
|
33
33
|
*/
|
|
@@ -61,7 +61,7 @@ export declare class ConfigResolver {
|
|
|
61
61
|
* // Full configuration
|
|
62
62
|
* const resolved = await resolver.resolve({
|
|
63
63
|
* name: 'calculator',
|
|
64
|
-
*
|
|
64
|
+
* broker: 'ws://localhost:8080',
|
|
65
65
|
* networks: ['global', 'team']
|
|
66
66
|
* });
|
|
67
67
|
* ```
|
|
@@ -77,7 +77,9 @@ export declare class ConfigResolver {
|
|
|
77
77
|
*/
|
|
78
78
|
private normalizeConfig;
|
|
79
79
|
/**
|
|
80
|
-
* Resolve a single field with precedence
|
|
80
|
+
* Resolve a single required field with precedence
|
|
81
|
+
*
|
|
82
|
+
* Throws an error if no value is found from any source.
|
|
81
83
|
*
|
|
82
84
|
* @template T - Field value type
|
|
83
85
|
* @param fieldName - Name of the field being resolved
|
|
@@ -87,18 +89,9 @@ export declare class ConfigResolver {
|
|
|
87
89
|
* @param defaultValue - Default value
|
|
88
90
|
* @param sources - Source tracking object
|
|
89
91
|
* @returns Resolved value
|
|
92
|
+
* @throws {KadiError} If value cannot be resolved
|
|
90
93
|
*/
|
|
91
94
|
private resolveField;
|
|
92
|
-
/**
|
|
93
|
-
* Resolve broker configuration
|
|
94
|
-
*
|
|
95
|
-
* @param codeConfig - Code configuration
|
|
96
|
-
* @param envConfig - Environment configuration
|
|
97
|
-
* @param fileConfig - File configuration
|
|
98
|
-
* @param sources - Source tracking
|
|
99
|
-
* @returns Resolved brokers
|
|
100
|
-
*/
|
|
101
|
-
private resolveBrokers;
|
|
102
95
|
/**
|
|
103
96
|
* Resolve networks configuration
|
|
104
97
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigResolver.d.ts","sourceRoot":"","sources":["../../src/config/ConfigResolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAEV,UAAU,EACV,cAAc,EAIf,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAqBjD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IAEtC;;;;OAIG;gBACS,MAAM,CAAC,EAAE,YAAY;IAIjC;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACG,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"ConfigResolver.d.ts","sourceRoot":"","sources":["../../src/config/ConfigResolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAEV,UAAU,EACV,cAAc,EAIf,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAqBjD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IAEtC;;;;OAIG;gBACS,MAAM,CAAC,EAAE,YAAY;IAIjC;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACG,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC;IAuC1D;;;;;;;OAOG;IACH,OAAO,CAAC,eAAe;IAYvB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,YAAY;IAqCpB;;;;;;;;OAQG;IACH,OAAO,CAAC,eAAe;IAyBvB;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAavB;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAwDtB;;;;;OAKG;IACH,OAAO,CAAC,YAAY;CAerB"}
|
|
@@ -39,13 +39,13 @@ const DEFAULT_CONFIG = {
|
|
|
39
39
|
* ```typescript
|
|
40
40
|
* const resolver = new ConfigResolver();
|
|
41
41
|
*
|
|
42
|
-
* // Simple string config
|
|
42
|
+
* // Simple string config (broker URL)
|
|
43
43
|
* const config = await resolver.resolve('ws://localhost:8080');
|
|
44
44
|
*
|
|
45
45
|
* // Full config object
|
|
46
46
|
* const config = await resolver.resolve({
|
|
47
47
|
* name: 'my-service',
|
|
48
|
-
*
|
|
48
|
+
* broker: 'ws://localhost:8080'
|
|
49
49
|
* });
|
|
50
50
|
* ```
|
|
51
51
|
*/
|
|
@@ -81,7 +81,7 @@ export class ConfigResolver {
|
|
|
81
81
|
* // Full configuration
|
|
82
82
|
* const resolved = await resolver.resolve({
|
|
83
83
|
* name: 'calculator',
|
|
84
|
-
*
|
|
84
|
+
* broker: 'ws://localhost:8080',
|
|
85
85
|
* networks: ['global', 'team']
|
|
86
86
|
* });
|
|
87
87
|
* ```
|
|
@@ -95,19 +95,21 @@ export class ConfigResolver {
|
|
|
95
95
|
const envConfig = this.loader.loadFromEnvironment();
|
|
96
96
|
// Track sources for each field
|
|
97
97
|
const sources = {};
|
|
98
|
-
// Resolve each field with precedence
|
|
98
|
+
// Resolve each field with precedence (code > env > file > default)
|
|
99
99
|
const resolved = {
|
|
100
|
+
// Required fields (will throw if missing)
|
|
100
101
|
name: this.resolveField('name', codeConfig.name, envConfig.KADI_AGENT_NAME, fileConfig?.name, undefined, sources),
|
|
101
102
|
version: this.resolveField('version', codeConfig.version, undefined, fileConfig?.version, DEFAULT_CONFIG.version, sources),
|
|
102
|
-
description: this.resolveField('description', codeConfig.description, undefined, fileConfig?.description, undefined, sources),
|
|
103
103
|
role: this.resolveField('role', codeConfig.role, undefined, undefined, DEFAULT_CONFIG.role, sources),
|
|
104
104
|
transport: this.resolveField('transport', codeConfig.transport, envConfig.KADI_TRANSPORT, undefined, DEFAULT_CONFIG.transport, sources),
|
|
105
|
-
brokers: this.resolveBrokers(codeConfig, envConfig, fileConfig, sources) ?? {},
|
|
106
|
-
defaultBroker: this.resolveField('defaultBroker', codeConfig.defaultBroker, undefined, fileConfig?.defaultBroker, undefined, sources),
|
|
107
105
|
networks: this.resolveNetworks(codeConfig, envConfig, fileConfig, sources),
|
|
108
|
-
abilityAgentJSON: this.resolveField('abilityAgentJSON', codeConfig.abilityAgentJSON, undefined, undefined, undefined, sources),
|
|
109
106
|
autoConnect: this.resolveField('autoConnect', codeConfig.autoConnect, this.parseBoolean(envConfig.KADI_AUTO_CONNECT), undefined, DEFAULT_CONFIG.autoConnect, sources),
|
|
107
|
+
projectRoot: this.resolveField('projectRoot', codeConfig.projectRoot, envConfig.KADI_PROJECT_ROOT, undefined, process.cwd(), sources),
|
|
110
108
|
advanced: this.resolveAdvanced(codeConfig, sources),
|
|
109
|
+
// Optional fields - just use what's passed to constructor
|
|
110
|
+
broker: codeConfig.broker,
|
|
111
|
+
description: codeConfig.description ?? fileConfig?.description,
|
|
112
|
+
abilityAgentJSON: codeConfig.abilityAgentJSON,
|
|
111
113
|
sources
|
|
112
114
|
};
|
|
113
115
|
// Validate resolved configuration
|
|
@@ -124,16 +126,18 @@ export class ConfigResolver {
|
|
|
124
126
|
*/
|
|
125
127
|
normalizeConfig(config) {
|
|
126
128
|
if (typeof config === 'string') {
|
|
127
|
-
// Simple broker URL
|
|
129
|
+
// Simple broker URL string → convert to object with broker field
|
|
130
|
+
// Example: 'ws://localhost:8080' → { broker: 'ws://localhost:8080' }
|
|
128
131
|
return {
|
|
129
|
-
|
|
130
|
-
defaultBroker: 'default'
|
|
132
|
+
broker: config
|
|
131
133
|
};
|
|
132
134
|
}
|
|
133
135
|
return config;
|
|
134
136
|
}
|
|
135
137
|
/**
|
|
136
|
-
* Resolve a single field with precedence
|
|
138
|
+
* Resolve a single required field with precedence
|
|
139
|
+
*
|
|
140
|
+
* Throws an error if no value is found from any source.
|
|
137
141
|
*
|
|
138
142
|
* @template T - Field value type
|
|
139
143
|
* @param fieldName - Name of the field being resolved
|
|
@@ -143,6 +147,7 @@ export class ConfigResolver {
|
|
|
143
147
|
* @param defaultValue - Default value
|
|
144
148
|
* @param sources - Source tracking object
|
|
145
149
|
* @returns Resolved value
|
|
150
|
+
* @throws {KadiError} If value cannot be resolved
|
|
146
151
|
*/
|
|
147
152
|
resolveField(fieldName, codeValue, envValue, fileValue, defaultValue, sources) {
|
|
148
153
|
if (codeValue !== undefined) {
|
|
@@ -163,31 +168,6 @@ export class ConfigResolver {
|
|
|
163
168
|
}
|
|
164
169
|
throw new KadiError(`Required configuration field '${fieldName}' is missing`, ErrorCode.INVALID_CONFIG, 400, { fieldName });
|
|
165
170
|
}
|
|
166
|
-
/**
|
|
167
|
-
* Resolve broker configuration
|
|
168
|
-
*
|
|
169
|
-
* @param codeConfig - Code configuration
|
|
170
|
-
* @param envConfig - Environment configuration
|
|
171
|
-
* @param fileConfig - File configuration
|
|
172
|
-
* @param sources - Source tracking
|
|
173
|
-
* @returns Resolved brokers
|
|
174
|
-
*/
|
|
175
|
-
resolveBrokers(codeConfig, envConfig, fileConfig, sources) {
|
|
176
|
-
if (codeConfig.brokers && Object.keys(codeConfig.brokers).length > 0) {
|
|
177
|
-
sources.brokers = 'code';
|
|
178
|
-
return codeConfig.brokers;
|
|
179
|
-
}
|
|
180
|
-
if (envConfig.KADI_BROKER_URL) {
|
|
181
|
-
sources.brokers = 'environment';
|
|
182
|
-
return { default: envConfig.KADI_BROKER_URL };
|
|
183
|
-
}
|
|
184
|
-
if (fileConfig?.brokers && Object.keys(fileConfig.brokers).length > 0) {
|
|
185
|
-
sources.brokers = 'file';
|
|
186
|
-
return fileConfig.brokers;
|
|
187
|
-
}
|
|
188
|
-
// Brokers are optional - may use native/stdio transport
|
|
189
|
-
return undefined;
|
|
190
|
-
}
|
|
191
171
|
/**
|
|
192
172
|
* Resolve networks configuration
|
|
193
173
|
*
|
|
@@ -245,13 +225,14 @@ export class ConfigResolver {
|
|
|
245
225
|
throw new KadiError(`Invalid transport: ${config.transport}. Must be one of: ${validTransports.join(', ')}`, ErrorCode.INVALID_CONFIG, 400, { field: 'transport', value: config.transport });
|
|
246
226
|
}
|
|
247
227
|
// Validate broker configuration if using broker transport
|
|
228
|
+
// When transport is 'broker', the broker URL is mandatory
|
|
248
229
|
if (config.transport === 'broker') {
|
|
249
|
-
if (!config.
|
|
250
|
-
throw new KadiError('Broker
|
|
230
|
+
if (!config.broker || config.broker.trim().length === 0) {
|
|
231
|
+
throw new KadiError('Broker URL is required when using broker transport', ErrorCode.INVALID_CONFIG, 400, { field: 'broker', transport: config.transport });
|
|
251
232
|
}
|
|
252
|
-
// Validate
|
|
253
|
-
if (config.
|
|
254
|
-
throw new KadiError(
|
|
233
|
+
// Validate broker URL format (basic check for ws:// or wss://)
|
|
234
|
+
if (!config.broker.startsWith('ws://') && !config.broker.startsWith('wss://')) {
|
|
235
|
+
throw new KadiError('Broker URL must start with ws:// or wss://', ErrorCode.INVALID_CONFIG, 400, { field: 'broker', value: config.broker });
|
|
255
236
|
}
|
|
256
237
|
}
|
|
257
238
|
// Validate networks
|