@pellux/goodvibes-sdk 0.33.38 → 0.34.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/contracts/artifacts/operator-contract.json +1383 -4
- package/dist/events/workflows.d.ts +4 -0
- package/dist/events/workflows.d.ts.map +1 -1
- package/dist/platform/agents/message-bus-core.d.ts +11 -0
- package/dist/platform/agents/message-bus-core.d.ts.map +1 -1
- package/dist/platform/agents/message-bus-core.js +28 -21
- package/dist/platform/agents/orchestrator-runner.d.ts.map +1 -1
- package/dist/platform/agents/orchestrator-runner.js +6 -4
- package/dist/platform/agents/wrfc-config.d.ts.map +1 -1
- package/dist/platform/agents/wrfc-config.js +16 -10
- package/dist/platform/agents/wrfc-controller.d.ts +26 -0
- package/dist/platform/agents/wrfc-controller.d.ts.map +1 -1
- package/dist/platform/agents/wrfc-controller.js +134 -138
- package/dist/platform/agents/wrfc-runtime-events.d.ts +1 -0
- package/dist/platform/agents/wrfc-runtime-events.d.ts.map +1 -1
- package/dist/platform/agents/wrfc-runtime-events.js +4 -1
- package/dist/platform/automation/delivery-manager.d.ts.map +1 -1
- package/dist/platform/automation/delivery-manager.js +1 -6
- package/dist/platform/batch/manager.d.ts.map +1 -1
- package/dist/platform/batch/manager.js +1 -3
- package/dist/platform/channels/policy-manager.d.ts.map +1 -1
- package/dist/platform/channels/policy-manager.js +1 -3
- package/dist/platform/channels/reply-pipeline.d.ts.map +1 -1
- package/dist/platform/channels/reply-pipeline.js +4 -0
- package/dist/platform/config/schema-domain-core.d.ts +1 -1
- package/dist/platform/config/schema-domain-core.d.ts.map +1 -1
- package/dist/platform/config/schema-domain-core.js +12 -12
- package/dist/platform/config/schema-domain-runtime.d.ts +1 -1
- package/dist/platform/config/schema-domain-runtime.d.ts.map +1 -1
- package/dist/platform/config/schema-domain-runtime.js +19 -18
- package/dist/platform/config/schema-domain-surfaces.d.ts +1 -1
- package/dist/platform/config/schema-domain-surfaces.d.ts.map +1 -1
- package/dist/platform/config/schema-domain-surfaces.js +4 -3
- package/dist/platform/config/schema-shared.d.ts +6 -0
- package/dist/platform/config/schema-shared.d.ts.map +1 -1
- package/dist/platform/config/schema-shared.js +21 -1
- package/dist/platform/control-plane/approval-broker.d.ts.map +1 -1
- package/dist/platform/control-plane/approval-broker.js +1 -3
- package/dist/platform/control-plane/method-catalog-calendar.d.ts +9 -0
- package/dist/platform/control-plane/method-catalog-calendar.d.ts.map +1 -0
- package/dist/platform/control-plane/method-catalog-calendar.js +117 -0
- package/dist/platform/control-plane/method-catalog-channels.d.ts.map +1 -1
- package/dist/platform/control-plane/method-catalog-channels.js +174 -0
- package/dist/platform/control-plane/method-catalog-email.d.ts +9 -0
- package/dist/platform/control-plane/method-catalog-email.d.ts.map +1 -0
- package/dist/platform/control-plane/method-catalog-email.js +101 -0
- package/dist/platform/control-plane/method-catalog.d.ts.map +1 -1
- package/dist/platform/control-plane/method-catalog.js +4 -0
- package/dist/platform/control-plane/session-broker-state.d.ts.map +1 -1
- package/dist/platform/control-plane/session-broker-state.js +1 -3
- package/dist/platform/core/compaction-sections.d.ts +5 -1
- package/dist/platform/core/compaction-sections.d.ts.map +1 -1
- package/dist/platform/core/compaction-sections.js +73 -66
- package/dist/platform/core/context-compaction.d.ts.map +1 -1
- package/dist/platform/core/context-compaction.js +9 -16
- package/dist/platform/core/orchestrator-context-runtime.d.ts +2 -2
- package/dist/platform/core/orchestrator-context-runtime.d.ts.map +1 -1
- package/dist/platform/core/orchestrator-context-runtime.js +24 -21
- package/dist/platform/core/orchestrator-tool-runtime.d.ts.map +1 -1
- package/dist/platform/core/orchestrator-tool-runtime.js +2 -1
- package/dist/platform/core/session-lineage.d.ts +2 -5
- package/dist/platform/core/session-lineage.d.ts.map +1 -1
- package/dist/platform/core/session-lineage.js +4 -16
- package/dist/platform/core/wrfc-routing.d.ts.map +1 -1
- package/dist/platform/core/wrfc-routing.js +1 -3
- package/dist/platform/daemon/http/mcp-routes.d.ts.map +1 -1
- package/dist/platform/daemon/http/mcp-routes.js +1 -3
- package/dist/platform/daemon/http/openai-compatible-routes.d.ts.map +1 -1
- package/dist/platform/daemon/http/openai-compatible-routes.js +1 -3
- package/dist/platform/daemon/http/runtime-routes.d.ts.map +1 -1
- package/dist/platform/daemon/http/runtime-routes.js +1 -3
- package/dist/platform/hooks/runners/http.d.ts.map +1 -1
- package/dist/platform/hooks/runners/http.js +9 -19
- package/dist/platform/integrations/webhooks.js +2 -11
- package/dist/platform/knowledge/semantic/self-improvement.d.ts.map +1 -1
- package/dist/platform/knowledge/semantic/self-improvement.js +2 -21
- package/dist/platform/mcp/client.d.ts.map +1 -1
- package/dist/platform/mcp/client.js +1 -3
- package/dist/platform/mcp/config.d.ts.map +1 -1
- package/dist/platform/mcp/config.js +1 -3
- package/dist/platform/media/builtin-generation-providers.d.ts.map +1 -1
- package/dist/platform/media/builtin-generation-providers.js +1 -6
- package/dist/platform/providers/anthropic-compat.d.ts.map +1 -1
- package/dist/platform/providers/anthropic-compat.js +11 -131
- package/dist/platform/providers/anthropic-sdk-provider.d.ts.map +1 -1
- package/dist/platform/providers/anthropic-sdk-provider.js +8 -42
- package/dist/platform/providers/anthropic-sse-assembler.d.ts +80 -0
- package/dist/platform/providers/anthropic-sse-assembler.d.ts.map +1 -0
- package/dist/platform/providers/anthropic-sse-assembler.js +146 -0
- package/dist/platform/providers/anthropic-stream.d.ts +30 -0
- package/dist/platform/providers/anthropic-stream.d.ts.map +1 -0
- package/dist/platform/providers/anthropic-stream.js +44 -0
- package/dist/platform/providers/anthropic-vertex.d.ts.map +1 -1
- package/dist/platform/providers/anthropic-vertex.js +1 -3
- package/dist/platform/providers/anthropic.d.ts.map +1 -1
- package/dist/platform/providers/anthropic.js +15 -151
- package/dist/platform/providers/capabilities.d.ts.map +1 -1
- package/dist/platform/providers/capabilities.js +11 -7
- package/dist/platform/providers/context-discovery.d.ts.map +1 -1
- package/dist/platform/providers/context-discovery.js +9 -16
- package/dist/platform/providers/context-window-fallback.d.ts +24 -0
- package/dist/platform/providers/context-window-fallback.d.ts.map +1 -0
- package/dist/platform/providers/context-window-fallback.js +48 -0
- package/dist/platform/providers/gemini.d.ts.map +1 -1
- package/dist/platform/providers/gemini.js +3 -6
- package/dist/platform/providers/json-ttl-cache.d.ts +35 -0
- package/dist/platform/providers/json-ttl-cache.d.ts.map +1 -0
- package/dist/platform/providers/json-ttl-cache.js +52 -0
- package/dist/platform/providers/llama-cpp.d.ts.map +1 -1
- package/dist/platform/providers/llama-cpp.js +2 -23
- package/dist/platform/providers/lm-studio-helpers.d.ts +1 -1
- package/dist/platform/providers/lm-studio-helpers.d.ts.map +1 -1
- package/dist/platform/providers/lm-studio-helpers.js +5 -25
- package/dist/platform/providers/model-benchmarks.d.ts.map +1 -1
- package/dist/platform/providers/model-benchmarks.js +11 -34
- package/dist/platform/providers/model-catalog-cache.d.ts.map +1 -1
- package/dist/platform/providers/model-catalog-cache.js +15 -38
- package/dist/platform/providers/model-catalog-synthetic.d.ts.map +1 -1
- package/dist/platform/providers/model-catalog-synthetic.js +3 -2
- package/dist/platform/providers/model-catalog.d.ts.map +1 -1
- package/dist/platform/providers/model-catalog.js +3 -2
- package/dist/platform/providers/model-limits.d.ts.map +1 -1
- package/dist/platform/providers/model-limits.js +18 -42
- package/dist/platform/providers/ollama.d.ts.map +1 -1
- package/dist/platform/providers/ollama.js +3 -24
- package/dist/platform/providers/openai-codex.d.ts.map +1 -1
- package/dist/platform/providers/openai-codex.js +8 -9
- package/dist/platform/providers/openai-compat.d.ts.map +1 -1
- package/dist/platform/providers/openai-compat.js +13 -40
- package/dist/platform/providers/openai-stream-helpers.d.ts +62 -0
- package/dist/platform/providers/openai-stream-helpers.d.ts.map +1 -0
- package/dist/platform/providers/openai-stream-helpers.js +73 -0
- package/dist/platform/providers/openai.d.ts.map +1 -1
- package/dist/platform/providers/openai.js +13 -41
- package/dist/platform/providers/provider-error.d.ts +17 -0
- package/dist/platform/providers/provider-error.d.ts.map +1 -0
- package/dist/platform/providers/provider-error.js +33 -0
- package/dist/platform/providers/provider-stop-reason.d.ts +15 -0
- package/dist/platform/providers/provider-stop-reason.d.ts.map +1 -0
- package/dist/platform/providers/provider-stop-reason.js +15 -0
- package/dist/platform/providers/sse-line-buffer.d.ts +13 -0
- package/dist/platform/providers/sse-line-buffer.d.ts.map +1 -0
- package/dist/platform/providers/sse-line-buffer.js +23 -0
- package/dist/platform/providers/tool-formats.d.ts +5 -0
- package/dist/platform/providers/tool-formats.d.ts.map +1 -1
- package/dist/platform/providers/tool-formats.js +14 -0
- package/dist/platform/runtime/bootstrap-runtime-events.d.ts.map +1 -1
- package/dist/platform/runtime/bootstrap-runtime-events.js +6 -0
- package/dist/platform/runtime/bootstrap-services.d.ts.map +1 -1
- package/dist/platform/runtime/bootstrap-services.js +4 -5
- package/dist/platform/runtime/emitters/workflows.d.ts +4 -0
- package/dist/platform/runtime/emitters/workflows.d.ts.map +1 -1
- package/dist/platform/runtime/emitters/workflows.js +3 -0
- package/dist/platform/runtime/remote/distributed-runtime-store.d.ts.map +1 -1
- package/dist/platform/runtime/remote/distributed-runtime-store.js +1 -3
- package/dist/platform/runtime/retention/pruner.js +2 -5
- package/dist/platform/runtime/store/helpers/reducers/lifecycle.d.ts.map +1 -1
- package/dist/platform/runtime/store/helpers/reducers/lifecycle.js +15 -14
- package/dist/platform/runtime/store/helpers/reducers/shared.d.ts +6 -0
- package/dist/platform/runtime/store/helpers/reducers/shared.d.ts.map +1 -1
- package/dist/platform/runtime/store/helpers/reducers/shared.js +8 -1
- package/dist/platform/runtime/telemetry/exporters/queue.d.ts.map +1 -1
- package/dist/platform/runtime/telemetry/exporters/queue.js +1 -7
- package/dist/platform/runtime/transports/http-helpers.d.ts +0 -1
- package/dist/platform/runtime/transports/http-helpers.d.ts.map +1 -1
- package/dist/platform/runtime/transports/http-helpers.js +1 -3
- package/dist/platform/runtime/ui-read-model-helpers.d.ts +2 -0
- package/dist/platform/runtime/ui-read-model-helpers.d.ts.map +1 -1
- package/dist/platform/runtime/ui-read-model-helpers.js +8 -0
- package/dist/platform/runtime/ui-read-models-core.d.ts.map +1 -1
- package/dist/platform/runtime/ui-read-models-core.js +3 -5
- package/dist/platform/runtime/ui-read-models-observability-remote.d.ts.map +1 -1
- package/dist/platform/runtime/ui-read-models-observability-remote.js +2 -4
- package/dist/platform/runtime/ui-read-models-operations.d.ts.map +1 -1
- package/dist/platform/runtime/ui-read-models-operations.js +8 -26
- package/dist/platform/scheduler/scheduler.d.ts.map +1 -1
- package/dist/platform/scheduler/scheduler.js +1 -3
- package/dist/platform/tools/exec/runtime.d.ts.map +1 -1
- package/dist/platform/tools/exec/runtime.js +1 -7
- package/dist/platform/tools/fetch/runtime.d.ts.map +1 -1
- package/dist/platform/tools/fetch/runtime.js +9 -20
- package/dist/platform/tools/shared/process-manager.d.ts.map +1 -1
- package/dist/platform/tools/shared/process-manager.js +1 -6
- package/dist/platform/utils/concurrency.d.ts +1 -0
- package/dist/platform/utils/concurrency.d.ts.map +1 -1
- package/dist/platform/utils/concurrency.js +1 -0
- package/dist/platform/utils/error-display.d.ts +9 -0
- package/dist/platform/utils/error-display.d.ts.map +1 -1
- package/dist/platform/utils/error-display.js +11 -0
- package/dist/platform/utils/fetch-with-timeout.d.ts +22 -2
- package/dist/platform/utils/fetch-with-timeout.d.ts.map +1 -1
- package/dist/platform/utils/fetch-with-timeout.js +33 -15
- package/dist/platform/utils/record-coerce.d.ts +5 -0
- package/dist/platform/utils/record-coerce.d.ts.map +1 -1
- package/dist/platform/utils/record-coerce.js +7 -0
- package/dist/platform/utils/retry.d.ts.map +1 -1
- package/dist/platform/utils/retry.js +2 -4
- package/dist/platform/version.js +1 -1
- package/package.json +9 -9
|
@@ -177,6 +177,17 @@ function extractErrorMessage(error) {
|
|
|
177
177
|
}
|
|
178
178
|
return String(error);
|
|
179
179
|
}
|
|
180
|
+
/**
|
|
181
|
+
* redactedErrorMessage — extracts and redacts a human-readable message from any thrown value.
|
|
182
|
+
*
|
|
183
|
+
* Use for user-facing error output where the raw message should never leak
|
|
184
|
+
* bearer tokens, API keys, or other sensitive data. Do NOT use for logger
|
|
185
|
+
* fields, structured result/error fields, or diagnostic context — use
|
|
186
|
+
* `summarizeError` or the structured `normalizeError` for those.
|
|
187
|
+
*/
|
|
188
|
+
export function redactedErrorMessage(error) {
|
|
189
|
+
return redactSensitiveData(extractErrorMessage(error));
|
|
190
|
+
}
|
|
180
191
|
export function normalizeError(error, options = {}) {
|
|
181
192
|
// Redact Bearer tokens and API keys before any further processing.
|
|
182
193
|
const rawMessage = redactSensitiveData(extractErrorMessage(error));
|
|
@@ -15,7 +15,25 @@ export declare function sanitizeUrlForLog(url: string | URL | Request): string;
|
|
|
15
15
|
*/
|
|
16
16
|
export declare function instrumentedFetch(url: string | URL | Request, init?: RequestInit): Promise<Response>;
|
|
17
17
|
/**
|
|
18
|
-
*
|
|
18
|
+
* createTimeoutController — creates an AbortController that fires after `timeoutMs`.
|
|
19
|
+
*
|
|
20
|
+
* When `parentSignal` is provided the returned signal is merged with it via
|
|
21
|
+
* AbortSignal.any so whichever fires first wins.
|
|
22
|
+
*
|
|
23
|
+
* Uses the faster `AbortSignal.timeout` fast-path when available and no parent
|
|
24
|
+
* signal needs to be merged.
|
|
25
|
+
*
|
|
26
|
+
* @param timeoutMs - Milliseconds before aborting.
|
|
27
|
+
* @param parentSignal - Optional caller signal to merge with the timeout.
|
|
28
|
+
* @returns `{ signal, dispose }` — call `dispose()` in a `finally` block to
|
|
29
|
+
* clear the underlying timer and avoid keeping the event loop alive.
|
|
30
|
+
*/
|
|
31
|
+
export declare function createTimeoutController(timeoutMs: number, parentSignal?: AbortSignal): {
|
|
32
|
+
readonly signal: AbortSignal;
|
|
33
|
+
dispose(): void;
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* fetchWithTimeout — wraps a fetch implementation with an AbortController timeout.
|
|
19
37
|
*
|
|
20
38
|
* If the caller passes a signal that is already aborted, the request is
|
|
21
39
|
* rejected immediately. When both a caller signal and the internal timeout
|
|
@@ -29,6 +47,8 @@ export declare function instrumentedFetch(url: string | URL | Request, init?: Re
|
|
|
29
47
|
* @param url - The URL or Request to fetch.
|
|
30
48
|
* @param init - Standard RequestInit (optional).
|
|
31
49
|
* @param timeoutMs - Milliseconds before aborting. Default: 30 000.
|
|
50
|
+
* @param fetchImpl - Fetch implementation to use. Defaults to global `fetch`.
|
|
51
|
+
* Pass `instrumentedFetch` to include OUTBOUND_HTTP logging.
|
|
32
52
|
*/
|
|
33
|
-
export declare function fetchWithTimeout(url: string | URL | Request, init?: RequestInit, timeoutMs?: number): Promise<Response>;
|
|
53
|
+
export declare function fetchWithTimeout(url: string | URL | Request, init?: RequestInit, timeoutMs?: number, fetchImpl?: (url: string | URL | Request, init?: RequestInit) => Promise<Response>): Promise<Response>;
|
|
34
54
|
//# sourceMappingURL=fetch-with-timeout.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-with-timeout.d.ts","sourceRoot":"","sources":["../../../src/platform/utils/fetch-with-timeout.ts"],"names":[],"mappings":"AAWA;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,GAAG,OAAO,GAAG,MAAM,CAarE;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,MAAM,GAAG,GAAG,GAAG,OAAO,EAC3B,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,QAAQ,CAAC,CAkBnB;AAED
|
|
1
|
+
{"version":3,"file":"fetch-with-timeout.d.ts","sourceRoot":"","sources":["../../../src/platform/utils/fetch-with-timeout.ts"],"names":[],"mappings":"AAWA;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,GAAG,OAAO,GAAG,MAAM,CAarE;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,MAAM,GAAG,GAAG,GAAG,OAAO,EAC3B,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,QAAQ,CAAC,CAkBnB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,WAAW,GACzB;IAAE,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAAC,OAAO,IAAI,IAAI,CAAA;CAAE,CAcnD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,GAAG,GAAG,GAAG,OAAO,EAC3B,IAAI,CAAC,EAAE,WAAW,EAClB,SAAS,SAAS,EAClB,SAAS,GAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,GAAG,OAAO,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAS,GACxF,OAAO,CAAC,QAAQ,CAAC,CAQnB"}
|
|
@@ -57,7 +57,33 @@ export async function instrumentedFetch(url, init) {
|
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
59
|
/**
|
|
60
|
-
*
|
|
60
|
+
* createTimeoutController — creates an AbortController that fires after `timeoutMs`.
|
|
61
|
+
*
|
|
62
|
+
* When `parentSignal` is provided the returned signal is merged with it via
|
|
63
|
+
* AbortSignal.any so whichever fires first wins.
|
|
64
|
+
*
|
|
65
|
+
* Uses the faster `AbortSignal.timeout` fast-path when available and no parent
|
|
66
|
+
* signal needs to be merged.
|
|
67
|
+
*
|
|
68
|
+
* @param timeoutMs - Milliseconds before aborting.
|
|
69
|
+
* @param parentSignal - Optional caller signal to merge with the timeout.
|
|
70
|
+
* @returns `{ signal, dispose }` — call `dispose()` in a `finally` block to
|
|
71
|
+
* clear the underlying timer and avoid keeping the event loop alive.
|
|
72
|
+
*/
|
|
73
|
+
export function createTimeoutController(timeoutMs, parentSignal) {
|
|
74
|
+
if (typeof AbortSignal.timeout === 'function' && !parentSignal) {
|
|
75
|
+
return { signal: AbortSignal.timeout(timeoutMs), dispose: () => { } };
|
|
76
|
+
}
|
|
77
|
+
const controller = new AbortController();
|
|
78
|
+
const timer = setTimeout(() => controller.abort(new DOMException('Request timed out', 'TimeoutError')), timeoutMs);
|
|
79
|
+
timer.unref?.();
|
|
80
|
+
const signal = parentSignal
|
|
81
|
+
? AbortSignal.any([parentSignal, controller.signal])
|
|
82
|
+
: controller.signal;
|
|
83
|
+
return { signal, dispose: () => clearTimeout(timer) };
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* fetchWithTimeout — wraps a fetch implementation with an AbortController timeout.
|
|
61
87
|
*
|
|
62
88
|
* If the caller passes a signal that is already aborted, the request is
|
|
63
89
|
* rejected immediately. When both a caller signal and the internal timeout
|
|
@@ -71,24 +97,16 @@ export async function instrumentedFetch(url, init) {
|
|
|
71
97
|
* @param url - The URL or Request to fetch.
|
|
72
98
|
* @param init - Standard RequestInit (optional).
|
|
73
99
|
* @param timeoutMs - Milliseconds before aborting. Default: 30 000.
|
|
100
|
+
* @param fetchImpl - Fetch implementation to use. Defaults to global `fetch`.
|
|
101
|
+
* Pass `instrumentedFetch` to include OUTBOUND_HTTP logging.
|
|
74
102
|
*/
|
|
75
|
-
export async function fetchWithTimeout(url, init, timeoutMs = 30_000) {
|
|
76
|
-
const controller = new AbortController();
|
|
77
|
-
const timer = setTimeout(() => controller.abort(new DOMException('Request timed out', 'TimeoutError')), timeoutMs);
|
|
78
|
-
timer.unref?.();
|
|
79
|
-
let signal;
|
|
103
|
+
export async function fetchWithTimeout(url, init, timeoutMs = 30_000, fetchImpl = fetch) {
|
|
80
104
|
const callerSignal = init?.signal;
|
|
81
|
-
|
|
82
|
-
// Merge caller signal + our timeout: first one to fire wins
|
|
83
|
-
signal = AbortSignal.any([callerSignal, controller.signal]);
|
|
84
|
-
}
|
|
85
|
-
else {
|
|
86
|
-
signal = controller.signal;
|
|
87
|
-
}
|
|
105
|
+
const { signal, dispose } = createTimeoutController(timeoutMs, callerSignal);
|
|
88
106
|
try {
|
|
89
|
-
return await
|
|
107
|
+
return await fetchImpl(url, { ...init, signal });
|
|
90
108
|
}
|
|
91
109
|
finally {
|
|
92
|
-
|
|
110
|
+
dispose();
|
|
93
111
|
}
|
|
94
112
|
}
|
|
@@ -8,4 +8,9 @@
|
|
|
8
8
|
* satisfy TypeScript's type system at the generic-dispatch boundary.
|
|
9
9
|
*/
|
|
10
10
|
export declare function toRecord(value: unknown): Record<string, unknown>;
|
|
11
|
+
/**
|
|
12
|
+
* Type guard: returns true iff `value` is a plain object (non-null, non-array).
|
|
13
|
+
* Use this in place of the commonly hand-rolled `typeof x === 'object' && x !== null && !Array.isArray(x)`.
|
|
14
|
+
*/
|
|
15
|
+
export declare function isRecord(value: unknown): value is Record<string, unknown>;
|
|
11
16
|
//# sourceMappingURL=record-coerce.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"record-coerce.d.ts","sourceRoot":"","sources":["../../../src/platform/utils/record-coerce.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEhE"}
|
|
1
|
+
{"version":3,"file":"record-coerce.d.ts","sourceRoot":"","sources":["../../../src/platform/utils/record-coerce.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEhE;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzE"}
|
|
@@ -10,3 +10,10 @@
|
|
|
10
10
|
export function toRecord(value) {
|
|
11
11
|
return value;
|
|
12
12
|
}
|
|
13
|
+
/**
|
|
14
|
+
* Type guard: returns true iff `value` is a plain object (non-null, non-array).
|
|
15
|
+
* Use this in place of the commonly hand-rolled `typeof x === 'object' && x !== null && !Array.isArray(x)`.
|
|
16
|
+
*/
|
|
17
|
+
export function isRecord(value) {
|
|
18
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
19
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../../src/platform/utils/retry.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../../src/platform/utils/retry.ts"],"names":[],"mappings":"AAKA,kEAAkE;AAClE,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;CACpB;AAQD,kFAAkF;AAClF,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,CAOzE;AAED,8EAA8E;AAC9E,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAOjE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAaxD;AASD;;;;;;;GAOG;AACH,wBAAsB,SAAS,CAAC,CAAC,EAC/B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GACjE,OAAO,CAAC,CAAC,CAAC,CAyBZ"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { randomInt } from 'node:crypto';
|
|
2
2
|
import { AppError, RETRYABLE_STATUS_CODES } from '../types/errors.js';
|
|
3
3
|
import { summarizeError } from './error-display.js';
|
|
4
|
+
import { sleep } from './concurrency.js';
|
|
4
5
|
const DEFAULT_CONFIG = {
|
|
5
6
|
maxRetries: 3,
|
|
6
7
|
initialDelayMs: 1000,
|
|
@@ -70,10 +71,7 @@ export async function withRetry(fn, config, onRetry) {
|
|
|
70
71
|
}
|
|
71
72
|
const delayMs = computeDelay(attempt, cfg.initialDelayMs, cfg.maxDelayMs);
|
|
72
73
|
onRetry?.(attempt + 1, lastError, delayMs);
|
|
73
|
-
await
|
|
74
|
-
const timer = setTimeout(resolve, delayMs);
|
|
75
|
-
timer.unref?.();
|
|
76
|
-
});
|
|
74
|
+
await sleep(delayMs);
|
|
77
75
|
}
|
|
78
76
|
}
|
|
79
77
|
throw lastError;
|
package/dist/platform/version.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { readFileSync } from 'node:fs';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
|
-
let version = '0.
|
|
3
|
+
let version = '0.34.1';
|
|
4
4
|
try {
|
|
5
5
|
const pkg = JSON.parse(readFileSync(join(import.meta.dir, '..', '..', 'package.json'), 'utf-8'));
|
|
6
6
|
version = pkg.version ?? version;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pellux/goodvibes-sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.34.1",
|
|
4
4
|
"description": "TypeScript SDK for building GoodVibes operator, peer, web, mobile, and daemon-connected apps with typed contracts, auth, realtime events, and transport layers.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"goodvibes",
|
|
@@ -453,14 +453,14 @@
|
|
|
453
453
|
"sideEffects": false,
|
|
454
454
|
"type": "module",
|
|
455
455
|
"dependencies": {
|
|
456
|
-
"@pellux/goodvibes-contracts": "0.
|
|
457
|
-
"@pellux/goodvibes-daemon-sdk": "0.
|
|
458
|
-
"@pellux/goodvibes-errors": "0.
|
|
459
|
-
"@pellux/goodvibes-operator-sdk": "0.
|
|
460
|
-
"@pellux/goodvibes-peer-sdk": "0.
|
|
461
|
-
"@pellux/goodvibes-transport-core": "0.
|
|
462
|
-
"@pellux/goodvibes-transport-http": "0.
|
|
463
|
-
"@pellux/goodvibes-transport-realtime": "0.
|
|
456
|
+
"@pellux/goodvibes-contracts": "0.34.1",
|
|
457
|
+
"@pellux/goodvibes-daemon-sdk": "0.34.1",
|
|
458
|
+
"@pellux/goodvibes-errors": "0.34.1",
|
|
459
|
+
"@pellux/goodvibes-operator-sdk": "0.34.1",
|
|
460
|
+
"@pellux/goodvibes-peer-sdk": "0.34.1",
|
|
461
|
+
"@pellux/goodvibes-transport-core": "0.34.1",
|
|
462
|
+
"@pellux/goodvibes-transport-http": "0.34.1",
|
|
463
|
+
"@pellux/goodvibes-transport-realtime": "0.34.1"
|
|
464
464
|
},
|
|
465
465
|
"optionalDependencies": {
|
|
466
466
|
"@agentclientprotocol/sdk": "^0.21.0",
|