@compose-market/sdk 0.2.0 → 0.3.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 (44) hide show
  1. package/CHANGELOG.md +30 -9
  2. package/dist/events.d.ts +75 -0
  3. package/dist/events.d.ts.map +1 -0
  4. package/dist/events.js +68 -0
  5. package/dist/events.js.map +1 -0
  6. package/dist/http.d.ts +1 -1
  7. package/dist/http.d.ts.map +1 -1
  8. package/dist/http.js +4 -4
  9. package/dist/http.js.map +1 -1
  10. package/dist/index.d.ts +108 -6
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +221 -18
  13. package/dist/index.js.map +1 -1
  14. package/dist/resources/inference.d.ts +29 -15
  15. package/dist/resources/inference.d.ts.map +1 -1
  16. package/dist/resources/inference.js +85 -55
  17. package/dist/resources/inference.js.map +1 -1
  18. package/dist/resources/instrumentation.d.ts +28 -0
  19. package/dist/resources/instrumentation.d.ts.map +1 -0
  20. package/dist/resources/instrumentation.js +43 -0
  21. package/dist/resources/instrumentation.js.map +1 -0
  22. package/dist/resources/keys.d.ts +4 -0
  23. package/dist/resources/keys.d.ts.map +1 -1
  24. package/dist/resources/keys.js +15 -5
  25. package/dist/resources/keys.js.map +1 -1
  26. package/dist/resources/session-events.d.ts +46 -0
  27. package/dist/resources/session-events.d.ts.map +1 -0
  28. package/dist/resources/session-events.js +199 -0
  29. package/dist/resources/session-events.js.map +1 -0
  30. package/dist/storage.d.ts +27 -0
  31. package/dist/storage.d.ts.map +1 -0
  32. package/dist/storage.js +46 -0
  33. package/dist/storage.js.map +1 -0
  34. package/dist/streaming/budget.d.ts +22 -0
  35. package/dist/streaming/budget.d.ts.map +1 -0
  36. package/dist/streaming/budget.js +40 -0
  37. package/dist/streaming/budget.js.map +1 -0
  38. package/dist/types/index.d.ts +43 -0
  39. package/dist/types/index.d.ts.map +1 -1
  40. package/dist/version.d.ts +9 -0
  41. package/dist/version.d.ts.map +1 -0
  42. package/dist/version.js +9 -0
  43. package/dist/version.js.map +1 -0
  44. package/package.json +6 -5
package/CHANGELOG.md CHANGED
@@ -1,5 +1,35 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.3.0
4
+
5
+ Live session state surfaces all the way to the caller. First-party parity milestone.
6
+
7
+ ### Highlights
8
+
9
+ - **`sdk.events` typed event bus.** Listeners for `budget`, `sessionInvalid`, `sessionActive`, `sessionExpired`, `receipt`. Dispatched automatically on every billable response and every SSE session-event frame. Returns disposers; `.once(...)` fires exactly once.
10
+ - **Live session budget on every response.** `ComposeCompletion<T>` grows `budget` and `sessionInvalidReason` fields sourced from the `x-session-budget-*` / `x-compose-session-invalid` response headers. No more side-channel fetches to `/api/session` to render a session indicator.
11
+ - **SSE session events resource.** `sdk.session.subscribe({ signal })` streams `session-active` / `session-expired` frames from `/api/session/events`. Auto-reconnects with jittered backoff. Wallet context defaults to `sdk.wallets.current()`.
12
+ - **Persistent token storage.** New `storage` + `tokenScope` constructor options. Browsers auto-use `localStorage`; Node callers pass an explicit adapter. Tokens are keyed by `(address, chainId)` so multi-wallet devices never collide. A fresh `ComposeSDK` instance with the same wallet re-hydrates the token without a network call.
13
+ - **`keys.get` / `keys.revoke` now attach `x-session-user-address` + `x-chain-id`.** Matches the canonical header contract the rest of the SDK uses.
14
+ - **Single source of truth for version.** `sdk.version` reads from `package.json` via a build-time generated `src/version.ts`. No more duplicated constants anywhere.
15
+ - **`userAddress` is the canonical field name** across the SDK (was `walletAddress` in internal types); aligns with the header `x-session-user-address` and the Compose Market backend.
16
+
17
+ ### New tests
18
+
19
+ - `sdk.events.test.ts` — budget / receipt / sessionInvalid emission, disposer, once semantics, storage persistence, version agreement.
20
+ - `sdk.session-events.test.ts` — SSE iterator + event-bus bridge for `session-active` / `session-expired`, wallet-context guards.
21
+
22
+ ### Breaking changes from 0.2.0
23
+
24
+ - `HeaderBagInput.walletAddress` renamed to `HeaderBagInput.userAddress`.
25
+ - `ComposeCallOptions.walletAddress` renamed to `ComposeCallOptions.userAddress`.
26
+ - `ComposeCompletion<T>` now includes `budget` and `sessionInvalidReason`. Existing consumers that destructured `{ data, receipt, requestId, response }` are unaffected; consumers that did `const completion: ComposeCompletion<T> = ...` and then structural-assigned may need to accept the new fields.
27
+ - `audio.speech(...)` return type grows `budget` + `sessionInvalidReason` alongside the existing `{ response, receipt, requestId }`.
28
+ - Streaming final results (`ChatCompletionFinalResult`, `ResponsesStreamFinalResult`) grow `budget` + `sessionInvalidReason`.
29
+ - The `SDK_VERSION` constant is no longer exported at a stable location; use `sdk.version` on an instance.
30
+
31
+ ---
32
+
3
33
  ## 0.2.0
