@jack-kernel/sdk 1.0.0 → 1.1.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 (49) hide show
  1. package/dist/cjs/index.js +43 -2
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/cjs/yellow/channel-state-manager.js +167 -0
  4. package/dist/cjs/yellow/channel-state-manager.js.map +1 -0
  5. package/dist/cjs/yellow/clear-node-connection.js +390 -0
  6. package/dist/cjs/yellow/clear-node-connection.js.map +1 -0
  7. package/dist/cjs/yellow/event-mapper.js +254 -0
  8. package/dist/cjs/yellow/event-mapper.js.map +1 -0
  9. package/dist/cjs/yellow/serialization.js +130 -0
  10. package/dist/cjs/yellow/serialization.js.map +1 -0
  11. package/dist/cjs/yellow/session-key-manager.js +308 -0
  12. package/dist/cjs/yellow/session-key-manager.js.map +1 -0
  13. package/dist/cjs/yellow/types.js +12 -0
  14. package/dist/cjs/yellow/types.js.map +1 -0
  15. package/dist/cjs/yellow/yellow-provider.js +1545 -0
  16. package/dist/cjs/yellow/yellow-provider.js.map +1 -0
  17. package/dist/esm/index.js +34 -1
  18. package/dist/esm/index.js.map +1 -1
  19. package/dist/esm/yellow/channel-state-manager.js +163 -0
  20. package/dist/esm/yellow/channel-state-manager.js.map +1 -0
  21. package/dist/esm/yellow/clear-node-connection.js +385 -0
  22. package/dist/esm/yellow/clear-node-connection.js.map +1 -0
  23. package/dist/esm/yellow/event-mapper.js +248 -0
  24. package/dist/esm/yellow/event-mapper.js.map +1 -0
  25. package/dist/esm/yellow/serialization.js +125 -0
  26. package/dist/esm/yellow/serialization.js.map +1 -0
  27. package/dist/esm/yellow/session-key-manager.js +302 -0
  28. package/dist/esm/yellow/session-key-manager.js.map +1 -0
  29. package/dist/esm/yellow/types.js +11 -0
  30. package/dist/esm/yellow/types.js.map +1 -0
  31. package/dist/esm/yellow/yellow-provider.js +1538 -0
  32. package/dist/esm/yellow/yellow-provider.js.map +1 -0
  33. package/dist/types/index.d.ts +47 -2
  34. package/dist/types/index.d.ts.map +1 -1
  35. package/dist/types/yellow/channel-state-manager.d.ts +106 -0
  36. package/dist/types/yellow/channel-state-manager.d.ts.map +1 -0
  37. package/dist/types/yellow/clear-node-connection.d.ts +202 -0
  38. package/dist/types/yellow/clear-node-connection.d.ts.map +1 -0
  39. package/dist/types/yellow/event-mapper.d.ts +74 -0
  40. package/dist/types/yellow/event-mapper.d.ts.map +1 -0
  41. package/dist/types/yellow/serialization.d.ts +52 -0
  42. package/dist/types/yellow/serialization.d.ts.map +1 -0
  43. package/dist/types/yellow/session-key-manager.d.ts +179 -0
  44. package/dist/types/yellow/session-key-manager.d.ts.map +1 -0
  45. package/dist/types/yellow/types.d.ts +177 -0
  46. package/dist/types/yellow/types.d.ts.map +1 -0
  47. package/dist/types/yellow/yellow-provider.d.ts +303 -0
  48. package/dist/types/yellow/yellow-provider.d.ts.map +1 -0
  49. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yellow-provider.js","sourceRoot":"","sources":["../../../src/yellow/yellow-provider.ts"],"names":[],"mappings":"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"}
package/dist/esm/index.js CHANGED
@@ -16,12 +16,20 @@ export { CostTracker } from './costs.js';
16
16
  export { AgentUtils } from './agent.js';
17
17
  // Re-export JackClient
18
18
  export { JackClient } from './client.js';
