@amigo-ai/platform-sdk 0.24.0 → 0.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/api.md +6 -3
  2. package/dist/core/errors.js +155 -9
  3. package/dist/core/errors.js.map +1 -1
  4. package/dist/core/reconnecting-websocket.js +371 -0
  5. package/dist/core/reconnecting-websocket.js.map +1 -0
  6. package/dist/index.cjs +711 -13
  7. package/dist/index.cjs.map +4 -4
  8. package/dist/index.js +18 -1
  9. package/dist/index.js.map +1 -1
  10. package/dist/index.mjs +711 -13
  11. package/dist/index.mjs.map +4 -4
  12. package/dist/resources/events.js +139 -3
  13. package/dist/resources/events.js.map +1 -1
  14. package/dist/resources/integrations.js +25 -0
  15. package/dist/resources/integrations.js.map +1 -1
  16. package/dist/resources/observers.js +238 -0
  17. package/dist/resources/observers.js.map +1 -0
  18. package/dist/types/core/errors.d.ts +93 -1
  19. package/dist/types/core/errors.d.ts.map +1 -1
  20. package/dist/types/core/reconnecting-websocket.d.ts +156 -0
  21. package/dist/types/core/reconnecting-websocket.d.ts.map +1 -0
  22. package/dist/types/generated/api.d.ts +686 -113
  23. package/dist/types/generated/api.d.ts.map +1 -1
  24. package/dist/types/index.d.cts +42 -2
  25. package/dist/types/index.d.cts.map +1 -1
  26. package/dist/types/index.d.ts +42 -2
  27. package/dist/types/index.d.ts.map +1 -1
  28. package/dist/types/resources/events.d.ts +33 -0
  29. package/dist/types/resources/events.d.ts.map +1 -1
  30. package/dist/types/resources/functions.d.ts.map +1 -1
  31. package/dist/types/resources/integrations.d.ts +33 -0
  32. package/dist/types/resources/integrations.d.ts.map +1 -1
  33. package/dist/types/resources/metrics.d.ts.map +1 -1
  34. package/dist/types/resources/observers.d.ts +148 -0
  35. package/dist/types/resources/observers.d.ts.map +1 -0
  36. package/dist/types/resources/operators.d.ts.map +1 -1
  37. package/dist/types/resources/settings.d.ts.map +1 -1
  38. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/core/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/core/errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,156 @@
