@pellux/goodvibes-sdk 0.18.43 → 0.18.46
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/_internal/platform/config/manager.d.ts +12 -0
- package/dist/_internal/platform/config/manager.d.ts.map +1 -1
- package/dist/_internal/platform/config/manager.js +30 -0
- package/dist/_internal/platform/daemon/facade.d.ts +19 -0
- package/dist/_internal/platform/daemon/facade.d.ts.map +1 -1
- package/dist/_internal/platform/daemon/facade.js +90 -1
- package/dist/_internal/platform/daemon/host-mode-watcher.d.ts +49 -0
- package/dist/_internal/platform/daemon/host-mode-watcher.d.ts.map +1 -0
- package/dist/_internal/platform/daemon/host-mode-watcher.js +41 -0
- package/dist/_internal/platform/daemon/http-listener.d.ts +17 -0
- package/dist/_internal/platform/daemon/http-listener.d.ts.map +1 -1
- package/dist/_internal/platform/daemon/http-listener.js +87 -1
- package/dist/_internal/platform/providers/auto-register.d.ts +2 -3
- package/dist/_internal/platform/providers/auto-register.d.ts.map +1 -1
- package/dist/_internal/platform/providers/auto-register.js +1 -8
- package/dist/_internal/platform/providers/index.d.ts +1 -0
- package/dist/_internal/platform/providers/index.d.ts.map +1 -1
- package/dist/_internal/platform/providers/index.js +1 -0
- package/dist/_internal/platform/providers/provider-api.d.ts +4 -0
- package/dist/_internal/platform/providers/provider-api.d.ts.map +1 -1
- package/dist/_internal/platform/providers/provider-not-found-error.d.ts +16 -0
- package/dist/_internal/platform/providers/provider-not-found-error.d.ts.map +1 -0
- package/dist/_internal/platform/providers/provider-not-found-error.js +24 -0
- package/dist/_internal/platform/providers/registry.d.ts +44 -2
- package/dist/_internal/platform/providers/registry.d.ts.map +1 -1
- package/dist/_internal/platform/providers/registry.js +73 -13
- package/dist/_internal/platform/runtime/contracts/migrations/event-envelope.d.ts +1 -1
- package/dist/_internal/platform/runtime/contracts/version.d.ts +1 -1
- package/dist/_internal/platform/runtime/contracts/version.js +1 -1
- package/dist/_internal/platform/runtime/events/domain-map.d.ts +10 -0
- package/dist/_internal/platform/runtime/events/domain-map.d.ts.map +1 -1
- package/dist/_internal/platform/runtime/events/index.d.ts +1 -1
- package/dist/_internal/platform/runtime/events/index.d.ts.map +1 -1
- package/dist/_internal/platform/runtime/index.d.ts +1 -1
- package/dist/_internal/platform/runtime/index.d.ts.map +1 -1
- package/dist/_internal/platform/version.js +1 -1
- package/dist/_internal/transport-realtime/runtime-events.d.ts +3 -2
- package/dist/_internal/transport-realtime/runtime-events.d.ts.map +1 -1
- package/dist/client.d.ts +19 -3
- package/dist/client.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -25,6 +25,10 @@ export type ConfigOverrides = ConfigCliOverrides & ({
|
|
|
25
25
|
export interface ConfigSetOptions {
|
|
26
26
|
bypassManagedLock?: boolean;
|
|
27
27
|
}
|
|
28
|
+
/** Callback invoked when a watched config key changes. */
|
|
29
|
+
export type ConfigChangeCallback<K extends ConfigKey> = (newValue: ConfigValue<K>, oldValue: ConfigValue<K>) => void;
|
|
30
|
+
/** Unsubscribe handle returned by ConfigManager.subscribe(). */
|
|
31
|
+
export type ConfigUnsubscribe = () => void;
|
|
28
32
|
/**
|
|
29
33
|
* ConfigManager — Layered, mutable, persistent config system.
|
|
30
34
|
*
|
|
@@ -39,6 +43,7 @@ export declare class ConfigManager {
|
|
|
39
43
|
private readonly workingDirectory;
|
|
40
44
|
private readonly homeDirectory;
|
|
41
45
|
private hookDispatcher;
|
|
46
|
+
private readonly _listeners;
|
|
42
47
|
constructor(overrides: ConfigOverrides);
|
|
43
48
|
getControlPlaneConfigDir(): string;
|
|
44
49
|
getWorkingDirectory(): string | null;
|
|
@@ -49,6 +54,13 @@ export declare class ConfigManager {
|
|
|
49
54
|
get<K extends ConfigKey>(key: K): ConfigValue<K>;
|
|
50
55
|
/** Set a config value by dot-path key and auto-save to disk. */
|
|
51
56
|
set<K extends ConfigKey>(key: K, value: ConfigValue<K>, options?: ConfigSetOptions): void;
|
|
57
|
+
/**
|
|
58
|
+
* Subscribe to changes on a specific config key.
|
|
59
|
+
* Returns an unsubscribe function. Safe to call multiple times.
|
|
60
|
+
*/
|
|
61
|
+
subscribe<K extends ConfigKey>(key: K, cb: ConfigChangeCallback<K>): ConfigUnsubscribe;
|
|
62
|
+
/** Notify synchronous subscribers of a key change. */
|
|
63
|
+
private notifyListeners;
|
|
52
64
|
/**
|
|
53
65
|
* Fire the Change:config hook for a config key change.
|
|
54
66
|
* Best-effort: the hook dispatcher may not be initialised during startup.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/config/manager.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAI3H,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMxD,wFAAwF;AACxF,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;IAC5B,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACzE,CAAC;AAEF,yEAAyE;AACzE,UAAU,kBAAkB;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,eAAe,GAAG,kBAAkB,GAAG,CAC/C;IACA,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,GACC;IACA,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CACF,CAAC;AASF,MAAM,WAAW,gBAAgB;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/config/manager.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAI3H,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMxD,wFAAwF;AACxF,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;IAC5B,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACzE,CAAC;AAEF,yEAAyE;AACzE,UAAU,kBAAkB;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,eAAe,GAAG,kBAAkB,GAAG,CAC/C;IACA,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,GACC;IACA,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CACF,CAAC;AASF,MAAM,WAAW,gBAAgB;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,0DAA0D;AAC1D,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,SAAS,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;AAErH,gEAAgE;AAChE,MAAM,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC;AAkD3C;;;;;GAKG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAgB;IAClD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAgB;IACjD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,cAAc,CAA6C;IACnE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsE;gBAErF,SAAS,EAAE,eAAe;IA4CtC,wBAAwB,IAAI,MAAM;IAIlC,mBAAmB,IAAI,MAAM,GAAG,IAAI;IAIpC,gBAAgB,IAAI,MAAM,GAAG,IAAI;IAIjC,oBAAoB,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,GAAG,IAAI,GAAG,IAAI;IAI/E,OAAO,CAAC,WAAW;IAwBnB,0CAA0C;IAC1C,GAAG,CAAC,CAAC,SAAS,SAAS,EAAE,GAAG,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC;IAKhD,gEAAgE;IAChE,GAAG,CAAC,CAAC,SAAS,SAAS,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,OAAO,GAAE,gBAAqB,GAAG,IAAI;IAuB7F;;;OAGG;IACH,SAAS,CAAC,CAAC,SAAS,SAAS,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,iBAAiB;IAatF,sDAAsD;IACtD,OAAO,CAAC,eAAe;IAQvB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAoBtB;;;;OAIG;IACH,UAAU,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE,gBAAqB,GAAG,IAAI;IAIhF,wFAAwF;IACxF,MAAM,IAAI,YAAY,CAAC,eAAe,CAAC;IAIvC,0DAA0D;IAC1D,WAAW,CAAC,CAAC,SAAS,MAAM,eAAe,EAAE,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAIvF,+FAA+F;IAC/F,MAAM,IAAI,QAAQ,CAAC,eAAe,CAAC;IAInC,8BAA8B;IAC9B,SAAS,IAAI,aAAa,EAAE;IAI5B,0DAA0D;IAC1D,IAAI,IAAI,IAAI;IASZ,yEAAyE;IACzE,WAAW,IAAI,IAAI;IAYnB,4FAA4F;IAC5F,IAAI,IAAI,IAAI;IAyBZ;;;;;;OAMG;IACH,aAAa,CAAC,CAAC,SAAS,MAAM,eAAe,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;IAWrG;;;OAGG;IACH,KAAK,CAAC,GAAG,CAAC,EAAE,SAAS,GAAG,IAAI;CAY7B"}
|
|
@@ -65,6 +65,7 @@ export class ConfigManager {
|
|
|
65
65
|
workingDirectory;
|
|
66
66
|
homeDirectory;
|
|
67
67
|
hookDispatcher = null;
|
|
68
|
+
_listeners = new Map();
|
|
68
69
|
constructor(overrides) {
|
|
69
70
|
const roots = overrides;
|
|
70
71
|
const configDir = requireAbsoluteOwnedPath(roots.configDir, 'configDir');
|
|
@@ -157,8 +158,37 @@ export class ConfigManager {
|
|
|
157
158
|
const previousValue = parent[field];
|
|
158
159
|
parent[field] = value;
|
|
159
160
|
this.save();
|
|
161
|
+
this.notifyListeners(key, previousValue, value);
|
|
160
162
|
this.emitConfigHook(key, previousValue, value);
|
|
161
163
|
}
|
|
164
|
+
/**
|
|
165
|
+
* Subscribe to changes on a specific config key.
|
|
166
|
+
* Returns an unsubscribe function. Safe to call multiple times.
|
|
167
|
+
*/
|
|
168
|
+
subscribe(key, cb) {
|
|
169
|
+
if (!this._listeners.has(key)) {
|
|
170
|
+
this._listeners.set(key, new Set());
|
|
171
|
+
}
|
|
172
|
+
// Cast via unknown -> (n: unknown, o: unknown) => void to avoid deeply-recursive ConfigValue<K> comparison
|
|
173
|
+
// that exceeds TypeScript's stack depth limit on the 100-entry conditional type.
|
|
174
|
+
const wrapped = (newVal, oldVal) => cb(newVal, oldVal);
|
|
175
|
+
this._listeners.get(key).add(wrapped);
|
|
176
|
+
return () => {
|
|
177
|
+
this._listeners.get(key)?.delete(wrapped);
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
/** Notify synchronous subscribers of a key change. */
|
|
181
|
+
notifyListeners(key, oldValue, newValue) {
|
|
182
|
+
const set = this._listeners.get(key);
|
|
183
|
+
if (!set)
|
|
184
|
+
return;
|
|
185
|
+
for (const cb of set) {
|
|
186
|
+
try {
|
|
187
|
+
cb(newValue, oldValue);
|
|
188
|
+
}
|
|
189
|
+
catch { /* listener errors must not abort set() */ }
|
|
190
|
+
}
|
|
191
|
+
}
|
|
162
192
|
/**
|
|
163
193
|
* Fire the Change:config hook for a config key change.
|
|
164
194
|
* Best-effort: the hook dispatcher may not be initialised during startup.
|
|
@@ -61,6 +61,14 @@ export declare class DaemonServer {
|
|
|
61
61
|
private agentTaskAdapterUnsub;
|
|
62
62
|
private tlsState;
|
|
63
63
|
private approvalBrokerUnsubscribe;
|
|
64
|
+
/** Unsubscribe from controlPlane config key watchers; cleared on stop(). */
|
|
65
|
+
private _configWatchUnsub;
|
|
66
|
+
/** True while a config-driven restart is in progress — prevents re-entrancy. */
|
|
67
|
+
private _restarting;
|
|
68
|
+
/** Awaitable promise for the active restart cycle; null when idle. */
|
|
69
|
+
private _restartingPromise;
|
|
70
|
+
/** True if a config change arrived while _restarting was set; triggers a second cycle. */
|
|
71
|
+
private _restartDirty;
|
|
64
72
|
constructor(config?: DaemonConfig, _configManager?: ConfigManager);
|
|
65
73
|
listRecentControlPlaneEvents(limit?: number): readonly import('../control-plane/gateway.js').ControlPlaneRecentEvent[];
|
|
66
74
|
/**
|
|
@@ -80,7 +88,18 @@ export declare class DaemonServer {
|
|
|
80
88
|
* against a 10-second timeout so a hung service cannot block the full
|
|
81
89
|
* shutdown sequence (C1 fix).
|
|
82
90
|
*/
|
|
91
|
+
/**
|
|
92
|
+
* Wait for any in-progress config-driven restart to settle.
|
|
93
|
+
* Callers that change config mid-flight and need to know when the server
|
|
94
|
+
* has rebounded should await this before inspecting state.
|
|
95
|
+
*/
|
|
96
|
+
waitForRestart(): Promise<void>;
|
|
83
97
|
stop(): Promise<void>;
|
|
98
|
+
/**
|
|
99
|
+
* Subscribe to controlPlane binding keys and restart the server on change.
|
|
100
|
+
* Called once from start() after the server is up. Clears itself on stop().
|
|
101
|
+
*/
|
|
102
|
+
private _attachControlPlaneConfigWatcher;
|
|
84
103
|
/**
|
|
85
104
|
* Returns true if the server is currently running.
|
|
86
105
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"facade.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/daemon/facade.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAiD1D,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAuB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"facade.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/daemon/facade.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,8 @@ import { GlobalNetworkTransportInstaller, resolveInboundTlsContext, } from '../r
|
|
|
10
10
|
import { createRuntimeServices } from '../runtime/services.js';
|
|
11
11
|
import { readAutomationReasoningEffort, readAutomationWakeMode, readExternalContentSource, readStringList, } from './helpers.js';
|
|
12
12
|
import { requirePortAvailable } from './port-check.js';
|
|
13
|
+
import { resolveHostBinding } from './host-resolver.js';
|
|
14
|
+
import { createHostModeRestartWatcher } from './host-mode-watcher.js';
|
|
13
15
|
// ---------------------------------------------------------------------------
|
|
14
16
|
// DaemonServer
|
|
15
17
|
// ---------------------------------------------------------------------------
|
|
@@ -74,6 +76,14 @@ export class DaemonServer {
|
|
|
74
76
|
agentTaskAdapterUnsub = null;
|
|
75
77
|
tlsState = null;
|
|
76
78
|
approvalBrokerUnsubscribe = null;
|
|
79
|
+
/** Unsubscribe from controlPlane config key watchers; cleared on stop(). */
|
|
80
|
+
_configWatchUnsub = null;
|
|
81
|
+
/** True while a config-driven restart is in progress — prevents re-entrancy. */
|
|
82
|
+
_restarting = false;
|
|
83
|
+
/** Awaitable promise for the active restart cycle; null when idle. */
|
|
84
|
+
_restartingPromise = null;
|
|
85
|
+
/** True if a config change arrived while _restarting was set; triggers a second cycle. */
|
|
86
|
+
_restartDirty = false;
|
|
77
87
|
constructor(config = {}, _configManager) {
|
|
78
88
|
this.config = config;
|
|
79
89
|
const resolved = resolveDaemonFacadeRuntime(config, _configManager);
|
|
@@ -218,7 +228,10 @@ export class DaemonServer {
|
|
|
218
228
|
runtimeStore: this.runtimeStore,
|
|
219
229
|
});
|
|
220
230
|
const self = this;
|
|
221
|
-
|
|
231
|
+
// Skip real OS port check when a mock serveFactory is injected (test-only path).
|
|
232
|
+
if (this.serveFactory === Bun.serve) {
|
|
233
|
+
await requirePortAvailable(this.port, this.host, 'daemon');
|
|
234
|
+
}
|
|
222
235
|
this.transportEventsHelper.emitTransportInitializing();
|
|
223
236
|
try {
|
|
224
237
|
this.tlsState = resolveInboundTlsContext(this.configManager, 'controlPlane');
|
|
@@ -279,6 +292,7 @@ export class DaemonServer {
|
|
|
279
292
|
this.watcherRegistry.startWatcher('daemon-heartbeat');
|
|
280
293
|
}
|
|
281
294
|
this.controlPlaneGateway.setServerState({ enabled: true, host: this.host, port: this.port });
|
|
295
|
+
this._attachControlPlaneConfigWatcher();
|
|
282
296
|
this.transportEventsHelper.emitTransportConnected();
|
|
283
297
|
logger.info('DaemonServer started', {
|
|
284
298
|
port: this.port,
|
|
@@ -317,9 +331,27 @@ export class DaemonServer {
|
|
|
317
331
|
* against a 10-second timeout so a hung service cannot block the full
|
|
318
332
|
* shutdown sequence (C1 fix).
|
|
319
333
|
*/
|
|
334
|
+
/**
|
|
335
|
+
* Wait for any in-progress config-driven restart to settle.
|
|
336
|
+
* Callers that change config mid-flight and need to know when the server
|
|
337
|
+
* has rebounded should await this before inspecting state.
|
|
338
|
+
*/
|
|
339
|
+
async waitForRestart() {
|
|
340
|
+
// Loop to handle dirty-flag chained restarts: each cycle may spawn another.
|
|
341
|
+
while (this._restartingPromise)
|
|
342
|
+
await this._restartingPromise;
|
|
343
|
+
}
|
|
320
344
|
async stop() {
|
|
321
345
|
if (this.server === null)
|
|
322
346
|
return;
|
|
347
|
+
// Tear down config watcher only on intentional stop, not mid-restart.
|
|
348
|
+
// During a restart cycle (_restarting=true) the watcher must stay active so
|
|
349
|
+
// config changes that arrive between stop() and the subsequent start() can be
|
|
350
|
+
// captured by the dirty flag.
|
|
351
|
+
if (!this._restarting) {
|
|
352
|
+
this._configWatchUnsub?.();
|
|
353
|
+
this._configWatchUnsub = null;
|
|
354
|
+
}
|
|
323
355
|
// Synchronous pre-stop teardown
|
|
324
356
|
this.watcherRegistry.stopWatcher('daemon-heartbeat', 'daemon-stopped');
|
|
325
357
|
if (this.replyPoller !== null) {
|
|
@@ -346,6 +378,63 @@ export class DaemonServer {
|
|
|
346
378
|
this.transportEventsHelper.emitTransportDisconnected('Daemon server stopped', false);
|
|
347
379
|
logger.info('DaemonServer stopped');
|
|
348
380
|
}
|
|
381
|
+
/**
|
|
382
|
+
* Subscribe to controlPlane binding keys and restart the server on change.
|
|
383
|
+
* Called once from start() after the server is up. Clears itself on stop().
|
|
384
|
+
*/
|
|
385
|
+
_attachControlPlaneConfigWatcher() {
|
|
386
|
+
if (this._configWatchUnsub)
|
|
387
|
+
return; // idempotent
|
|
388
|
+
const restart = () => {
|
|
389
|
+
if (this._restarting) {
|
|
390
|
+
// A change arrived mid-restart — queue a second cycle via dirty flag.
|
|
391
|
+
// Check _restarting BEFORE isRunning: stop() runs synchronously inside the
|
|
392
|
+
// restart IIFE, so isRunning may be false even while a restart is in progress.
|
|
393
|
+
this._restartDirty = true;
|
|
394
|
+
return;
|
|
395
|
+
}
|
|
396
|
+
if (!this.isRunning)
|
|
397
|
+
return;
|
|
398
|
+
this._restarting = true;
|
|
399
|
+
this._restartingPromise = (async () => {
|
|
400
|
+
try {
|
|
401
|
+
logger.info('DaemonServer: controlPlane binding changed, restarting daemon server…');
|
|
402
|
+
await this.stop();
|
|
403
|
+
// Re-resolve host/port from updated config
|
|
404
|
+
const newBinding = resolveHostBinding(this.configManager.get('controlPlane.hostMode') ?? 'local', String(this.configManager.get('controlPlane.host') ?? '127.0.0.1'), Number(this.configManager.get('controlPlane.port') ?? 3421), 'controlPlane');
|
|
405
|
+
this.host = newBinding.host;
|
|
406
|
+
this.port = newBinding.port;
|
|
407
|
+
await this.start();
|
|
408
|
+
}
|
|
409
|
+
catch (err) {
|
|
410
|
+
logger.error('DaemonServer: restart after config change failed', { error: summarizeError(err) });
|
|
411
|
+
}
|
|
412
|
+
finally {
|
|
413
|
+
this._restarting = false;
|
|
414
|
+
// If a config change arrived while we were restarting, kick off a second
|
|
415
|
+
// cycle BEFORE nulling _restartingPromise so waitForRestart() chains correctly.
|
|
416
|
+
if (this._restartDirty) {
|
|
417
|
+
this._restartDirty = false;
|
|
418
|
+
restart(); // sets this._restartingPromise to the new cycle
|
|
419
|
+
}
|
|
420
|
+
else {
|
|
421
|
+
this._restartingPromise = null;
|
|
422
|
+
}
|
|
423
|
+
}
|
|
424
|
+
})();
|
|
425
|
+
};
|
|
426
|
+
// getIsRunning must also return true while a restart cycle is in progress
|
|
427
|
+
// (_restarting=true) so that config changes arriving mid-restart reach the
|
|
428
|
+
// dirty-flag path inside `restart`. When the server is intentionally stopped
|
|
429
|
+
// (not mid-restart) isRunning and _restarting are both false.
|
|
430
|
+
const watcher = createHostModeRestartWatcher({
|
|
431
|
+
configManager: this.configManager,
|
|
432
|
+
keys: ['controlPlane.hostMode', 'controlPlane.host', 'controlPlane.port'],
|
|
433
|
+
onRestart: restart,
|
|
434
|
+
getIsRunning: () => this.isRunning || this._restarting,
|
|
435
|
+
});
|
|
436
|
+
this._configWatchUnsub = () => watcher.unsubscribe();
|
|
437
|
+
}
|
|
349
438
|
/**
|
|
350
439
|
* Returns true if the server is currently running.
|
|
351
440
|
*/
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* host-mode-watcher.ts
|
|
3
|
+
*
|
|
4
|
+
* Shared helper that creates a config-key watcher for host-mode restart logic.
|
|
5
|
+
* Extracted so the restart guard + dirty-flag loop-back pattern can be tested
|
|
6
|
+
* independently of DaemonServer or HttpListener.
|
|
7
|
+
*
|
|
8
|
+
* Both facade.ts and http-listener.ts delegate to this helper, passing their
|
|
9
|
+
* own `onRestart` closure and `getIsRunning` accessor.
|
|
10
|
+
*/
|
|
11
|
+
import type { ConfigManager } from '../config/manager.js';
|
|
12
|
+
import type { ConfigKey } from '@pellux/goodvibes-sdk/platform/config/schema';
|
|
13
|
+
export interface HostModeWatcherOptions {
|
|
14
|
+
/** The ConfigManager to subscribe on. */
|
|
15
|
+
configManager: ConfigManager;
|
|
16
|
+
/** Config keys that should trigger a restart when changed. */
|
|
17
|
+
keys: ConfigKey[];
|
|
18
|
+
/**
|
|
19
|
+
* Called when a key change is detected and the server is running.
|
|
20
|
+
* The implementation is responsible for performing stop + restart.
|
|
21
|
+
* The caller is responsible for re-entrancy / dirty-flag semantics: if a
|
|
22
|
+
* new change arrives while a prior restart is in progress, `onRestart`
|
|
23
|
+
* will be invoked again. The caller must either guard against overlapping
|
|
24
|
+
* cycles or queue the second cycle via its own dirty-flag mechanism.
|
|
25
|
+
*/
|
|
26
|
+
onRestart: () => void;
|
|
27
|
+
/** Returns true when the server/listener is currently running. */
|
|
28
|
+
getIsRunning: () => boolean;
|
|
29
|
+
}
|
|
30
|
+
export interface HostModeWatcherHandle {
|
|
31
|
+
/** Detach all subscriptions — safe to call multiple times. */
|
|
32
|
+
unsubscribe: () => void;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Create a host-mode restart watcher.
|
|
36
|
+
*
|
|
37
|
+
* Behaviour:
|
|
38
|
+
* - Subscribes to each key in `keys`.
|
|
39
|
+
* - When a key changes and `getIsRunning()` is true, calls `onRestart()`.
|
|
40
|
+
* - The caller's `onRestart` implementation handles re-entrancy / dirty-flag
|
|
41
|
+
* logic internally (the watcher does NOT duplicate that logic).
|
|
42
|
+
* - `unsubscribe()` removes all subscriptions; subsequent key changes are
|
|
43
|
+
* silently ignored.
|
|
44
|
+
*
|
|
45
|
+
* @param opts - Watcher configuration.
|
|
46
|
+
* @returns A handle with an `unsubscribe` method.
|
|
47
|
+
*/
|
|
48
|
+
export declare function createHostModeRestartWatcher(opts: HostModeWatcherOptions): HostModeWatcherHandle;
|
|
49
|
+
//# sourceMappingURL=host-mode-watcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"host-mode-watcher.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/daemon/host-mode-watcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8CAA8C,CAAC;AAE9E,MAAM,WAAW,sBAAsB;IACrC,yCAAyC;IACzC,aAAa,EAAE,aAAa,CAAC;IAC7B,8DAA8D;IAC9D,IAAI,EAAE,SAAS,EAAE,CAAC;IAClB;;;;;;;OAOG;IACH,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,kEAAkE;IAClE,YAAY,EAAE,MAAM,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,qBAAqB;IACpC,8DAA8D;IAC9D,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,sBAAsB,GAAG,qBAAqB,CAiBhG"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* host-mode-watcher.ts
|
|
3
|
+
*
|
|
4
|
+
* Shared helper that creates a config-key watcher for host-mode restart logic.
|
|
5
|
+
* Extracted so the restart guard + dirty-flag loop-back pattern can be tested
|
|
6
|
+
* independently of DaemonServer or HttpListener.
|
|
7
|
+
*
|
|
8
|
+
* Both facade.ts and http-listener.ts delegate to this helper, passing their
|
|
9
|
+
* own `onRestart` closure and `getIsRunning` accessor.
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Create a host-mode restart watcher.
|
|
13
|
+
*
|
|
14
|
+
* Behaviour:
|
|
15
|
+
* - Subscribes to each key in `keys`.
|
|
16
|
+
* - When a key changes and `getIsRunning()` is true, calls `onRestart()`.
|
|
17
|
+
* - The caller's `onRestart` implementation handles re-entrancy / dirty-flag
|
|
18
|
+
* logic internally (the watcher does NOT duplicate that logic).
|
|
19
|
+
* - `unsubscribe()` removes all subscriptions; subsequent key changes are
|
|
20
|
+
* silently ignored.
|
|
21
|
+
*
|
|
22
|
+
* @param opts - Watcher configuration.
|
|
23
|
+
* @returns A handle with an `unsubscribe` method.
|
|
24
|
+
*/
|
|
25
|
+
export function createHostModeRestartWatcher(opts) {
|
|
26
|
+
const { configManager, keys, onRestart, getIsRunning } = opts;
|
|
27
|
+
const listener = () => {
|
|
28
|
+
if (!getIsRunning())
|
|
29
|
+
return;
|
|
30
|
+
onRestart();
|
|
31
|
+
};
|
|
32
|
+
const unsubs = keys.map((key) => configManager.subscribe(key, listener));
|
|
33
|
+
return {
|
|
34
|
+
unsubscribe: () => {
|
|
35
|
+
for (const u of unsubs)
|
|
36
|
+
u();
|
|
37
|
+
// Clear the array so subsequent calls are no-ops.
|
|
38
|
+
unsubs.length = 0;
|
|
39
|
+
},
|
|
40
|
+
};
|
|
41
|
+
}
|
|
@@ -39,6 +39,14 @@ export declare class HttpListener {
|
|
|
39
39
|
private readonly configManager;
|
|
40
40
|
private readonly serveFactory;
|
|
41
41
|
private tlsState;
|
|
42
|
+
/** Unsubscribe from httpListener config key watchers; cleared on stop(). */
|
|
43
|
+
private _configWatchUnsub;
|
|
44
|
+
/** True while a config-driven restart is in progress — prevents re-entrancy. */
|
|
45
|
+
private _restarting;
|
|
46
|
+
/** Awaitable promise for the active restart cycle; null when idle. */
|
|
47
|
+
private _restartingPromise;
|
|
48
|
+
/** True if a config change arrived while _restarting was set; triggers a second cycle. */
|
|
49
|
+
private _restartDirty;
|
|
42
50
|
constructor(config: HttpListenerConfig);
|
|
43
51
|
/**
|
|
44
52
|
* Enable the listener. Requires danger.httpListener = true in config.
|
|
@@ -50,10 +58,19 @@ export declare class HttpListener {
|
|
|
50
58
|
* Start listening. Refuses to start if not enabled.
|
|
51
59
|
*/
|
|
52
60
|
start(): Promise<void>;
|
|
61
|
+
/**
|
|
62
|
+
* Wait for any in-progress config-driven restart to settle.
|
|
63
|
+
*/
|
|
64
|
+
waitForRestart(): Promise<void>;
|
|
53
65
|
/**
|
|
54
66
|
* Stop the listener.
|
|
55
67
|
*/
|
|
56
68
|
stop(): Promise<void>;
|
|
69
|
+
/**
|
|
70
|
+
* Subscribe to httpListener binding keys and restart the server on change.
|
|
71
|
+
* Called once from start() after the server is up. Clears itself on stop().
|
|
72
|
+
*/
|
|
73
|
+
private _attachHttpListenerConfigWatcher;
|
|
57
74
|
/**
|
|
58
75
|
* Returns true if the listener is currently running.
|
|
59
76
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-listener.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/daemon/http-listener.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAMxD,OAAO,EAAE,eAAe,EAAE,MAAM,mDAAmD,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"http-listener.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/daemon/http-listener.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAMxD,OAAO,EAAE,eAAe,EAAE,MAAM,mDAAmD,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAWrD,UAAU,kBAAkB;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,aAAa,EAAE,aAAa,CAAC;IAC7B,YAAY,CAAC,EAAE,OAAO,GAAG,CAAC,KAAK,CAAC;IAChC,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yEAAyE;IACzE,QAAQ,EAAE,eAAe,CAAC;CAC3B;AAED,UAAU,gBAAgB;IACxB,YAAY,EAAE,OAAO,CAAC;CACvB;AA0ED;;;;;;;;GAQG;AACH,qBAAa,YAAY;IAsBX,OAAO,CAAC,MAAM;IArB1B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAA6C;IAC3D,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,cAAc,CAAW;IACjC,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAmB;IAChD,OAAO,CAAC,QAAQ,CAA0C;IAC1D,4EAA4E;IAC5E,OAAO,CAAC,iBAAiB,CAA6B;IACtD,gFAAgF;IAChF,OAAO,CAAC,WAAW,CAAS;IAC5B,sEAAsE;IACtE,OAAO,CAAC,kBAAkB,CAA8B;IACxD,0FAA0F;IAC1F,OAAO,CAAC,aAAa,CAAS;gBAEV,MAAM,EAAE,kBAAkB;IAiB9C;;;;OAIG;IACH,MAAM,CAAC,YAAY,EAAE,gBAAgB,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO;IAU/D;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsC5B;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAKrC;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB3B;;;OAGG;IACH,OAAO,CAAC,gCAAgC;IAwDxC;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAMD,OAAO,CAAC,SAAS;YAOH,aAAa;YAYb,aAAa;YAsCb,WAAW;YA6BX,aAAa;CAgD5B"}
|
|
@@ -7,6 +7,7 @@ import { extractForwardedClientIp, resolveInboundTlsContext } from '../runtime/n
|
|
|
7
7
|
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils/error-display';
|
|
8
8
|
import { requirePortAvailable } from './port-check.js';
|
|
9
9
|
import { resolveHostBinding } from './host-resolver.js';
|
|
10
|
+
import { createHostModeRestartWatcher } from './host-mode-watcher.js';
|
|
10
11
|
// ---------------------------------------------------------------------------
|
|
11
12
|
// Rate limiter (sliding window per IP, in-memory)
|
|
12
13
|
// ---------------------------------------------------------------------------
|
|
@@ -95,6 +96,14 @@ export class HttpListener {
|
|
|
95
96
|
configManager;
|
|
96
97
|
serveFactory;
|
|
97
98
|
tlsState = null;
|
|
99
|
+
/** Unsubscribe from httpListener config key watchers; cleared on stop(). */
|
|
100
|
+
_configWatchUnsub = null;
|
|
101
|
+
/** True while a config-driven restart is in progress — prevents re-entrancy. */
|
|
102
|
+
_restarting = false;
|
|
103
|
+
/** Awaitable promise for the active restart cycle; null when idle. */
|
|
104
|
+
_restartingPromise = null;
|
|
105
|
+
/** True if a config change arrived while _restarting was set; triggers a second cycle. */
|
|
106
|
+
_restartDirty = false;
|
|
98
107
|
constructor(config) {
|
|
99
108
|
this.config = config;
|
|
100
109
|
this.configManager = config.configManager;
|
|
@@ -136,7 +145,10 @@ export class HttpListener {
|
|
|
136
145
|
logger.info('HttpListener: already running');
|
|
137
146
|
return;
|
|
138
147
|
}
|
|
139
|
-
|
|
148
|
+
// Skip real OS port check when a mock serveFactory is injected (test-only path).
|
|
149
|
+
if (this.serveFactory === Bun.serve) {
|
|
150
|
+
await requirePortAvailable(this.port, this.host, 'HTTP listener');
|
|
151
|
+
}
|
|
140
152
|
const self = this;
|
|
141
153
|
this.tlsState = resolveInboundTlsContext(this.configManager, 'httpListener');
|
|
142
154
|
this.server = this.serveFactory({
|
|
@@ -147,6 +159,7 @@ export class HttpListener {
|
|
|
147
159
|
return self.handleRequest(req);
|
|
148
160
|
},
|
|
149
161
|
});
|
|
162
|
+
this._attachHttpListenerConfigWatcher();
|
|
150
163
|
logger.info('HttpListener started', {
|
|
151
164
|
port: this.port,
|
|
152
165
|
host: this.host,
|
|
@@ -155,12 +168,28 @@ export class HttpListener {
|
|
|
155
168
|
trustProxy: this.tlsState.trustProxy,
|
|
156
169
|
});
|
|
157
170
|
}
|
|
171
|
+
/**
|
|
172
|
+
* Wait for any in-progress config-driven restart to settle.
|
|
173
|
+
*/
|
|
174
|
+
async waitForRestart() {
|
|
175
|
+
// Loop to handle dirty-flag chained restarts: each cycle may spawn another.
|
|
176
|
+
while (this._restartingPromise)
|
|
177
|
+
await this._restartingPromise;
|
|
178
|
+
}
|
|
158
179
|
/**
|
|
159
180
|
* Stop the listener.
|
|
160
181
|
*/
|
|
161
182
|
async stop() {
|
|
162
183
|
if (this.server === null)
|
|
163
184
|
return;
|
|
185
|
+
// Tear down config watcher only on intentional stop, not mid-restart.
|
|
186
|
+
// During a restart cycle (_restarting=true) the watcher must stay active so
|
|
187
|
+
// config changes that arrive between stop() and the subsequent start() can be
|
|
188
|
+
// captured by the dirty flag.
|
|
189
|
+
if (!this._restarting) {
|
|
190
|
+
this._configWatchUnsub?.();
|
|
191
|
+
this._configWatchUnsub = null;
|
|
192
|
+
}
|
|
164
193
|
// Stop rate limiter sweep interval before tearing down (C5 fix)
|
|
165
194
|
this.rateLimiter.stop();
|
|
166
195
|
this.server.stop(true);
|
|
@@ -168,6 +197,63 @@ export class HttpListener {
|
|
|
168
197
|
this.tlsState = null;
|
|
169
198
|
logger.info('HttpListener stopped');
|
|
170
199
|
}
|
|
200
|
+
/**
|
|
201
|
+
* Subscribe to httpListener binding keys and restart the server on change.
|
|
202
|
+
* Called once from start() after the server is up. Clears itself on stop().
|
|
203
|
+
*/
|
|
204
|
+
_attachHttpListenerConfigWatcher() {
|
|
205
|
+
if (this._configWatchUnsub)
|
|
206
|
+
return; // idempotent
|
|
207
|
+
const restart = () => {
|
|
208
|
+
if (this._restarting) {
|
|
209
|
+
// A change arrived mid-restart — queue a second cycle via dirty flag.
|
|
210
|
+
// Check _restarting BEFORE isRunning: stop() runs synchronously inside the
|
|
211
|
+
// restart IIFE, so isRunning may be false even while a restart is in progress.
|
|
212
|
+
this._restartDirty = true;
|
|
213
|
+
return;
|
|
214
|
+
}
|
|
215
|
+
if (!this.isRunning)
|
|
216
|
+
return;
|
|
217
|
+
this._restarting = true;
|
|
218
|
+
this._restartingPromise = (async () => {
|
|
219
|
+
try {
|
|
220
|
+
logger.info('HttpListener: httpListener binding changed, restarting HTTP listener…');
|
|
221
|
+
await this.stop();
|
|
222
|
+
// Re-resolve host/port from updated config
|
|
223
|
+
const newBinding = resolveHostBinding(this.configManager.get('httpListener.hostMode') ?? 'local', String(this.configManager.get('httpListener.host') ?? '127.0.0.1'), Number(this.configManager.get('httpListener.port') ?? 3422), 'httpListener');
|
|
224
|
+
this.host = newBinding.host;
|
|
225
|
+
this.port = newBinding.port;
|
|
226
|
+
await this.start();
|
|
227
|
+
}
|
|
228
|
+
catch (err) {
|
|
229
|
+
logger.error('HttpListener: restart after config change failed', { error: summarizeError(err) });
|
|
230
|
+
}
|
|
231
|
+
finally {
|
|
232
|
+
this._restarting = false;
|
|
233
|
+
// If a config change arrived while we were restarting, kick off a second
|
|
234
|
+
// cycle BEFORE nulling _restartingPromise so waitForRestart() chains correctly.
|
|
235
|
+
if (this._restartDirty) {
|
|
236
|
+
this._restartDirty = false;
|
|
237
|
+
restart(); // sets this._restartingPromise to the new cycle
|
|
238
|
+
}
|
|
239
|
+
else {
|
|
240
|
+
this._restartingPromise = null;
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
})();
|
|
244
|
+
};
|
|
245
|
+
// getIsRunning must also return true while a restart cycle is in progress
|
|
246
|
+
// (_restarting=true) so that config changes arriving mid-restart reach the
|
|
247
|
+
// dirty-flag path inside `restart`. When the server is intentionally stopped
|
|
248
|
+
// (not mid-restart) isRunning and _restarting are both false.
|
|
249
|
+
const watcher = createHostModeRestartWatcher({
|
|
250
|
+
configManager: this.configManager,
|
|
251
|
+
keys: ['httpListener.hostMode', 'httpListener.host', 'httpListener.port'],
|
|
252
|
+
onRestart: restart,
|
|
253
|
+
getIsRunning: () => this.isRunning || this._restarting,
|
|
254
|
+
});
|
|
255
|
+
this._configWatchUnsub = () => watcher.unsubscribe();
|
|
256
|
+
}
|
|
171
257
|
/**
|
|
172
258
|
* Returns true if the listener is currently running.
|
|
173
259
|
*/
|
|
@@ -50,11 +50,10 @@ export interface AutoRegisterEntry extends CatalogProvider {
|
|
|
50
50
|
export declare const AUTO_REGISTER_CATALOG: AutoRegisterEntry[];
|
|
51
51
|
/**
|
|
52
52
|
* Check whether a provider ID is already registered in the provider registry.
|
|
53
|
-
* Uses try/catch since ProviderRegistry.get() throws on missing providers.
|
|
54
53
|
*
|
|
55
54
|
* @internal Exported for testing.
|
|
56
55
|
*/
|
|
57
|
-
export declare function isProviderRegistered(providerRegistry: Pick<ProviderRegistry, '
|
|
56
|
+
export declare function isProviderRegistered(providerRegistry: Pick<ProviderRegistry, 'has'>, providerId: string): boolean;
|
|
58
57
|
/**
|
|
59
58
|
* Resolve the API key to use for a provider entry.
|
|
60
59
|
* Returns the first non-empty env var value, or empty string.
|
|
@@ -87,5 +86,5 @@ export declare function createProviderFromEntry(entry: AutoRegisterEntry, apiKey
|
|
|
87
86
|
* // conversation.addSystemMessage(`Auto-registered ${names.length} providers: ${names.join(', ')}`);
|
|
88
87
|
* // }
|
|
89
88
|
*/
|
|
90
|
-
export declare function autoRegisterProviders(providerRegistry: Pick<ProviderRegistry, '
|
|
89
|
+
export declare function autoRegisterProviders(providerRegistry: Pick<ProviderRegistry, 'has' | 'register'>, catalog?: AutoRegisterEntry[]): string[];
|
|
91
90
|
//# sourceMappingURL=auto-register.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-register.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/providers/auto-register.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAQ1D,mDAAmD;AACnD,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE/C;;;GAGG;AACH,MAAM,WAAW,iBAAkB,SAAQ,eAAe;IACxD;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAMD;;;;;;;;;GASG;AACH,eAAO,MAAM,qBAAqB,EAAE,iBAAiB,EA0NpD,CAAC;AAMF
|
|
1
|
+
{"version":3,"file":"auto-register.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/providers/auto-register.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAQ1D,mDAAmD;AACnD,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE/C;;;GAGG;AACH,MAAM,WAAW,iBAAkB,SAAQ,eAAe;IACxD;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAMD;;;;;;;;;GASG;AACH,eAAO,MAAM,qBAAqB,EAAE,iBAAiB,EA0NpD,CAAC;AAMF;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,EAC/C,UAAU,EAAE,MAAM,GACjB,OAAO,CAET;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAQ9D;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,CAsB7F;AAMD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,qBAAqB,CACnC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,KAAK,GAAG,UAAU,CAAC,EAC5D,OAAO,GAAE,iBAAiB,EAA0B,GACnD,MAAM,EAAE,CAqCV"}
|
|
@@ -248,18 +248,11 @@ export const AUTO_REGISTER_CATALOG = [
|
|
|
248
248
|
// ---------------------------------------------------------------------------
|
|
249
249
|
/**
|
|
250
250
|
* Check whether a provider ID is already registered in the provider registry.
|
|
251
|
-
* Uses try/catch since ProviderRegistry.get() throws on missing providers.
|
|
252
251
|
*
|
|
253
252
|
* @internal Exported for testing.
|
|
254
253
|
*/
|
|
255
254
|
export function isProviderRegistered(providerRegistry, providerId) {
|
|
256
|
-
|
|
257
|
-
providerRegistry.get(providerId);
|
|
258
|
-
return true;
|
|
259
|
-
}
|
|
260
|
-
catch {
|
|
261
|
-
return false;
|
|
262
|
-
}
|
|
255
|
+
return providerRegistry.has(providerId);
|
|
263
256
|
}
|
|
264
257
|
/**
|
|
265
258
|
* Resolve the API key to use for a provider entry.
|
|
@@ -3,4 +3,5 @@ export { createProviderApi } from './provider-api.js';
|
|
|
3
3
|
export type { ProviderApi, ProviderApiBenchmarkStore, ProviderApiBenchmarkQuery, ProviderApiBenchmarkRecord, ProviderApiCatalogBenchmarkRecord, ProviderApiDependencies, ProviderApiFavoriteRecord, ProviderApiFavoritesStore, ProviderApiFavoriteState, ProviderApiFavoritesSnapshot, ProviderApiModelQuery, ProviderApiModelRecord, ProviderApiModelReference, ProviderApiModelRouting, ProviderApiRegistry, ProviderApiRuntimeQuery, ProviderApiRuntimeQueryResult, ProviderApiSyntheticBenchmarkRecord, ProviderApiSyntheticRouting, } from './provider-api.js';
|
|
4
4
|
export type { ContextWindowProvenance, ModelDefinition, ModelTier, ProviderRegistryOptions, RuntimeProviderRegistration, TokenLimits, } from './registry-types.js';
|
|
5
5
|
export type { ProviderRuntimeSnapshot, ProviderUsageSnapshot } from './runtime-snapshot.js';
|
|
6
|
+
export { ProviderNotFoundError } from './provider-not-found-error.js';
|
|
6
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/providers/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,WAAW,EACX,YAAY,EACZ,WAAW,EACX,WAAW,EACX,eAAe,EACf,2BAA2B,EAC3B,yBAAyB,EACzB,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,EACzB,WAAW,GACZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,YAAY,EACV,WAAW,EACX,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,iCAAiC,EACjC,uBAAuB,EACvB,yBAAyB,EACzB,yBAAyB,EACzB,wBAAwB,EACxB,4BAA4B,EAC5B,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,EACvB,mBAAmB,EACnB,uBAAuB,EACvB,6BAA6B,EAC7B,mCAAmC,EACnC,2BAA2B,GAC5B,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,uBAAuB,EACvB,eAAe,EACf,SAAS,EACT,uBAAuB,EACvB,2BAA2B,EAC3B,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/providers/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,WAAW,EACX,YAAY,EACZ,WAAW,EACX,WAAW,EACX,eAAe,EACf,2BAA2B,EAC3B,yBAAyB,EACzB,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,EACzB,WAAW,GACZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,YAAY,EACV,WAAW,EACX,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,iCAAiC,EACjC,uBAAuB,EACvB,yBAAyB,EACzB,yBAAyB,EACzB,wBAAwB,EACxB,4BAA4B,EAC5B,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,EACvB,mBAAmB,EACnB,uBAAuB,EACvB,6BAA6B,EAC7B,mCAAmC,EACnC,2BAA2B,GAC5B,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,uBAAuB,EACvB,eAAe,EACf,SAAS,EACT,uBAAuB,EACvB,2BAA2B,EAC3B,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC"}
|
|
@@ -135,7 +135,11 @@ export interface ProviderApiRegistry {
|
|
|
135
135
|
output: number;
|
|
136
136
|
};
|
|
137
137
|
getCatalogModelDefinitions(): readonly MinimalModelDefinition[];
|
|
138
|
+
has(id: string): boolean;
|
|
139
|
+
/** @deprecated Use {@link require} for throwing lookup or {@link tryGet} for nullable. */
|
|
138
140
|
get(name: string): LLMProvider;
|
|
141
|
+
require(id: string): LLMProvider;
|
|
142
|
+
tryGet(name: string): LLMProvider | undefined;
|
|
139
143
|
getCurrentModel(): ModelDefinition;
|
|
140
144
|
getContextWindowForModel(modelDef: ModelDefinition): number;
|
|
141
145
|
getForModel(modelId: string, provider?: string): LLMProvider;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-api.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/providers/provider-api.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"provider-api.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/providers/provider-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Thrown by {@link ProviderRegistry.require} when no provider with the given ID
|
|
3
|
+
* is registered.
|
|
4
|
+
*
|
|
5
|
+
* The error message includes the list of all currently-registered provider IDs
|
|
6
|
+
* so callers can quickly see what is available without having to inspect the
|
|
7
|
+
* registry separately.
|
|
8
|
+
*/
|
|
9
|
+
export declare class ProviderNotFoundError extends Error {
|
|
10
|
+
/** The provider ID that was requested. */
|
|
11
|
+
readonly providerId: string;
|
|
12
|
+
/** Sorted list of currently-registered provider IDs at the time of the error. */
|
|
13
|
+
readonly availableIds: readonly string[];
|
|
14
|
+
constructor(providerId: string, available: readonly string[]);
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=provider-not-found-error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-not-found-error.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/providers/provider-not-found-error.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,0CAA0C;IAC1C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,iFAAiF;IACjF,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;gBAE7B,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,MAAM,EAAE;CAY7D"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Thrown by {@link ProviderRegistry.require} when no provider with the given ID
|
|
3
|
+
* is registered.
|
|
4
|
+
*
|
|
5
|
+
* The error message includes the list of all currently-registered provider IDs
|
|
6
|
+
* so callers can quickly see what is available without having to inspect the
|
|
7
|
+
* registry separately.
|
|
8
|
+
*/
|
|
9
|
+
export class ProviderNotFoundError extends Error {
|
|
10
|
+
/** The provider ID that was requested. */
|
|
11
|
+
providerId;
|
|
12
|
+
/** Sorted list of currently-registered provider IDs at the time of the error. */
|
|
13
|
+
availableIds;
|
|
14
|
+
constructor(providerId, available) {
|
|
15
|
+
const ids = available.length > 0 ? available.join(', ') : '(none)';
|
|
16
|
+
super(`Provider '${providerId}' is not registered. ` +
|
|
17
|
+
`Available providers: ${ids}`);
|
|
18
|
+
this.name = 'ProviderNotFoundError';
|
|
19
|
+
this.providerId = providerId;
|
|
20
|
+
this.availableIds = available;
|
|
21
|
+
// Maintains proper prototype chain for instanceof checks
|
|
22
|
+
Object.setPrototypeOf(this, new.target.prototype);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
@@ -63,9 +63,51 @@ export declare class ProviderRegistry {
|
|
|
63
63
|
* Does not overwrite built-in or custom-loaded providers/models.
|
|
64
64
|
*/
|
|
65
65
|
registerDiscoveredProviders(servers: DiscoveredServer[]): void;
|
|
66
|
-
/**
|
|
66
|
+
/**
|
|
67
|
+
* Returns `true` if a provider with the given name (or its catalog alias) is registered.
|
|
68
|
+
*
|
|
69
|
+
* @param id - Provider name as registered (e.g. `'anthropic'`, `'openai'`).
|
|
70
|
+
*/
|
|
71
|
+
has(id: string): boolean;
|
|
72
|
+
/**
|
|
73
|
+
* Retrieve a provider by name, applying subscription route aliasing.
|
|
74
|
+
* Throws a {@link ProviderNotFoundError} if no provider with that name is registered.
|
|
75
|
+
*
|
|
76
|
+
* @deprecated Use {@link require} for the canonical throwing lookup, or
|
|
77
|
+
* {@link tryGet} for a safe nullable lookup.
|
|
78
|
+
*
|
|
79
|
+
* @param name - Provider name as registered (e.g. `'anthropic'`, `'openai'`).
|
|
80
|
+
* @throws {ProviderNotFoundError} When no matching provider is registered.
|
|
81
|
+
*/
|
|
67
82
|
get(name: string): LLMProvider;
|
|
68
|
-
/**
|
|
83
|
+
/**
|
|
84
|
+
* Retrieve a provider by name, applying subscription route aliasing.
|
|
85
|
+
* Throws a {@link ProviderNotFoundError} if no provider with that name is registered.
|
|
86
|
+
*
|
|
87
|
+
* The error message includes the list of all currently registered provider IDs
|
|
88
|
+
* to aid discoverability.
|
|
89
|
+
*
|
|
90
|
+
* @param id - Provider name as registered (e.g. `'anthropic'`, `'openai'`).
|
|
91
|
+
* @throws {ProviderNotFoundError} When no matching provider is registered.
|
|
92
|
+
*/
|
|
93
|
+
require(id: string): LLMProvider;
|
|
94
|
+
/**
|
|
95
|
+
* Retrieve a provider by name, applying subscription route aliasing.
|
|
96
|
+
* Returns `undefined` if no provider with that name (or its catalog alias) is registered.
|
|
97
|
+
*
|
|
98
|
+
* Prefer {@link require} when you know the provider must exist and want a clear
|
|
99
|
+
* error when it does not.
|
|
100
|
+
*
|
|
101
|
+
* @param name - Provider name as registered (e.g. `'anthropic'`, `'openai'`).
|
|
102
|
+
*/
|
|
103
|
+
tryGet(name: string): LLMProvider | undefined;
|
|
104
|
+
/**
|
|
105
|
+
* Retrieve the directly-registered provider without subscription route aliasing.
|
|
106
|
+
* Throws if no provider with that name (or its catalog alias) is registered.
|
|
107
|
+
*
|
|
108
|
+
* Note: Unlike {@link require}, this method does NOT apply subscription route aliasing
|
|
109
|
+
* (e.g. the openai-subscriber redirect). Prefer {@link require} for general use.
|
|
110
|
+
*/
|
|
69
111
|
getRegistered(name: string): LLMProvider;
|
|
70
112
|
describeRuntime(name: string): Promise<ProviderRuntimeMetadata | null>;
|
|
71
113
|
/** Return the provider responsible for a given model ID.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/providers/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,uBAAuB,EAA+B,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/providers/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ProviderNotFoundError } from './provider-not-found-error.js';
|
|
1
2
|
import { join } from 'node:path';
|
|
2
3
|
import { logger } from '@pellux/goodvibes-sdk/platform/utils/logger';
|
|
3
4
|
import { ProviderCapabilityRegistry, } from './capabilities.js';
|
|
@@ -69,7 +70,7 @@ export class ProviderRegistry {
|
|
|
69
70
|
const apiKey = (name) => getConfiguredApiKeys()[name] ?? '';
|
|
70
71
|
registerBuiltinProviders(this, (name) => this.providers.has(name), apiKey, {
|
|
71
72
|
cacheHitTracker: this.cacheHitTracker,
|
|
72
|
-
resolveProvider: (providerName) => this.
|
|
73
|
+
resolveProvider: (providerName) => this.require(providerName),
|
|
73
74
|
getCatalogModels: () => this.syntheticCanonicalModels,
|
|
74
75
|
getBenchmarks: (modelId) => this.benchmarkStore.getBenchmarks(modelId),
|
|
75
76
|
githubCopilotTokenCachePath: getGitHubCopilotTokenCachePath(this.getPersistenceRoot()),
|
|
@@ -211,16 +212,81 @@ export class ProviderRegistry {
|
|
|
211
212
|
}
|
|
212
213
|
this._invalidateModelRegistry();
|
|
213
214
|
}
|
|
214
|
-
/**
|
|
215
|
+
/**
|
|
216
|
+
* Returns `true` if a provider with the given name (or its catalog alias) is registered.
|
|
217
|
+
*
|
|
218
|
+
* @param id - Provider name as registered (e.g. `'anthropic'`, `'openai'`).
|
|
219
|
+
*/
|
|
220
|
+
has(id) {
|
|
221
|
+
if (this.providers.has(id))
|
|
222
|
+
return true;
|
|
223
|
+
const aliased = CATALOG_PROVIDER_NAME_ALIASES[id];
|
|
224
|
+
return aliased !== undefined && this.providers.has(aliased);
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Retrieve a provider by name, applying subscription route aliasing.
|
|
228
|
+
* Throws a {@link ProviderNotFoundError} if no provider with that name is registered.
|
|
229
|
+
*
|
|
230
|
+
* @deprecated Use {@link require} for the canonical throwing lookup, or
|
|
231
|
+
* {@link tryGet} for a safe nullable lookup.
|
|
232
|
+
*
|
|
233
|
+
* @param name - Provider name as registered (e.g. `'anthropic'`, `'openai'`).
|
|
234
|
+
* @throws {ProviderNotFoundError} When no matching provider is registered.
|
|
235
|
+
*/
|
|
215
236
|
get(name) {
|
|
237
|
+
return this.require(name);
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Retrieve a provider by name, applying subscription route aliasing.
|
|
241
|
+
* Throws a {@link ProviderNotFoundError} if no provider with that name is registered.
|
|
242
|
+
*
|
|
243
|
+
* The error message includes the list of all currently registered provider IDs
|
|
244
|
+
* to aid discoverability.
|
|
245
|
+
*
|
|
246
|
+
* @param id - Provider name as registered (e.g. `'anthropic'`, `'openai'`).
|
|
247
|
+
* @throws {ProviderNotFoundError} When no matching provider is registered.
|
|
248
|
+
*/
|
|
249
|
+
require(id) {
|
|
250
|
+
const provider = this.tryGet(id);
|
|
251
|
+
if (provider)
|
|
252
|
+
return provider;
|
|
253
|
+
const available = [...this.providers.keys()].sort();
|
|
254
|
+
throw new ProviderNotFoundError(id, available);
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Retrieve a provider by name, applying subscription route aliasing.
|
|
258
|
+
* Returns `undefined` if no provider with that name (or its catalog alias) is registered.
|
|
259
|
+
*
|
|
260
|
+
* Prefer {@link require} when you know the provider must exist and want a clear
|
|
261
|
+
* error when it does not.
|
|
262
|
+
*
|
|
263
|
+
* @param name - Provider name as registered (e.g. `'anthropic'`, `'openai'`).
|
|
264
|
+
*/
|
|
265
|
+
tryGet(name) {
|
|
216
266
|
if (name === 'openai' && this.subscriptionManager.get('openai')) {
|
|
217
267
|
const subscriber = this.providers.get('openai-subscriber');
|
|
218
268
|
if (subscriber)
|
|
219
269
|
return subscriber;
|
|
220
270
|
}
|
|
221
|
-
|
|
271
|
+
const p = this.providers.get(name);
|
|
272
|
+
if (p)
|
|
273
|
+
return p;
|
|
274
|
+
// Check alias map — catalog may use a different name than the registered provider
|
|
275
|
+
const aliased = CATALOG_PROVIDER_NAME_ALIASES[name];
|
|
276
|
+
if (aliased) {
|
|
277
|
+
const pa = this.providers.get(aliased);
|
|
278
|
+
if (pa)
|
|
279
|
+
return pa;
|
|
280
|
+
}
|
|
281
|
+
return undefined;
|
|
222
282
|
}
|
|
223
|
-
/**
|
|
283
|
+
/**
|
|
284
|
+
* Retrieve the directly-registered provider without subscription route aliasing.
|
|
285
|
+
* Throws if no provider with that name (or its catalog alias) is registered.
|
|
286
|
+
*
|
|
287
|
+
* Note: Unlike {@link require}, this method does NOT apply subscription route aliasing
|
|
288
|
+
* (e.g. the openai-subscriber redirect). Prefer {@link require} for general use.
|
|
289
|
+
*/
|
|
224
290
|
getRegistered(name) {
|
|
225
291
|
const p = this.providers.get(name);
|
|
226
292
|
if (p)
|
|
@@ -232,7 +298,7 @@ export class ProviderRegistry {
|
|
|
232
298
|
if (pa)
|
|
233
299
|
return pa;
|
|
234
300
|
}
|
|
235
|
-
throw new
|
|
301
|
+
throw new ProviderNotFoundError(name, [...this.providers.keys()].sort());
|
|
236
302
|
}
|
|
237
303
|
async describeRuntime(name) {
|
|
238
304
|
const provider = this.getRegistered(name);
|
|
@@ -257,7 +323,7 @@ export class ProviderRegistry {
|
|
|
257
323
|
throw new Error(`No model '${modelId}' for provider '${provider}' in registry.`);
|
|
258
324
|
throw new Error(`No model '${modelId}' in registry.`);
|
|
259
325
|
}
|
|
260
|
-
return this.
|
|
326
|
+
return this.require(def.provider);
|
|
261
327
|
}
|
|
262
328
|
/** All registered model definitions. */
|
|
263
329
|
listModels() {
|
|
@@ -566,13 +632,7 @@ export class ProviderRegistry {
|
|
|
566
632
|
const { providerId: fallbackProviderId, resolvedModelId: fallbackModelId } = splitModelRegistryKey(modelId);
|
|
567
633
|
const providerId = def?.provider ?? fallbackProviderId;
|
|
568
634
|
const resolvedModelId = def?.id ?? fallbackModelId;
|
|
569
|
-
|
|
570
|
-
try {
|
|
571
|
-
provider = this.get(providerId);
|
|
572
|
-
}
|
|
573
|
-
catch {
|
|
574
|
-
// Provider not registered yet — proceed without self-declared capabilities
|
|
575
|
-
}
|
|
635
|
+
const provider = this.tryGet(providerId);
|
|
576
636
|
return { providerId, resolvedModelId, provider };
|
|
577
637
|
}
|
|
578
638
|
/** Kick off async custom provider loading. Called once from bootstrap-owned construction. */
|
|
@@ -24,7 +24,7 @@ export declare const SCHEMA_VERSIONS: {
|
|
|
24
24
|
/** RuntimeEventEnvelope schema for event persistence and replay. */
|
|
25
25
|
readonly eventEnvelope: {
|
|
26
26
|
readonly major: 1;
|
|
27
|
-
readonly minor:
|
|
27
|
+
readonly minor: 1;
|
|
28
28
|
readonly patch: 0;
|
|
29
29
|
};
|
|
30
30
|
/** Session persistence format (messages + meta). */
|
|
@@ -18,7 +18,7 @@ export const SCHEMA_VERSIONS = {
|
|
|
18
18
|
/** Top-level RuntimeState snapshot schema. */
|
|
19
19
|
runtimeState: { major: 1, minor: 0, patch: 0 },
|
|
20
20
|
/** RuntimeEventEnvelope schema for event persistence and replay. */
|
|
21
|
-
eventEnvelope: { major: 1, minor:
|
|
21
|
+
eventEnvelope: { major: 1, minor: 1, patch: 0 },
|
|
22
22
|
/** Session persistence format (messages + meta). */
|
|
23
23
|
session: { major: 1, minor: 0, patch: 0 },
|
|
24
24
|
/** Plugin manifest and capability descriptor schema. */
|
|
@@ -84,4 +84,14 @@ export type DomainEventMap = {
|
|
|
84
84
|
surfaces: SurfaceEvent;
|
|
85
85
|
knowledge: KnowledgeEvent;
|
|
86
86
|
};
|
|
87
|
+
/**
|
|
88
|
+
* Legacy alias for `AnyRuntimeEvent` used by transport-layer generics.
|
|
89
|
+
*
|
|
90
|
+
* Historically the transport layer used `{ readonly type: string }` as a loose
|
|
91
|
+
* catch-all bound. This alias replaces that with the fully-typed discriminated
|
|
92
|
+
* union so TypeScript narrows `payload` automatically on `type` match.
|
|
93
|
+
*
|
|
94
|
+
* @deprecated Prefer `AnyRuntimeEvent` for new code.
|
|
95
|
+
*/
|
|
96
|
+
export type RuntimeEventRecord = AnyRuntimeEvent;
|
|
87
97
|
//# sourceMappingURL=domain-map.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domain-map.d.ts","sourceRoot":"","sources":["../../../../../src/_internal/platform/runtime/events/domain-map.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uDAAuD,CAAC;AAC1F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yDAAyD,CAAC;AAC7F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qDAAqD,CAAC;AACrF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qDAAqD,CAAC;AACrF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sDAAsD,CAAC;AACvF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6DAA6D,CAAC;AACtG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6DAA6D,CAAC;AACtG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uDAAuD,CAAC;AAC1F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2DAA2D,CAAC;AACjG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uDAAuD,CAAC;AACzF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAClF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yDAAyD,CAAC;AAC9F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0DAA0D,CAAC;AAChG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kDAAkD,CAAC;AAChF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAClF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yDAAyD,CAAC;AAC9F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wDAAwD,CAAC;AAC5F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0DAA0D,CAAC;AAChG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sDAAsD,CAAC;AACvF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6DAA6D,CAAC;AACrG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0DAA0D,CAAC;AAC9F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wDAAwD,CAAC;AAC3F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wDAAwD,CAAC;AAC3F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yDAAyD,CAAC;AAE9F,0CAA0C;AAC1C,MAAM,MAAM,eAAe,GACvB,YAAY,GACZ,SAAS,GACT,aAAa,GACb,SAAS,GACT,SAAS,GACT,UAAU,GACV,aAAa,GACb,kBAAkB,GAClB,kBAAkB,GAClB,YAAY,GACZ,eAAe,GACf,WAAW,GACX,QAAQ,GACR,cAAc,GACd,eAAe,GACf,OAAO,GACP,QAAQ,GACR,cAAc,GACd,aAAa,GACb,eAAe,GACf,UAAU,GACV,iBAAiB,GACjB,aAAa,GACb,YAAY,GACZ,YAAY,GACZ,cAAc,CAAC;AAEnB;;;;;;;;GAQG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,eAAe,CAAC,MAAM,CAAC,IAAI,OAAO,CAC1E,eAAe,EACf;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CACZ,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,+TA2BxB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAEtE,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,kBAAkB,CAE/E;AAED,qDAAqD;AACrD,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,YAAY,CAAC;IACtB,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,aAAa,CAAC;IACzB,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,EAAE,aAAa,CAAC;IACzB,aAAa,EAAE,kBAAkB,CAAC;IAClC,aAAa,EAAE,kBAAkB,CAAC;IAClC,OAAO,EAAE,YAAY,CAAC;IACtB,WAAW,EAAE,eAAe,CAAC;IAC7B,OAAO,EAAE,WAAW,CAAC;IACrB,GAAG,EAAE,QAAQ,CAAC;IACd,SAAS,EAAE,cAAc,CAAC;IAC1B,UAAU,EAAE,eAAe,CAAC;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,GAAG,EAAE,QAAQ,CAAC;IACd,SAAS,EAAE,cAAc,CAAC;IAC1B,QAAQ,EAAE,aAAa,CAAC;IACxB,UAAU,EAAE,eAAe,CAAC;IAC5B,MAAM,EAAE,UAAU,CAAC;IACnB,eAAe,EAAE,iBAAiB,CAAC;IACnC,UAAU,EAAE,aAAa,CAAC;IAC1B,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,YAAY,CAAC;IACvB,SAAS,EAAE,cAAc,CAAC;CAC3B,CAAC"}
|
|
1
|
+
{"version":3,"file":"domain-map.d.ts","sourceRoot":"","sources":["../../../../../src/_internal/platform/runtime/events/domain-map.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,7 @@ export type { CompactionEvent, CompactionEventType } from '@pellux/goodvibes-sdk
|
|
|
20
20
|
export type { UIEvent, UIEventType } from '@pellux/goodvibes-sdk/platform/runtime/events/ui';
|
|
21
21
|
export type { OpsEvent, OpsEventType } from '@pellux/goodvibes-sdk/platform/runtime/events/ops';
|
|
22
22
|
export { RUNTIME_EVENT_DOMAINS, isRuntimeEventDomain } from './domain-map.js';
|
|
23
|
-
export type { AnyRuntimeEvent, RuntimeEventPayload, RuntimeEventDomain, DomainEventMap } from './domain-map.js';
|
|
23
|
+
export type { AnyRuntimeEvent, RuntimeEventPayload, RuntimeEventDomain, DomainEventMap, RuntimeEventRecord } from './domain-map.js';
|
|
24
24
|
export type { AutomationEvent, AutomationEventType, AutomationScheduleKind, AutomationExecutionMode, AutomationRunOutcome } from '@pellux/goodvibes-sdk/platform/runtime/events/automation';
|
|
25
25
|
export { AUTOMATION_SCHEDULE_KINDS, AUTOMATION_RUN_OUTCOMES } from '@pellux/goodvibes-sdk/platform/runtime/events/automation';
|
|
26
26
|
export type { RouteEvent, RouteEventType, RouteSurfaceKind, RouteTargetKind } from '@pellux/goodvibes-sdk/platform/runtime/events/routes';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/_internal/platform/runtime/events/index.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wDAAwD,CAAC;AACnG,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAG3F,YAAY,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,wDAAwD,CAAC;AACpH,OAAO,EAAE,mBAAmB,EAAE,MAAM,wDAAwD,CAAC;AAC7F,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,uDAAuD,CAAC;AAC5G,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1D,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAChH,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC;AACpG,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC;AACpG,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AACvG,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACvE,YAAY,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,6DAA6D,CAAC;AACzJ,YAAY,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,6DAA6D,CAAC;AACrK,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,uDAAuD,CAAC;AAC5G,YAAY,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,2DAA2D,CAAC;AACtH,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAC;AAC1G,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,mDAAmD,CAAC;AAChG,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,yDAAyD,CAAC;AAClH,YAAY,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,0DAA0D,CAAC;AACrH,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,kDAAkD,CAAC;AAC7F,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,mDAAmD,CAAC;AAChG,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC9E,YAAY,EAAE,eAAe,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/_internal/platform/runtime/events/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,7 @@ export { createEventEnvelope } from './event-envelope.js';
|
|
|
14
14
|
export type { EventEnvelope, EventEnvelopeContext } from './event-envelope.js';
|
|
15
15
|
export type { RuntimeEventEnvelope, EnvelopeContext } from './events/envelope.js';
|
|
16
16
|
export { RUNTIME_EVENT_DOMAINS, isRuntimeEventDomain } from './events/domain-map.js';
|
|
17
|
-
export type { AnyRuntimeEvent, RuntimeEventDomain } from './events/domain-map.js';
|
|
17
|
+
export type { AnyRuntimeEvent, RuntimeEventDomain, RuntimeEventRecord } from './events/domain-map.js';
|
|
18
18
|
export { createRuntimeEventFeed, createRuntimeEventFeeds } from './event-feeds.js';
|
|
19
19
|
export type { RuntimeEventFeed, RuntimeEventFeeds } from './event-feeds.js';
|
|
20
20
|
export type { EmitterContext } from './emitters/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/runtime/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC5E,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACrE,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,cAAc,4BAA4B,CAAC;AAE3C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,YAAY,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,YAAY,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACrF,YAAY,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/runtime/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { readFileSync } from 'node:fs';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
|
-
let version = '0.18.
|
|
3
|
+
let version = '0.18.46';
|
|
4
4
|
try {
|
|
5
5
|
const pkg = JSON.parse(readFileSync(join(import.meta.dir, '..', '..', 'package.json'), 'utf-8'));
|
|
6
6
|
version = pkg.version ?? version;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type RuntimeEventDomain } from '../contracts/index.js';
|
|
2
|
+
import type { AnyRuntimeEvent } from '../platform/runtime/events/index.js';
|
|
2
3
|
import { type AuthTokenResolver, type StreamReconnectPolicy } from '../transport-http/index.js';
|
|
3
4
|
import { type DomainEventConnector, type DomainEvents, type SerializedEventEnvelope } from './domain-events.js';
|
|
4
5
|
type RuntimeEventRecord = {
|
|
@@ -14,7 +15,7 @@ type AuthTokenSource = string | null | undefined | AuthTokenResolver;
|
|
|
14
15
|
export declare function createRemoteRuntimeEvents<TEvent extends RuntimeEventRecord = RuntimeEventRecord>(connect: DomainEventConnector<RuntimeEventDomain, TEvent>): RemoteRuntimeEvents<TEvent>;
|
|
15
16
|
export declare function buildEventSourceUrl(baseUrl: string, domain: RuntimeEventDomain): string;
|
|
16
17
|
export declare function buildWebSocketUrl(baseUrl: string, domains: readonly RuntimeEventDomain[]): string;
|
|
17
|
-
export declare function createEventSourceConnector(baseUrl: string, token: AuthTokenSource, fetchImpl: typeof fetch, options?: RuntimeEventConnectorOptions): DomainEventConnector<RuntimeEventDomain,
|
|
18
|
-
export declare function createWebSocketConnector(baseUrl: string, token: AuthTokenSource, WebSocketImpl: typeof WebSocket, options?: RuntimeEventConnectorOptions): DomainEventConnector<RuntimeEventDomain,
|
|
18
|
+
export declare function createEventSourceConnector(baseUrl: string, token: AuthTokenSource, fetchImpl: typeof fetch, options?: RuntimeEventConnectorOptions): DomainEventConnector<RuntimeEventDomain, AnyRuntimeEvent>;
|
|
19
|
+
export declare function createWebSocketConnector(baseUrl: string, token: AuthTokenSource, WebSocketImpl: typeof WebSocket, options?: RuntimeEventConnectorOptions): DomainEventConnector<RuntimeEventDomain, AnyRuntimeEvent>;
|
|
19
20
|
export {};
|
|
20
21
|
//# sourceMappingURL=runtime-events.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-events.d.ts","sourceRoot":"","sources":["../../../src/_internal/transport-realtime/runtime-events.ts"],"names":[],"mappings":"AAEA,OAAO,EAAyB,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACvF,OAAO,EAAoB,KAAK,iBAAiB,EAAE,KAAK,qBAAqB,EAA6D,MAAM,4BAA4B,CAAC;AAE7K,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,KAAK,uBAAuB,EAC7B,MAAM,oBAAoB,CAAC;AAE5B,KAAK,kBAAkB,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpD,MAAM,MAAM,yBAAyB,CAAC,MAAM,SAAS,kBAAkB,GAAG,kBAAkB,IAC1F,uBAAuB,CAAC,MAAM,CAAC,CAAC;AAElC,MAAM,MAAM,mBAAmB,CAAC,MAAM,SAAS,kBAAkB,GAAG,kBAAkB,IACpF,YAAY,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;AAE3C,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAC3C,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CAC7C;AAED,KAAK,eAAe,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,iBAAiB,CAAC;AASrE,wBAAgB,yBAAyB,CAAC,MAAM,SAAS,kBAAkB,GAAG,kBAAkB,EAC9F,OAAO,EAAE,oBAAoB,CAAC,kBAAkB,EAAE,MAAM,CAAC,GACxD,mBAAmB,CAAC,MAAM,CAAC,CAK7B;AAED,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,kBAAkB,GACzB,MAAM,CAIR;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,SAAS,kBAAkB,EAAE,GACrC,MAAM,CAQR;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,eAAe,EACtB,SAAS,EAAE,OAAO,KAAK,EACvB,OAAO,GAAE,4BAAiC,GACzC,oBAAoB,CAAC,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"runtime-events.d.ts","sourceRoot":"","sources":["../../../src/_internal/transport-realtime/runtime-events.ts"],"names":[],"mappings":"AAEA,OAAO,EAAyB,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACvF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAoB,KAAK,iBAAiB,EAAE,KAAK,qBAAqB,EAA6D,MAAM,4BAA4B,CAAC;AAE7K,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,KAAK,uBAAuB,EAC7B,MAAM,oBAAoB,CAAC;AAE5B,KAAK,kBAAkB,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpD,MAAM,MAAM,yBAAyB,CAAC,MAAM,SAAS,kBAAkB,GAAG,kBAAkB,IAC1F,uBAAuB,CAAC,MAAM,CAAC,CAAC;AAElC,MAAM,MAAM,mBAAmB,CAAC,MAAM,SAAS,kBAAkB,GAAG,kBAAkB,IACpF,YAAY,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;AAE3C,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAC3C,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CAC7C;AAED,KAAK,eAAe,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,iBAAiB,CAAC;AASrE,wBAAgB,yBAAyB,CAAC,MAAM,SAAS,kBAAkB,GAAG,kBAAkB,EAC9F,OAAO,EAAE,oBAAoB,CAAC,kBAAkB,EAAE,MAAM,CAAC,GACxD,mBAAmB,CAAC,MAAM,CAAC,CAK7B;AAED,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,kBAAkB,GACzB,MAAM,CAIR;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,SAAS,kBAAkB,EAAE,GACrC,MAAM,CAQR;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,eAAe,EACtB,SAAS,EAAE,OAAO,KAAK,EACvB,OAAO,GAAE,4BAAiC,GACzC,oBAAoB,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAiB3D;AAED,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,eAAe,EACtB,aAAa,EAAE,OAAO,SAAS,EAC/B,OAAO,GAAE,4BAAiC,GACzC,oBAAoB,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAuF3D"}
|
package/dist/client.d.ts
CHANGED
|
@@ -2,10 +2,26 @@ import { type OperatorSdk } from './_internal/operator/index.js';
|
|
|
2
2
|
import { type PeerSdk } from './_internal/peer/index.js';
|
|
3
3
|
import type { AuthTokenResolver, HeaderResolver, HttpRetryPolicy, StreamReconnectPolicy } from './_internal/transport-http/index.js';
|
|
4
4
|
import { type RemoteRuntimeEvents } from './_internal/transport-realtime/index.js';
|
|
5
|
+
import type { AnyRuntimeEvent } from './_internal/platform/runtime/events/index.js';
|
|
5
6
|
import { type GoodVibesAuthClient, type GoodVibesTokenStore } from './auth.js';
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
/**
|
|
8
|
+
* Discriminated union of all runtime events emitted by the GoodVibes daemon.
|
|
9
|
+
*
|
|
10
|
+
* TypeScript narrows the full event shape (including all payload fields) when
|
|
11
|
+
* matching on the `type` discriminant — no `as` casts required.
|
|
12
|
+
*
|
|
13
|
+
* Each domain's events are accessible via the per-domain feed:
|
|
14
|
+
* ```ts
|
|
15
|
+
* sdk.realtime.viaSse().then(events => {
|
|
16
|
+
* events.agents.on('AGENT_SPAWNING', (payload) => {
|
|
17
|
+
* console.log(payload.agentId, payload.task); // fully typed
|
|
18
|
+
* });
|
|
19
|
+
* });
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @see AnyRuntimeEvent for the full discriminated union type.
|
|
23
|
+
*/
|
|
24
|
+
export type RuntimeEventRecord = AnyRuntimeEvent;
|
|
9
25
|
export interface GoodVibesSdkOptions {
|
|
10
26
|
readonly baseUrl: string;
|
|
11
27
|
readonly authToken?: string | null;
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,WAAW,EAEjB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,KAAK,OAAO,EAEb,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,qBAAqB,EACtB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAIL,KAAK,mBAAmB,EACzB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAGL,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACzB,MAAM,WAAW,CAAC;AAEnB,MAAM,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,WAAW,EAEjB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,KAAK,OAAO,EAEb,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,qBAAqB,EACtB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAIL,KAAK,mBAAmB,EACzB,MAAM,yCAAyC,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AACpF,OAAO,EAGL,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACzB,MAAM,WAAW,CAAC;AAEnB;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,kBAAkB,GAAG,eAAe,CAAC;AAEjD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,YAAY,CAAC,EAAE,iBAAiB,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;IAC1C,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC;IAC/B,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC;IACrC,QAAQ,CAAC,KAAK,CAAC,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,SAAS,CAAC;IAC1C,QAAQ,CAAC,QAAQ,CAAC,EAAE,wBAAwB,CAAC;CAC9C;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,YAAY,CAAC,EAAE,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,qBAAqB,CAAC;IACpD,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CAC7C;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,IAAI,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;IAClD,YAAY,CAAC,aAAa,CAAC,EAAE,OAAO,SAAS,GAAG,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;CACzF;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;CACtC;AA4DD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,mBAAmB,GAC3B,YAAY,CA6Cd"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type { GoodVibesRealtime, GoodVibesSdk, GoodVibesRealtimeOptions, GoodVibesSdkOptions, } from './client.js';
|
|
1
|
+
export type { GoodVibesRealtime, GoodVibesSdk, GoodVibesRealtimeOptions, GoodVibesSdkOptions, RuntimeEventRecord, } from './client.js';
|
|
2
2
|
export { createGoodVibesSdk } from './client.js';
|
|
3
3
|
export type { BrowserTokenStoreOptions, GoodVibesAuthClient, GoodVibesAuthLoginOptions, GoodVibesCurrentAuth, GoodVibesLoginInput, GoodVibesLoginOutput, GoodVibesTokenStore, } from './auth.js';
|
|
4
4
|
export { createBrowserTokenStore, createGoodVibesAuthClient, createMemoryTokenStore, } from './auth.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,iBAAiB,EACjB,YAAY,EACZ,wBAAwB,EACxB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,iBAAiB,EACjB,YAAY,EACZ,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,YAAY,EACV,wBAAwB,EACxB,mBAAmB,EACnB,yBAAyB,EACzB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,sBAAsB,GACvB,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACzD,YAAY,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AACjD,YAAY,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACnD,YAAY,EACV,4BAA4B,EAC5B,uBAAuB,EACvB,8BAA8B,GAC/B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,6BAA6B,EAAE,MAAM,mBAAmB,CAAC;AAClE,YAAY,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACnD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC"}
|