19
+ // Re-export Yellow Network provider and configuration
20
+ export { YellowProvider } from './yellow/yellow-provider.js';
21
+ export { NitroliteClient } from './yellow/yellow-provider.js';
22
+ export { mapErrorToReasonCode, extractRevertReason } from './yellow/yellow-provider.js';
23
+ // Re-export Yellow event mapper functions
24
+ export { mapYellowEvent, mapChannelStatus, mapStateIntent, inferMapping } from './yellow/event-mapper.js';
19
25
  // Import manager classes
20
26
  import { JackClient } from './client.js';
21
27
  import { IntentManager } from './intents.js';
22
28
  import { ExecutionTracker } from './execution.js';
23
29
  import { CostTracker } from './costs.js';
24
30
  import { AgentUtils } from './agent.js';
31
+ // Import Yellow provider and config for SDK integration
32
+ import { YellowProvider } from './yellow/yellow-provider.js';
25
33
  // Import types and enums for use in this file
26
34
  import { ExecutionStatus } from './types.js';
27
35
  /**
@@ -69,6 +77,13 @@ export class JACK_SDK {
69
77
  * Agent utilities - batch operations, subscriptions
70
78
  */
71
79
  agent;
80
+ /**
81
+ * Yellow Network provider - state channel management, clearing, and settlement.
82
+ * Only available when YellowSDKConfig is provided during initialization.
83
+ *
84
+ * **Validates: Requirements 1.6, 1.7**
85
+ */
86
+ yellow;
72
87
  /**
73
88
  * Internal HTTP client (exposed for advanced use cases)
74
89
  */