4
34
 
5
35
  First production-shaped release. Full rewrite from the 0.1.x typed-fetch prototype.
@@ -16,15 +46,6 @@ First production-shaped release. Full rewrite from the 0.1.x typed-fetch prototy
16
46
  - **Retries + timeouts + AbortSignal** — jittered exponential backoff; honors `Retry-After`; auto-generates `X-Idempotency-Key` on mutations.
17
47
  - **Video job streaming** — `sdk.inference.videos.stream(id)` / `.waitUntilDone(id, { onStatus })` for SSE-driven polling.
18
48
 
19
- ### Breaking changes from 0.1.x
20
-
21
- - Package entry moved from `./index.js` to `./dist/index.js` with dual `.d.ts` + sourcemaps.
22
- - `ComposeApiError` renamed to `ComposeAPIError` (plus typed subclasses). Error envelopes now follow the canonical `{ error: { code, message, details? } }` shape.
23
- - `sdk.keys.getActive()` no longer returns the token. The token is returned exactly once by `sdk.keys.create()` and must be persisted by the integrator (store in `localStorage`, keychain, secret store, etc.). Calling `getActive()` returns metadata only.
24
- - `sdk.keys.revoke()` and the new `sdk.keys.get(id)` require possession of the target key's JWT (pass via `sdk.keys.use(token)` or the constructor).
25
- - `sdk.inference.*` entry points now return `ComposeCompletion<T>` (`{ data, receipt, requestId, response }`) instead of the raw JSON body. Use `.data` to access the parsed body.
26
- - Streaming is now an explicit `.stream()` method (separate from `.create()`) returning `ComposeStreamIterator<Chunk, Final>`. Passing `stream: true` to `.create()` throws `BadRequestError`.
27
-
28
49
  ### Tests
29
50
 