1
+ /**
2
+ * Reconnecting WebSocket primitive shared by the SDK's WS-based realtime
3
+ * helpers (text-stream, session-connect, observer).
4
+ *
5
+ * The platform exposes three workspace-scoped WebSocket surfaces with similar
6
+ * lifecycle requirements:
7
+ *
8
+ * * Resume on transient drops with exponential backoff + full jitter
9
+ * * Treat 4001 (client error) and 4403 (auth) close codes as terminal
10
+ * * Treat 4029 (rate limit / cap) as terminal-but-retryable on a slow timer
11
+ * * Watchdog the connection: if no message arrives within an idle window,
12
+ * the upstream is dead even if the TCP socket has not closed; force a
13
+ * reconnect
14
+ * * Surface every typed message through ``onMessage`` and every state
15
+ * transition through ``onStateChange``
16
+ *
17
+ * Before this primitive existed, every consumer (developer-console
18
+ * useStreamSession, useCallObserver, agent-engineering scripts) re-implemented
19
+ * the loop with subtle bugs (different idle thresholds, missing retry budget,
20
+ * no terminal-code handling). This module is the single canonical
21
+ * implementation; resource helpers compose it with their own message parsers
22
+ * and protocol details.
23
+ *
24
+ * @see ReconnectingWebSocket
25
+ * @see EventsResource for the analogous SSE-based helper
26
+ */
27
+ /** Lifecycle states reported via {@link ReconnectingWebSocketOptions.onStateChange}. */
28
+ export type ReconnectingWebSocketState = 'connecting' | 'open' | 'closing' | 'closed' | 'reconnecting' | 'terminal';
29
+ /** Reasons surfaced to {@link ReconnectingWebSocketOptions.onError} on a terminal close. */
30
+ export type ReconnectingWebSocketErrorReason = 'auth' | 'rate_limited' | 'client_error' | 'server_error' | 'reconnect_budget_exhausted' | 'aborted' | 'idle_watchdog' | 'open_failed' | 'unknown';
31
+ /** Structured terminal error surfaced to consumers. */
32
+ export declare class ReconnectingWebSocketError extends Error {
33
+ readonly reason: ReconnectingWebSocketErrorReason;
34
+ readonly closeCode: number | undefined;
35
+ readonly closeReason: string | undefined;
36
+ readonly attempts: number;
37
+ constructor(message: string, reason: ReconnectingWebSocketErrorReason, closeCode: number | undefined, closeReason: string | undefined, attempts: number);
38
+ }
39
+ /**
40
+ * Constructor for the underlying WebSocket. Defaults to the global
41
+ * ``WebSocket`` (browsers, Bun, Deno, Node 22+ via global) if available.
42
+ *
43
+ * Pass an explicit factory in environments without a global (older Node) or
44
+ * for tests that swap in a mock.
45
+ */
46
+ export type WebSocketFactory = (url: string, protocols?: string | string[]) => WebSocket;
47
+ /** Options for {@link ReconnectingWebSocket}. */
48
+ export interface ReconnectingWebSocketOptions {
49
+ /** Target ws:// or wss:// URL. */
50
+ url: string;
51
+ /**
52
+ * Optional WebSocket subprotocols. The platform's auth scheme passes the
53
+ * bearer token here (``['auth', token]``) so it never appears in the URL.
54
+ */
55
+ protocols?: string | string[];
56
+ /**
57
+ * Initial backoff delay (ms). Doubles with full jitter on each successive
58
+ * failure up to ``maxDelayMs``. Default ``1_000``.
59
+ */
60
+ initialDelayMs?: number;
61
+ /** Cap on the reconnect backoff delay (ms). Default ``30_000``. */
62
+ maxDelayMs?: number;
63
+ /**
64
+ * Maximum number of reconnect attempts before giving up. Default ``10``.
65
+ * Set to ``Infinity`` to retry forever (rely on AbortSignal for shutdown).
66
+ */
67
+ maxReconnects?: number;
68
+ /**
69
+ * Idle watchdog (ms). If no message arrives within this window the
70
+ * connection is considered dead and is force-closed; the reconnect loop
71
+ * then handles the rebuild. Default ``45_000`` (matches the longest
72
+ * platform endpoint heartbeat). Set to ``0`` to disable.
73
+ */
74
+ idleTimeoutMs?: number;
75
+ /**
76
+ * Cancellation signal. Aborting the signal closes the underlying socket
77
+ * and stops the reconnect loop. The ``done`` promise resolves once the
78
+ * teardown completes.
79
+ */
80
+ signal?: AbortSignal;
81
+ /**
82
+ * Optional WebSocket factory. Defaults to ``globalThis.WebSocket`` if
83
+ * available; throws at first connect attempt otherwise.
84
+ */
85
+ webSocketFactory?: WebSocketFactory;
86
+ /**
87
+ * Invoked when the underlying socket transitions states. Mostly useful
88
+ * for surfacing reconnects to the UI (e.g., "Reconnecting…" banner).
89
+ */
90
+ onStateChange?: (state: ReconnectingWebSocketState) => void;
91
+ /**
92
+ * Invoked once per inbound frame. ``MessageEvent.data`` is delivered raw
93
+ * — consumers parse JSON / binary themselves.
94
+ */
95
+ onMessage: (event: MessageEvent) => void;
96
+ /**
97
+ * Invoked just before each reconnect attempt with the 1-based attempt
98
+ * number, the planned delay (ms), and the close code that triggered the
99
+ * reconnect.
100
+ */
101
+ onReconnect?: (info: {
102
+ attempt: number;
103
+ delayMs: number;
104
+ closeCode: number | undefined;
105
+ }) => void;
106
+ /**
107
+ * Invoked exactly once per ``ReconnectingWebSocket`` instance on a
108
+ * terminal failure (consumer-aborted, reconnect budget exhausted, or a
109
+ * close code in the terminal set: 4001 / 4003 / 4403 / 4100 / 1008).
110
+ */
111
+ onError?: (error: ReconnectingWebSocketError) => void;
112
+ }
113
+ /** Handle returned by {@link createReconnectingWebSocket}. */
114
+ export interface ReconnectingWebSocketHandle {
115
+ /**
116
+ * Resolves when the loop has fully stopped (post-abort cleanup complete).
117
+ * Never rejects; consume errors via ``onError``.
118
+ */
119
+ done: Promise<void>;
120
+ /**
121
+ * Send a frame on the currently open socket. Throws if no socket is
122
+ * currently open. Use ``onStateChange`` to gate sends, or buffer in
123
+ * caller code.
124
+ */
125
+ send(data: string | ArrayBufferLike | Blob | ArrayBufferView): void;
126
+ /**
127
+ * Close the connection and stop reconnecting. Equivalent to aborting the
128
+ * caller-supplied signal. Idempotent.
129
+ */
130
+ close(code?: number, reason?: string): void;
131
+ /** Latest known lifecycle state. */
132
+ readonly state: ReconnectingWebSocketState;
133
+ }
134
+ /**
135
+ * Build a managed reconnecting WebSocket.
136
+ *
137
+ * The returned handle is the only public surface; the underlying
138
+ * ``WebSocket`` is held privately so consumers cannot bypass the lifecycle
139
+ * machinery (which would defeat the watchdog and reconnect loop).
140
+ *
141
+ * @example
142
+ * ```ts
143
+ * const handle = createReconnectingWebSocket({
144
+ * url: client.conversations.sessionConnectUrl({ serviceId, entityId }),
145
+ * protocols: sessionConnectAuthProtocols(apiKey),
146
+ * onMessage: (e) => console.log('frame', e.data),
147
+ * onStateChange: (s) => console.log('state', s),
148
+ * onError: (err) => console.error('terminal:', err.reason, err.closeCode),
149
+ * });
150
+ *
151
+ * handle.send(JSON.stringify({ type: 'user_text', text: 'hi' }));
152
+ * await handle.done; // resolves after handle.close() or terminal error
153
+ * ```
154
+ */
155
+ export declare function createReconnectingWebSocket(options: ReconnectingWebSocketOptions): ReconnectingWebSocketHandle;
156
+ //# sourceMappingURL=reconnecting-websocket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reconnecting-websocket.d.ts","sourceRoot":"","sources":["../../../src/core/reconnecting-websocket.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,wFAAwF;AACxF,MAAM,MAAM,0BAA0B,GAClC,YAAY,GACZ,MAAM,GACN,SAAS,GACT,QAAQ,GACR,cAAc,GACd,UAAU,CAAA;AAEd,4FAA4F;AAC5F,MAAM,MAAM,gCAAgC,GACxC,MAAM,GACN,cAAc,GACd,cAAc,GACd,cAAc,GACd,4BAA4B,GAC5B,SAAS,GACT,eAAe,GACf,aAAa,GACb,SAAS,CAAA;AAEb,uDAAuD;AACvD,qBAAa,0BAA2B,SAAQ,KAAK;IACnD,QAAQ,CAAC,MAAM,EAAE,gCAAgC,CAAA;IACjD,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;IACtC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IACxC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;gBAGvB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,gCAAgC,EACxC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,QAAQ,EAAE,MAAM;CASnB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,SAAS,CAAA;AAExF,iDAAiD;AACjD,MAAM,WAAW,4BAA4B;IAC3C,kCAAkC;IAClC,GAAG,EAAE,MAAM,CAAA;IAEX;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAE7B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB,mEAAmE;IACnE,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB;;;;OAIG;IACH,MAAM,CAAC,EAAE,WAAW,CAAA;IAEpB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IAEnC;;;OAGG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,0BAA0B,KAAK,IAAI,CAAA;IAE3D;;;OAGG;IACH,SAAS,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAA;IAExC;;;;OAIG;IACH,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,KAAK,IAAI,CAAA;IAEjG;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,0BAA0B,KAAK,IAAI,CAAA;CACtD;AAED,8DAA8D;AAC9D,MAAM,WAAW,2BAA2B;IAC1C;;;OAGG;IACH,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;IAEnB;;;;OAIG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,GAAG,eAAe,GAAG,IAAI,CAAA;IAEnE;;;OAGG;IACH,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAE3C,oCAAoC;IACpC,QAAQ,CAAC,KAAK,EAAE,0BAA0B,CAAA;CAC3C;AA8BD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,4BAA4B,GACpC,2BAA2B,CAiF7B"}