@@ -80,8 +95,10 @@ export class JACK_SDK {
80
95
  * includes the base URL for the API and optional settings for timeout, retries,
81
96
  * caching, and custom headers.
82
97
  *
83
- * @param config - Client configuration (baseUrl required, other options optional)
98
+ * @param config - Client configuration (baseUrl required, other options optional). Optionally includes
99
+ * a `yellow` field with YellowSDKConfig to enable Yellow Network integration.
84
100
  * @throws ValidationError if configuration is invalid
101
+ * @throws Error if YellowProvider initialization fails when yellow config is provided
85
102
  *
86
103
  * @example
87
104
  * ```typescript
@@ -97,6 +114,18 @@ export class JACK_SDK {
97
114
  * cacheTTL: 120000,
98
115
  * headers: { 'Authorization': 'Bearer token' }
99
116
  * });
117
+ *
118
+ * // With Yellow Network integration
119
+ * const sdk = new JACK_SDK({
120
+ * baseUrl: 'https://api.jack.example',
121
+ * yellow: {
122
+ * custodyAddress: '0x...',
123
+ * adjudicatorAddress: '0x...',
124
+ * chainId: 1,
125
+ * walletClient: myWalletClient,
126
+ * }
127
+ * });
128
+ * console.log(sdk.yellow); // YellowProvider instance
100
129
  * ```
101
130
  */
102
131
  constructor(config) {
@@ -107,6 +136,10 @@ export class JACK_SDK {
107
136
  this.execution = new ExecutionTracker(this.client);
108
137
  this.costs = new CostTracker(this.client);
109
138
  this.agent = new AgentUtils(this.client);
139
+ // Conditionally initialize YellowProvider (Requirements 1.6, 1.7)
140
+ if (config.yellow !== undefined) {
141
+ this.yellow = new YellowProvider(config.yellow, config.yellow.walletClient);
142
+ }
110
143
  }
111
144
  /**
112
145
  * Convenience method: Submit a signed intent
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,163 @@
1
+ /**
2
+ * Channel State Manager for Yellow Network Integration
3
+ *
4
+ * Tracks local channel state and provides on-chain query capabilities.
5
+ * Maintains a local cache of channel states from ClearNode messages and
6
+ * falls back to on-chain queries via viem PublicClient when the WebSocket
7
+ * is disconnected.
8
+ *
9
+ * Requirements: 7.1, 7.2, 7.3, 7.4
10
+ */
11
+ // ============================================================================
12
+ // Custody Contract ABI (minimal)
13
+ // ============================================================================
14
+ /**
15
+ * Minimal ABI for the custody contract's balance query function.
16
+ *
17
+ * The custody contract exposes a `getChannelBalances` function that returns
18
+ * the token balances held in a specific channel for the given token addresses.
19
+ *
20
+ * Function signature: getChannelBalances(bytes32 channelId, address[] tokens) → uint256[]
21
+ */
22
+ const CUSTODY_BALANCE_ABI = [
23
+ {
24
+ name: 'getChannelBalances',
25
+ type: 'function',
26
+ stateMutability: 'view',
27
+ inputs: [
28
+ { name: 'channelId', type: 'bytes32' },
29
+ { name: 'tokens', type: 'address[]' },
30
+ ],
31
+ outputs: [{ name: 'balances', type: 'uint256[]' }],
32
+ },
33
+ ];
34
+ // ============================================================================
35
+ // ChannelStateManager
36
+ // ============================================================================
37
+ /**
38
+ * Manages local channel state cache and provides on-chain query capabilities.
39
+ *
40
+ * The ChannelStateManager serves two purposes:
41
+ * 1. Maintains a local cache of channel states received from ClearNode messages,
42
+ * enabling fast lookups without network calls.
43
+ * 2. Provides on-chain balance queries via viem PublicClient for when the
44
+ * WebSocket connection is unavailable (Requirement 7.4) or when authoritative
45
+ * on-chain data is needed (Requirement 7.2).
46
+ *
47
+ * Requirements: 7.1, 7.2, 7.3, 7.4
48
+ */
49
+ export class ChannelStateManager {
50
+ publicClient;
51
+ custodyAddress;
52
+ channels;
53
+ /**
54
+ * @param publicClient - viem PublicClient for on-chain balance queries
55
+ * @param custodyAddress - Address of the custody contract holding channel collateral
56
+ */
57
+ constructor(publicClient, custodyAddress) {
58
+ this.publicClient = publicClient;
59
+ this.custodyAddress = custodyAddress;
60
+ this.channels = new Map();
61
+ }
62
+ /**
63
+ * Update the local cache with a channel state from a ClearNode response.
64
+ *
65
+ * This is called when the YellowProvider receives channel state updates
66
+ * from ClearNode messages (create, resize, close, or get_ledger_balances).
67
+ *
68
+ * Requirement 7.1: Maintain local channel state from ClearNode responses.
69
+ *
70
+ * @param channelId - The channel identifier
71
+ * @param state - The channel state to cache
72
+ */
73
+ updateChannel(channelId, state) {
74
+ this.channels.set(channelId, state);
75
+ }
76
+ /**
77
+ * Get a locally cached channel state by channel ID.
78
+ *
79
+ * Returns undefined if the channel is not in the local cache.
80
+ * For authoritative on-chain data, use queryOnChainBalances instead.
81
+ *
82
+ * Requirement 7.2: Query specific channel status by channel ID.
83
+ *
84
+ * @param channelId - The channel identifier
85
+ * @returns The cached channel state, or undefined if not found
86
+ */
87
+ getChannel(channelId) {
88
+ return this.channels.get(channelId);
89
+ }
90
+ /**
91
+ * Get all locally cached channel states.
92
+ *
93
+ * Returns a snapshot array of all channels currently in the cache.
94
+ * The returned array is a copy; modifications do not affect the cache.
95
+ *
96
+ * Requirement 7.1: Return list of channels with their statuses and allocations.
97
+ *
98
+ * @returns Array of all cached channel states
99
+ */
100
+ getAllChannels() {
101
+ return Array.from(this.channels.values());
102
+ }
103
+ /**
104
+ * Query on-chain channel balances from the custody contract.
105
+ *
106
+ * Uses viem PublicClient.readContract to call the custody contract's
107
+ * getChannelBalances function. This provides authoritative on-chain data
108
+ * and is used as a fallback when the ClearNode WebSocket is disconnected.
109
+ *
110
+ * Requirement 7.2: Query on-chain custody contract for channel balances.
111
+ * Requirement 7.4: Fall back to on-chain queries when WebSocket is disconnected.
112
+ *
113
+ * @param channelId - The channel identifier (bytes32 hex string)
114
+ * @param tokens - Array of token addresses to query balances for
115
+ * @returns Array of token balances as bigint values, one per token
116
+ * @throws Error if the on-chain query fails
117
+ */
118
+ async queryOnChainBalances(channelId, tokens) {
119
+ try {
120
+ const balances = await this.publicClient.readContract({
121
+ address: this.custodyAddress,
122
+ abi: CUSTODY_BALANCE_ABI,
123
+ functionName: 'getChannelBalances',
124
+ args: [channelId, tokens],
125
+ });
126
+ return [...balances];
127
+ }
128
+ catch (error) {
129
+ const message = error instanceof Error ? error.message : String(error);
130
+ throw new Error(`Failed to query on-chain balances for channel ${channelId}: ${message}`);
131
+ }
132
+ }
133
+ /**
134
+ * Find an open (ACTIVE) channel for a given token address.
135
+ *
136
+ * Searches the local cache for a channel with status 'ACTIVE' that
137
+ * matches the specified token address. Returns the first match found.
138
+ *
139
+ * This is used by the YellowProvider to reuse existing channels
140
+ * when executing intents, avoiding unnecessary channel creation.
141
+ *
142
+ * @param token - The token address to find an open channel for
143
+ * @returns The first matching ACTIVE channel, or undefined if none found
144
+ */
145
+ findOpenChannel(token) {
146
+ for (const channel of this.channels.values()) {
147
+ if (channel.status === 'ACTIVE' && channel.token === token) {
148
+ return channel;
149
+ }
150
+ }
151
+ return undefined;
152
+ }
153
+ /**
154
+ * Clear all cached channel states.
155
+ *
156
+ * This is typically called when the provider disconnects or when
157
+ * a full state refresh is needed.
158
+ */
159
+ clear() {
160
+ this.channels.clear();
161
+ }
162
+ }
163
+ //# sourceMappingURL=channel-state-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channel-state-manager.js","sourceRoot":"","sources":["../../../src/yellow/channel-state-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,+EAA+E;AAC/E,iCAAiC;AACjC,+EAA+E;AAE/E;;;;;;;GAOG;AACH,MAAM,mBAAmB,GAAG;IAC1B;QACE,IAAI,EAAE,oBAAoB;QAC1B,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;YACtC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE;SACtC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;KACnD;CACO,CAAC;AAEX,+EAA+E;AAC/E,sBAAsB;AACtB,+EAA+E;AAE/E;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,mBAAmB;IACb,YAAY,CAAe;IAC3B,cAAc,CAAgB;IAC9B,QAAQ,CAA4B;IAErD;;;OAGG;IACH,YAAY,YAA0B,EAAE,cAA6B;QACnE,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAwB,CAAC;IAClD,CAAC;IAED;;;;;;;;;;OAUG;IACH,aAAa,CAAC,SAAiB,EAAE,KAAmB;QAClD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC;IAED;;;;;;;;;;OAUG;IACH,UAAU,CAAC,SAAiB;QAC1B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;IAED;;;;;;;;;OASG;IACH,cAAc;QACZ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,oBAAoB,CAAC,SAAiB,EAAE,MAAgB;QAC5D,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;gBACpD,OAAO,EAAE,IAAI,CAAC,cAAc;gBAC5B,GAAG,EAAE,mBAAmB;gBACxB,YAAY,EAAE,oBAAoB;gBAClC,IAAI,EAAE,CAAC,SAA0B,EAAE,MAAyB,CAAC;aAC9D,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,iDAAiD,SAAS,KAAK,OAAO,EAAE,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACH,eAAe,CAAC,KAAa;QAC3B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7C,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;gBAC3D,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;OAKG;IACH,KAAK;QACH,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;CACF"}