30
51
  - **Hermetic.** Three suites: `sdk.unit.test.ts` (pure), `sdk.streaming.test.ts` (in-test synthetic SSE server), `sdk.contract.test.ts` (in-test mock HTTP server with canned responses mirroring `api.compose.market`).
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Typed event bus emitted by `ComposeSDK`.
3
+ *
4
+ * The event bus is the canonical way for application code to react to
5
+ * out-of-band signals from the Compose backend that arrive as a side effect
6
+ * of HTTP calls or SSE subscriptions:
7
+ *
8
+ * - `budget` — session-budget snapshot parsed from response headers
9
+ * on every billable call.
10
+ * - `sessionInvalid` — `x-compose-session-invalid` header was set, the
11
+ * session must be torn down.
12
+ * - `sessionExpired` — SSE `session-expired` frame arrived from
13
+ * `/api/session/events`.
14
+ * - `sessionActive` — SSE `session-active` heartbeat frame arrived.
15
+ * - `receipt` — settlement receipt parsed from `X-Compose-Receipt`
16
+ * (or the SSE `event: compose.receipt` frame).
17
+ *
18
+ * Listeners are registered with `.on(event, listener)`. The bus is in-memory,
19
+ * single-process, unordered across listeners, and never blocks the caller —
20
+ * listener exceptions are logged via the SDK logger and discarded.
21
+ */
22
+ import type { ComposeReceipt, SessionActiveEvent, SessionBudgetSnapshot, SessionExpiredEvent, SessionInvalidReason } from "./types/index.js";
23
+ export interface BudgetEvent {
24
+ userAddress: string | null;
25
+ chainId: number | null;
26
+ snapshot: SessionBudgetSnapshot;
27
+ /** Request that produced this snapshot. Matches `X-Request-Id`. */
28
+ requestId: string | null;
29
+ }
30
+ export interface SessionInvalidEvent {
31
+ userAddress: string | null;
32
+ chainId: number | null;
33
+ reason: SessionInvalidReason;
34
+ requestId: string | null;
35
+ }
36
+ export interface ReceiptEvent {
37
+ userAddress: string | null;
38
+ chainId: number | null;
39
+ receipt: ComposeReceipt;
40
+ requestId: string | null;
41
+ /**
42
+ * Which code path produced the receipt:
43
+ * - "response-header" — decoded from `X-Compose-Receipt` on a normal
44
+ * JSON response.
45
+ * - "stream" — parsed from the `event: compose.receipt` SSE
46
+ * frame on a streaming inference call.
47
+ * - "body" — mirrored from the `compose_receipt` field on
48
+ * the JSON body (fallback).
49
+ */
50
+ source: "response-header" | "stream" | "body";
51
+ }
52
+ export interface ComposeEventMap {
53
+ budget: BudgetEvent;
54
+ sessionInvalid: SessionInvalidEvent;
55
+ sessionActive: SessionActiveEvent;
56
+ sessionExpired: SessionExpiredEvent;
57
+ receipt: ReceiptEvent;
58
+ }
59
+ export type ComposeEventName = keyof ComposeEventMap;
60
+ export type ComposeEventListener<E extends ComposeEventName> = (event: ComposeEventMap[E]) => void | Promise<void>;
61
+ export interface ComposeEventBus {
62
+ on<E extends ComposeEventName>(event: E, listener: ComposeEventListener<E>): () => void;
63
+ once<E extends ComposeEventName>(event: E, listener: ComposeEventListener<E>): () => void;
64
+ off<E extends ComposeEventName>(event: E, listener: ComposeEventListener<E>): void;
65
+ emit<E extends ComposeEventName>(event: E, payload: ComposeEventMap[E]): void;
66
+ }
67
+ interface InternalBusOptions {
68
+ logger?: {
69
+ warn?: (msg: string, meta?: Record<string, unknown>) => void;
70
+ error?: (msg: string, meta?: Record<string, unknown>) => void;
71
+ };
72
+ }
73
+ export declare function createEventBus(options?: InternalBusOptions): ComposeEventBus;
74
+ export {};
75
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EACR,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACvB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,WAAW;IACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,qBAAqB,CAAC;IAChC,mEAAmE;IACnE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,mBAAmB;IAChC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB;;;;;;;;OAQG;IACH,MAAM,EAAE,iBAAiB,GAAG,QAAQ,GAAG,MAAM,CAAC;CACjD;AAED,MAAM,WAAW,eAAe;IAC5B,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,EAAE,mBAAmB,CAAC;IACpC,aAAa,EAAE,kBAAkB,CAAC;IAClC,cAAc,EAAE,mBAAmB,CAAC;IACpC,OAAO,EAAE,YAAY,CAAC;CACzB;AAED,MAAM,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC;AAErD,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,gBAAgB,IAAI,CAC3D,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,KACxB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B,MAAM,WAAW,eAAe;IAC5B,EAAE,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC;IACxF,IAAI,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC;IAC1F,GAAG,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACnF,IAAI,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CACjF;AAED,UAAU,kBAAkB;IACxB,MAAM,CAAC,EAAE;QACL,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;QAC7D,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;KACjE,CAAC;CACL;AAED,wBAAgB,cAAc,CAAC,OAAO,GAAE,kBAAuB,GAAG,eAAe,CA8ChF"}
package/dist/events.js ADDED
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Typed event bus emitted by `ComposeSDK`.
3
+ *
4
+ * The event bus is the canonical way for application code to react to
5
+ * out-of-band signals from the Compose backend that arrive as a side effect
6
+ * of HTTP calls or SSE subscriptions:
7
+ *
8
+ * - `budget` — session-budget snapshot parsed from response headers
9
+ * on every billable call.
10
+ * - `sessionInvalid` — `x-compose-session-invalid` header was set, the
11
+ * session must be torn down.
12
+ * - `sessionExpired` — SSE `session-expired` frame arrived from
13
+ * `/api/session/events`.
14
+ * - `sessionActive` — SSE `session-active` heartbeat frame arrived.
15
+ * - `receipt` — settlement receipt parsed from `X-Compose-Receipt`
16
+ * (or the SSE `event: compose.receipt` frame).
17
+ *
18
+ * Listeners are registered with `.on(event, listener)`. The bus is in-memory,
19
+ * single-process, unordered across listeners, and never blocks the caller —
20
+ * listener exceptions are logged via the SDK logger and discarded.
21
+ */
22
+ export function createEventBus(options = {}) {
23
+ const listeners = new Map();
24
+ const logger = options.logger;
25
+ const register = (event, listener) => {
26
+ const existing = listeners.get(event) ?? new Set();
27
+ existing.add(listener);
28
+ listeners.set(event, existing);
29
+ return () => off(event, listener);
30
+ };
31
+ const off = (event, listener) => {
32
+ const set = listeners.get(event);
33
+ if (!set)
34
+ return;
35
+ set.delete(listener);
36
+ if (set.size === 0)
37
+ listeners.delete(event);
38
+ };
39
+ const emit = (event, payload) => {
40
+ const set = listeners.get(event);
41
+ if (!set || set.size === 0)
42
+ return;
43
+ // Iterate a snapshot so listeners that unsubscribe inside their own
44
+ // handler do not mutate the iteration order.
45
+ for (const listener of Array.from(set)) {
46
+ try {
47
+ const result = listener(payload);
48
+ if (result && typeof result.catch === "function") {
49
+ result.catch((err) => {
50
+ logger?.error?.(`[events] async listener for ${event} threw`, { err });
51
+ });
52
+ }
53
+ }
54
+ catch (err) {
55
+ logger?.error?.(`[events] listener for ${event} threw`, { err });
56
+ }
57
+ }
58
+ };
59
+ const once = (event, listener) => {
60
+ const wrapped = (payload) => {
61
+ off(event, wrapped);
62
+ return listener(payload);
63
+ };
64
+ return register(event, wrapped);
65
+ };
66
+ return { on: register, once, off, emit };
67
+ }
68
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAsEH,MAAM,UAAU,cAAc,CAAC,UAA8B,EAAE;IAC3D,MAAM,SAAS,GAAG,IAAI,GAAG,EAAiE,CAAC;IAC3F,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAE9B,MAAM,QAAQ,GAAG,CAA6B,KAAQ,EAAE,QAAiC,EAAgB,EAAE;QACvG,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;QACnD,QAAQ,CAAC,GAAG,CAAC,QAAkD,CAAC,CAAC;QACjE,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC/B,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACtC,CAAC,CAAC;IAEF,MAAM,GAAG,GAAG,CAA6B,KAAQ,EAAE,QAAiC,EAAQ,EAAE;QAC1F,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,GAAG,CAAC,MAAM,CAAC,QAAkD,CAAC,CAAC;QAC/D,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC;YAAE,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,CAA6B,KAAQ,EAAE,OAA2B,EAAQ,EAAE;QACrF,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO;QACnC,oEAAoE;QACpE,6CAA6C;QAC7C,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC;gBACD,MAAM,MAAM,GAAI,QAAoC,CAAC,OAAO,CAAC,CAAC;gBAC9D,IAAI,MAAM,IAAI,OAAQ,MAAwB,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;oBACjE,MAAwB,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;wBACpC,MAAM,EAAE,KAAK,EAAE,CAAC,+BAA+B,KAAK,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;oBAC3E,CAAC,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,MAAM,EAAE,KAAK,EAAE,CAAC,yBAAyB,KAAK,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;YACrE,CAAC;QACL,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,CAA6B,KAAQ,EAAE,QAAiC,EAAgB,EAAE;QACnG,MAAM,OAAO,GAA4B,CAAC,OAAO,EAAE,EAAE;YACjD,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACpB,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC,CAAC;QACF,OAAO,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACpC,CAAC,CAAC;IAEF,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;AAC7C,CAAC"}
package/dist/http.d.ts CHANGED
@@ -37,7 +37,7 @@ export interface HttpClientOptions {
37
37
  export interface HeaderBagInput {
38
38
  authJwt?: string;
39
39
  composeKey?: string | null;
40
- walletAddress?: string | null;
40
+ userAddress?: string | null;
41
41
  chainId?: number | null;
42
42
  paymentSignature?: string;
43
43
  x402MaxAmountWei?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAgBH,MAAM,MAAM,SAAS,GAAG,CACpB,KAAK,EAAE,WAAW,GAAG,GAAG,EACxB,IAAI,CAAC,EAAE,WAAW,KACjB,OAAO,CAAC,QAAQ,CAAC,CAAC;AAEvB,MAAM,WAAW,WAAW;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,KAAK,EAAE,WAAW,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE;QACL,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;QAC9D,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;QAC7D,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;KACjE,CAAC;CACL;AAED,MAAM,WAAW,cAAc;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,cAAc;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IACrE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,KAAK,CAAC;IACxC,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,4DAA4D;IAC5D,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7B;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,UAAU,CAAC,CAAC,CAAE,SAAQ,WAAW,CAAC,CAAC,CAAC;IACjD,4DAA4D;IAC5D,UAAU,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;IAChC,yEAAyE;IACzE,YAAY,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,CAAC,CAAC;QAAC,QAAQ,EAAE,QAAQ,CAAA;KAAE,CAAC,CAAC;IACzD,gCAAgC;IAChC,KAAK,CAAC,OAAO,GAAG,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;IACxH,kCAAkC;IAClC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACxD;AAuDD,wBAAgB,YAAY,CAAC,KAAK,EAAE,cAAc,GAAG;IACjD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,KAAK,CAAC;CAC3C,GAAG,OAAO,CAyDV;AA6DD,qBAAa,UAAU;IACnB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;gBAEhC,OAAO,EAAE,iBAAiB;IAItC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC;YA4BnC,OAAO;IAkGrB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,UAAU;YAOJ,iBAAiB;YAgBjB,YAAY;CAa7B"}
package/dist/http.js CHANGED
@@ -61,10 +61,10 @@ function buildQueryString(query) {
61
61
  const encoded = params.toString();
62
62
  return encoded.length > 0 ? `?${encoded}` : "";
63
63
  }
64
- function normalizeWalletAddress(value) {
64
+ function normalizeUserAddress(value) {
65
65
  const trimmed = value.trim().toLowerCase();
66
66
  if (!/^0x[a-f0-9]{40}$/.test(trimmed)) {
67
- throw new BadRequestError({ message: "wallet address must be a valid 0x-prefixed EVM address" });
67
+ throw new BadRequestError({ message: "userAddress must be a valid 0x-prefixed EVM address" });
68
68
  }
69
69
  return trimmed;
70
70
  }
@@ -84,8 +84,8 @@ export function buildHeaders(input) {
84
84
  else if (input.composeKey) {
85
85
  headers.set("Authorization", `Bearer ${input.composeKey}`);
86
86
  }
87
- if (input.walletAddress) {
88
- headers.set("x-session-user-address", normalizeWalletAddress(input.walletAddress));
87
+ if (input.userAddress) {
88
+ headers.set("x-session-user-address", normalizeUserAddress(input.userAddress));
89
89
  }
90
90
  if (typeof input.chainId === "number" && Number.isInteger(input.chainId) && input.chainId > 0) {
91
91
  headers.set("x-chain-id", String(input.chainId));
package/dist/http.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -8,10 +8,13 @@
8
8
  * - Compose Key lifecycle (create / list / get / revoke, session metadata)
9
9
  * - 45k+ model catalog (list / listAll / search / get / getParams)
10
10
  * - OpenAI-shaped inference (chat.completions, responses, embeddings, images,
11
- * audio.speech, audio.transcriptions, videos) with full SSE streaming and
12
- * typed tool-call deltas + reasoning deltas.
11
+ * audio.speech, audio.transcriptions, videos) with full SSE streaming,
12
+ * typed tool-call deltas and reasoning deltas, typed cost receipts, and
13
+ * live session-budget updates emitted on every response.
13
14
  * - x402 facilitator access (supported / chains / verify / settle) and typed
14
15
  * decoders for PAYMENT-REQUIRED, PAYMENT-RESPONSE, X-Compose-Receipt.
16
+ * - SSE session events (`sdk.session.events`) for budget depletion and
17
+ * expiry notifications, dispatched on the typed event bus as well.
15
18
  * - Webhook signature verification (HMAC-SHA256, Stripe-style header).
16
19
  *
17
20
  * Design:
@@ -24,8 +27,11 @@
24
27
  * via the `x-session-user-address` header. The Compose Key JWT returned by
25
28
  * `keys.create(...)` is the real cryptographic identity from that point on.
26
29
  * - Every billable call returns a `ComposeCompletion<T>` carrying the parsed
27
- * body, the settlement receipt (if any), the request id, and the raw
30
+ * body, the settlement receipt (if any), the request id, the live session
31
+ * budget snapshot, the session-invalid reason (if any), and the raw
28
32
  * Response so integrators can read non-standard headers without parsing.
33
+ * - Persisted session tokens survive page reloads when a storage adapter is
34
+ * provided (browser `localStorage` is auto-detected).
29
35
  */
30
36
  import { type FetchLike, type HttpClientOptions, type RetryPolicy } from "./http.js";
31
37
  import { KeysResource } from "./resources/keys.js";
@@ -33,14 +39,24 @@ import { ModelsResource } from "./resources/models.js";
33
39
  import { InferenceResource } from "./resources/inference.js";
34
40
  import { X402Resource } from "./resources/x402.js";
35
41
  import { WebhooksResource } from "./resources/webhooks.js";
42
+ import { SessionEventsResource, type SessionEventsOptions } from "./resources/session-events.js";
43
+ import { type ComposeEventBus, type ComposeEventListener } from "./events.js";
44
+ import { type ComposeStorage } from "./storage.js";
36
45
  export * from "./types/index.js";
37
46
  export * from "./errors.js";
38
47
  export type { APIPromise, HeaderBagInput, HttpClientOptions, RequestOptions, RetryPolicy, } from "./http.js";
39
- export type { ComposeCallOptions, ComposeCompletion, ChatCompletionFinalResult, ResponsesStreamFinalResult, ComposeStreamIterator, } from "./resources/inference.js";
48
+ export type { ComposeCallOptions, ComposeCompletion, ChatCompletionFinalResult, ResponsesStreamFinalResult, ComposeStreamIterator, InferenceContext, } from "./resources/inference.js";
40
49
  export type { ComposeWebhookEvent, VerifyWebhookInput, } from "./resources/webhooks.js";
50
+ export type { BudgetEvent, ComposeEventBus, ComposeEventListener, ComposeEventMap, ComposeEventName, ReceiptEvent, SessionInvalidEvent, } from "./events.js";
51
+ export type { ComposeStorage } from "./storage.js";
52
+ export type { SessionEventsOptions } from "./resources/session-events.js";
41
53
  export { decodeReceiptHeader, extractReceiptFromResponse, parseReceiptEvent } from "./streaming/receipt.js";
42
54
  export { parseSSEStream } from "./streaming/sse.js";
43
- export declare const SDK_VERSION = "1.0.0";
55
+ export { extractSessionBudgetFromResponse } from "./streaming/budget.js";
56
+ export { createMemoryStorage } from "./storage.js";
57
+ /**
58
+ * Constructor options for `ComposeSDK`.
59
+ */
44
60
  export interface ComposeSDKOptions {
45
61
  /** API base URL. Defaults to `https://api.compose.market`. */
46
62
  baseUrl?: string;
@@ -61,6 +77,11 @@ export interface ComposeSDKOptions {
61
77
  /**
62
78
  * A previously-issued Compose Key JWT. The SDK stores this in-memory and
63
79
  * attaches it as `Authorization: Bearer compose-<jwt>` on every call.
80
+ *
81
+ * When a `storage` adapter is present, the token is also persisted under
82
+ * the scoped key `<tokenScope>:<address>:<chainId>` so that it survives
83
+ * page reloads. If `composeKey` is omitted at construction, the SDK
84
+ * attempts to hydrate from storage.
64
85
  */
65
86
  composeKey?: string;
66
87
  /** Default timeout for each HTTP call, in milliseconds. Default 60_000. */
@@ -76,13 +97,31 @@ export interface ComposeSDKOptions {
76
97
  userAgent?: string;
77
98
  /** Optional debug/logging hooks. */
78
99
  logger?: HttpClientOptions["logger"];
100
+ /**
101
+ * Pluggable persistent storage. Auto-detects `globalThis.localStorage` on
102
+ * browsers/Workers. Pass an explicit adapter on Node/server runtimes if
103
+ * you want the session token to survive process restarts.
104
+ */
105
+ storage?: ComposeStorage;
106
+ /**
107
+ * Namespace prefix for persisted tokens. The full key shape is
108
+ * `<tokenScope>:<lower-address>:<chainId>`. Defaults to
109
+ * `compose.sdk.token`. Bump this only if you need to invalidate every
110
+ * persisted token at once (e.g. after a breaking server auth change).
111
+ */
112
+ tokenScope?: string;
79
113
  }
80
114
  export declare class ComposeSDK {
115
+ /** The SDK version, sourced from package.json at build time. */
116
+ readonly version: string;
117
+ /** Resolved API base URL, trimmed of trailing slashes. */
118
+ readonly baseUrl: string;
81
119
  readonly keys: KeysResource;
82
120
  readonly models: ModelsResource;
83
121
  readonly inference: InferenceResource;
84
122
  readonly x402: X402Resource;
85
123
  readonly webhooks: WebhooksResource;
124
+ readonly session: SessionEventsNamespace;
86
125
  readonly wallets: {
87
126
  attach: (input: {
88
127
  address: string;
@@ -94,11 +133,74 @@ export declare class ComposeSDK {
94
133
  };
95
134
  clear: () => void;
96
135
  };
136
+ /**
137
+ * Typed, in-memory event bus. Listeners registered here receive:
138
+ * - `budget` — live `x-session-budget-*` snapshot on every billable call.
139
+ * - `sessionInvalid` — `x-compose-session-invalid` header set by the server.
140
+ * - `sessionActive` — SSE `session-active` heartbeat from `/api/session/events`.
141
+ * - `sessionExpired` — SSE `session-expired` frame from `/api/session/events`.
142
+ * - `receipt` — settlement receipt on every billable response / stream.
143
+ */
144
+ readonly events: ComposeEventBus;
97
145
  private readonly http;
98
- private walletAddress;
146
+ private readonly storage;
147
+ private readonly tokenScope;
148
+ private userAddress;
99
149
  private chainId;
100
150
  private composeKey;
151
+ private readonly rawFetch;
152
+ private readonly userAgent;
101
153
  constructor(options?: ComposeSDKOptions);
154
+ private persistToken;
155
+ private deletePersistedToken;
156
+ /**
157
+ * Drop-in `fetch` wrapper that attaches the canonical Compose header
158
+ * contract (`Authorization`, `x-session-user-address`, `x-chain-id`,
159
+ * `User-Agent`) on every request and emits `budget` / `sessionInvalid` /
160
+ * `receipt` events on every response via the SDK event bus.
161
+ *
162
+ * Use this when you need to hit a Compose endpoint that isn't covered
163
+ * by a typed resource yet (agent/workflow runtime endpoints, workspace
164
+ * indexing, custom api/ routes). The URL may be absolute or relative to
165
+ * the SDK's `baseUrl`.
166
+ *
167
+ * Non-Compose URLs (absolute URLs whose host differs from `baseUrl`) are
168
+ * still passed through so this method is safe as a general-purpose fetch
169
+ * replacement; the budget event extraction is a no-op when the response
170
+ * doesn't carry `x-session-budget-*` headers.
171
+ */
172
+ fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
173
+ }
174
+ /**
175
+ * Thin ergonomic wrapper around `SessionEventsResource` so callers write
176
+ * `sdk.session.events({ ... })` with wallet defaults inferred from the SDK
177
+ * instance.
178
+ */
179
+ declare class SessionEventsNamespace {
180
+ private readonly resource;
181
+ private readonly getWalletMaybe;
182
+ constructor(resource: SessionEventsResource, getWalletMaybe: () => {
183
+ address: string | null;
184
+ chainId: number | null;
185
+ });
186
+ /**
187
+ * Subscribe to `/api/session/events`. Yields `SessionActiveEvent` and
188
+ * `SessionExpiredEvent` until the signal aborts or the server ends the
189
+ * stream. The same events are also emitted on `sdk.events`.
190
+ *
191
+ * When `userAddress` / `chainId` are omitted, the SDK's currently attached
192
+ * wallet context is used. Abort via an `AbortController.signal`.
193
+ */
194
+ subscribe(opts?: Partial<SessionEventsOptions>): AsyncIterable<import("./types/index.js").SessionEvent>;
195
+ /**
196
+ * Shortcut: register a listener on the `sessionActive` + `sessionExpired`
197
+ * events produced by a subscription. Returns a disposer that aborts the
198
+ * underlying stream AND removes the listeners.
199
+ */
200
+ on(handlers: {
201
+ active?: ComposeEventListener<"sessionActive">;
202
+ expired?: ComposeEventListener<"sessionExpired">;
203
+ }, opts?: Partial<SessionEventsOptions>): () => void;
102
204
  }
103
205
  export default ComposeSDK;
104
206
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,iBAAiB,EAAE,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AACjG,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3D,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,YAAY,EACR,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,WAAW,GACd,MAAM,WAAW,CAAC;AACnB,YAAY,EACR,kBAAkB,EAClB,iBAAiB,EACjB,yBAAyB,EACzB,0BAA0B,EAC1B,qBAAqB,GACxB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACR,mBAAmB,EACnB,kBAAkB,GACrB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC5G,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,eAAO,MAAM,WAAW,UAAU,CAAC;AAEnC,MAAM,WAAW,iBAAiB;IAC9B,8DAA8D;IAC9D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mEAAmE;IACnE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oEAAoE;IACpE,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7B,yCAAyC;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,MAAM,CAAC,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAC;CACxC;AA6BD,qBAAa,UAAU;IACnB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;IACtC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IAEpC,QAAQ,CAAC,OAAO,EAAE;QACd,MAAM,EAAE,CAAC,KAAK,EAAE;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,KAAK,IAAI,CAAC;QAC9D,OAAO,EAAE,MAAM;YAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;YAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,CAAC;QAClE,KAAK,EAAE,MAAM,IAAI,CAAC;KACrB,CAAC;IAEF,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;IAClC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,UAAU,CAAgB;gBAEtB,OAAO,GAAE,iBAAsB;CA+D9C;AAED,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}