@gvnrdao/dh-lit-ops 0.0.2 → 0.0.3

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.
@@ -29,11 +29,17 @@ export interface LitOpsConfig {
29
29
  /** Operation mode: standalone (user pays) or service (backend pays) */
30
30
  mode: LitOpsMode;
31
31
  /** LIT Protocol network (required for standalone mode) */
32
- network?: LitNetwork;
32
+ network: LitNetwork;
33
33
  /** Wallet for PKP operations and transactions (required for standalone mode) */
34
34
  signer?: ethers5.Wallet;
35
35
  /** Debug logging enabled */
36
36
  debug?: boolean;
37
+ /**
38
+ * Optional private key of the Capacity Credits holder wallet for Datil.
39
+ * When provided, session signatures will include a capacityDelegationAuthSig
40
+ * generated from this holder, enabling paid execution on the Datil network.
41
+ */
42
+ holderCapacityCreditsLitPrivateKey?: string;
37
43
  /** Service endpoint for service mode (required for service mode) */
38
44
  serviceEndpoint?: string;
39
45
  /** Custom domain for SIWE messages */
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/interfaces/chunks/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC;AAG3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AAE9F,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG,SAAS,CAAC;AAClD,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG,OAAO,CAAC;AAEhD,MAAM,WAAW,wBAAwB;IACvC,aAAa,CAAC,EAAE,gBAAgB,CAAC;IACjC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,cAAc,CAAC,EAAE,uBAAuB,CAAC;CAC1C;AAED,MAAM,WAAW,YAAY;IAC3B,uEAAuE;IACvE,IAAI,EAAE,UAAU,CAAC;IAEjB,0DAA0D;IAC1D,OAAO,CAAC,EAAE,UAAU,CAAC;IAErB,gFAAgF;IAChF,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IAExB,4BAA4B;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,oEAAoE;IACpE,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,oCAAoC;IACpC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAElC,qGAAqG;IACrG,kCAAkC,CAAC,EAAE,MAAM,CAAC;IAE5C,gDAAgD;IAChD,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;CAC/C;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,UAAU,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/interfaces/chunks/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC;AAG3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AAE9F,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG,SAAS,CAAC;AAClD,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG,OAAO,CAAC;AAEhD,MAAM,WAAW,wBAAwB;IACvC,aAAa,CAAC,EAAE,gBAAgB,CAAC;IACjC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,cAAc,CAAC,EAAE,uBAAuB,CAAC;CAC1C;AAED,MAAM,WAAW,YAAY;IAC3B,uEAAuE;IACvE,IAAI,EAAE,UAAU,CAAC;IAEjB,0DAA0D;IAC1D,OAAO,EAAE,UAAU,CAAC;IAEpB,gFAAgF;IAChF,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IAExB,4BAA4B;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;;;OAIG;IACH,kCAAkC,CAAC,EAAE,MAAM,CAAC;IAE5C,oEAAoE;IACpE,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,oCAAoC;IACpC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAElC,qGAAqG;IACrG,kCAAkC,CAAC,EAAE,MAAM,CAAC;IAE5C,gDAAgD;IAChD,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;CAC/C;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,UAAU,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"action-executor.module.d.ts","sourceRoot":"","sources":["../../src/modules/action-executor.module.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,UAAU,EACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,WAAW,CAAiB;IACpC,OAAO,CAAC,eAAe,CAAC,CAAS;gBAG/B,IAAI,EAAE,UAAU,EAChB,KAAK,GAAE,OAAe,EACtB,WAAW,CAAC,EAAE,cAAc,EAC5B,eAAe,CAAC,EAAE,MAAM;IAQ1B;;OAEG;IACG,aAAa,CACjB,OAAO,EAAE,yBAAyB,EAClC,SAAS,EAAE,GAAG,GACb,OAAO,CAAC,wBAAwB,CAAC;IAkBpC;;OAEG;YACW,uBAAuB;IAuFrC;;OAEG;YACW,oBAAoB;IA2DlC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA+BzB;;OAEG;YACW,sBAAsB;CAyCrC"}
1
+ {"version":3,"file":"action-executor.module.d.ts","sourceRoot":"","sources":["../../src/modules/action-executor.module.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,UAAU,EACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGvD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,WAAW,CAAiB;IACpC,OAAO,CAAC,eAAe,CAAC,CAAS;gBAG/B,IAAI,EAAE,UAAU,EAChB,KAAK,GAAE,OAAe,EACtB,WAAW,CAAC,EAAE,cAAc,EAC5B,eAAe,CAAC,EAAE,MAAM;IAQ1B;;OAEG;IACG,aAAa,CACjB,OAAO,EAAE,yBAAyB,EAClC,SAAS,EAAE,GAAG,GACb,OAAO,CAAC,wBAAwB,CAAC;IAkBpC;;OAEG;YACW,uBAAuB;IAoGrC;;OAEG;YACW,oBAAoB;IAkElC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA+BzB;;OAEG;YACW,sBAAsB;CAyCrC"}
@@ -11,6 +11,7 @@ exports.LitActionExecutor = void 0;
11
11
  const axios_1 = __importDefault(require("axios"));
12
12
  const ethers_1 = require("ethers");
13
13
  const auth_manager_module_1 = require("./auth-manager.module");
14
+ const capacity_master_module_1 = require("./capacity-master.module");
14
15
  class LitActionExecutor {
15
16
  constructor(mode, debug = false, authManager, serviceEndpoint) {
16
17
  this.mode = mode;
@@ -61,12 +62,23 @@ class LitActionExecutor {
61
62
  else {
62
63
  throw new Error("Either code or cid must be provided");
63
64
  }
64
- // Check if we have a signer for real execution
65
65
  if (!request.signer) {
66
- if (this.debug) {
67
- console.log("❌ No signer provided - using mock execution");
66
+ throw new Error("Signer is required for standalone execution");
67
+ }
68
+ // Configure capacity delegation automatically for Datil if env key is present
69
+ const net = (litClient?.config?.litNetwork || "").toLowerCase();
70
+ if (net === "datil") {
71
+ const holderKey = process.env.LIT_CAPACITY_HOLDER_KEY ||
72
+ process.env.CAPACITY_HOLDER_KEY;
73
+ if (holderKey) {
74
+ capacity_master_module_1.CapacityMasterModule.config({ holderPrivateKey: holderKey });
75
+ if (this.debug) {
76
+ console.log("⚡ CapacityMasterModule configured (Datil capacity delegation)");
77
+ }
78
+ }
79
+ else if (this.debug) {
80
+ throw new Error("⚠️ Capacity delegation key not provided (set LIT_CAPACITY_HOLDER_KEY for Datil)");
68
81
  }
69
- return this.executeMockAction(request, litActionCode);
70
82
  }
71
83
  // Generate sessionSigs for real execution
72
84
  const sessionSigsResult = await this.authManager.generateSessionSigs({
@@ -74,10 +86,7 @@ class LitActionExecutor {
74
86
  expirationMinutes: 10,
75
87
  }, litClient);
76
88
  if (!sessionSigsResult.success) {
77
- if (this.debug) {
78
- console.log("❌ SessionSigs generation failed - using mock execution");
79
- }
80
- return this.executeMockAction(request, litActionCode);
89
+ throw new Error(`Failed to generate session signatures: ${sessionSigsResult.error}`);
81
90
  }
82
91
  // Execute real LIT Action
83
92
  if (this.debug) {
@@ -123,9 +132,9 @@ class LitActionExecutor {
123
132
  }
124
133
  try {
125
134
  const response = await fetch(`${this.serviceEndpoint}/api/execute-lit-action`, {
126
- method: 'POST',
135
+ method: "POST",
127
136
  headers: {
128
- 'Content-Type': 'application/json',
137
+ "Content-Type": "application/json",
129
138
  },
130
139
  body: JSON.stringify({
131
140
  cid: request.cid,
@@ -137,7 +146,7 @@ class LitActionExecutor {
137
146
  if (!response.ok) {
138
147
  throw new Error(`Service request failed: ${response.status} ${response.statusText}`);
139
148
  }
140
- const result = await response.json();
149
+ const result = (await response.json());
141
150
  if (this.debug) {
142
151
  console.log("✅ LIT Action executed via service:", result);
143
152
  }
@@ -147,7 +156,9 @@ class LitActionExecutor {
147
156
  message: result.message || "LIT Action executed via service",
148
157
  signature: result.signature,
149
158
  },
150
- signatures: result.signature ? { signature: result.signature } : undefined,
159
+ signatures: result.signature
160
+ ? { signature: result.signature }
161
+ : undefined,
151
162
  timestamp: Date.now(),
152
163
  error: result.error,
153
164
  };
@@ -1 +1 @@
1
- {"version":3,"file":"action-executor.module.js","sourceRoot":"","sources":["../../src/modules/action-executor.module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"action-executor.module.js","sourceRoot":"","sources":["../../src/modules/action-executor.module.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"auth-manager.module.d.ts","sourceRoot":"","sources":["../../src/modules/auth-manager.module.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEtE,qBAAa,cAAc;IACzB,OAAO,CAAC,KAAK,CAAU;gBAEX,KAAK,GAAE,OAAe;IAIlC;;;OAGG;IACG,mBAAmB,CACvB,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,GAAG,GACb,OAAO,CAAC,iBAAiB,CAAC;IA2E7B;;OAEG;IACH,mBAAmB,CAAC,WAAW,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO;IAalE;;OAEG;IACG,uBAAuB,CAC3B,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,SAAS,EAAE,GAAG,GACb,OAAO,CAAC,iBAAiB,CAAC;CAU9B"}
1
+ {"version":3,"file":"auth-manager.module.d.ts","sourceRoot":"","sources":["../../src/modules/auth-manager.module.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGtE,qBAAa,cAAc;IACzB,OAAO,CAAC,KAAK,CAAU;gBAEX,KAAK,GAAE,OAAe;IAIlC;;;OAGG;IACG,mBAAmB,CACvB,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,GAAG,GACb,OAAO,CAAC,iBAAiB,CAAC;IA0G7B;;OAEG;IACH,mBAAmB,CAAC,WAAW,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO;IAalE;;OAEG;IACG,uBAAuB,CAC3B,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,SAAS,EAAE,GAAG,GACb,OAAO,CAAC,iBAAiB,CAAC;CAU9B"}
@@ -6,6 +6,7 @@
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.LitAuthManager = void 0;
8
8
  const auth_helpers_1 = require("@lit-protocol/auth-helpers");
9
+ const capacity_master_module_1 = require("./capacity-master.module");
9
10
  class LitAuthManager {
10
11
  constructor(debug = false) {
11
12
  this.debug = debug;
@@ -23,6 +24,25 @@ class LitAuthManager {
23
24
  console.log(" Domain:", domain);
24
25
  console.log(" Expiration:", expirationMinutes, "minutes");
25
26
  }
27
+ // Try to include capacity delegation for Datil
28
+ let capacityDelegationAuthSig;
29
+ try {
30
+ // Best-effort: if the client indicates datil network, include delegation
31
+ const net = (litClient?.config?.litNetwork || "").toLowerCase();
32
+ if (net === "datil") {
33
+ const addr = await signer.getAddress();
34
+ capacityDelegationAuthSig =
35
+ await capacity_master_module_1.CapacityMasterModule.getDelegationCredits("datil", litClient, addr);
36
+ if (this.debug) {
37
+ console.log("⚡ Capacity delegation attached in AuthManager for Datil");
38
+ }
39
+ }
40
+ }
41
+ catch (e) {
42
+ if (this.debug) {
43
+ console.log("⚠️ Capacity delegation not attached:", e instanceof Error ? e.message : String(e));
44
+ }
45
+ }
26
46
  const sessionSigs = await litClient.getSessionSigs({
27
47
  chain: "ethereum",
28
48
  expiration: new Date(Date.now() + 1000 * 60 * expirationMinutes).toISOString(),
@@ -32,6 +52,9 @@ class LitAuthManager {
32
52
  ability: "lit-action-execution",
33
53
  },
34
54
  ],
55
+ ...(capacityDelegationAuthSig
56
+ ? { capacityDelegationAuthSig }
57
+ : {}),
35
58
  authNeededCallback: async (params) => {
36
59
  if (this.debug) {
37
60
  console.log("🔐 Creating SIWE message for authentication...");
@@ -1 +1 @@
1
- {"version":3,"file":"auth-manager.module.js","sourceRoot":"","sources":["../../src/modules/auth-manager.module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth-manager.module.js","sourceRoot":"","sources":["../../src/modules/auth-manager.module.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import { LitNodeClient } from "@lit-protocol/lit-node-client";
2
+ import { AuthSig } from "@lit-protocol/types";
3
+ type ICapacityCredits = {
4
+ id: string;
5
+ ratePerSecond: number;
6
+ dueTo: number;
7
+ };
8
+ type IRateDueToStep = {
9
+ totalRatePerSecond: number;
10
+ dueTo: number;
11
+ activeCapacityCredits: ICapacityCredits[];
12
+ };
13
+ type ICapacityCreditsReport = {
14
+ totalRatePerSecond: number;
15
+ totalDueTo: number;
16
+ rateDueToSteps: IRateDueToStep[];
17
+ capacityCredits: ICapacityCredits[];
18
+ };
19
+ type Network = "datil" | "datil-test";
20
+ export declare const CapacityMasterModule: {
21
+ config: (cfg: {
22
+ holderPrivateKey: string;
23
+ creditsStoreKeySuffix?: string;
24
+ rateSetpoint?: number;
25
+ standardRateQuantum?: number;
26
+ standardDueToDays?: number;
27
+ keepCreditsInterval?: number;
28
+ }) => void;
29
+ getDelegationCredits: (network: Network, litNodeClient: LitNodeClient, userWalletAddress: string) => Promise<AuthSig>;
30
+ requestClearCapacityCredits: (network: "datil" | "datil-test") => Promise<void>;
31
+ shutdown: () => void;
32
+ _internals: {
33
+ buyCredits: (network: Network, opts?: {
34
+ rate?: number;
35
+ dueToDays?: number;
36
+ }) => Promise<ICapacityCredits>;
37
+ getCreditsReport: (network: Network) => Promise<ICapacityCreditsReport>;
38
+ controlCredits: (network: Network) => Promise<void>;
39
+ };
40
+ };
41
+ export {};
42
+ //# sourceMappingURL=capacity-master.module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capacity-master.module.d.ts","sourceRoot":"","sources":["../../src/modules/capacity-master.module.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAI9C,KAAK,gBAAgB,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB,EAAE,gBAAgB,EAAE,CAAC;CAC3C,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,cAAc,EAAE,CAAC;IACjC,eAAe,EAAE,gBAAgB,EAAE,CAAC;CACrC,CAAC;AAcF,KAAK,OAAO,GAAG,OAAO,GAAG,YAAY,CAAC;AA2VtC,eAAO,MAAM,oBAAoB;kBAvRZ;QACnB,gBAAgB,EAAE,MAAM,CAAC;QACzB,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;KAC9B;oCAsOU,OAAO,iBACD,aAAa,qBACT,MAAM,KACxB,OAAO,CAAC,OAAO,CAAC;2CAgBiC,OAAO,GAAG,YAAY;;;8BAzH/D,OAAO,SACT;YAAE,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,SAAS,CAAC,EAAE,MAAM,CAAA;SAAE,KAC3C,OAAO,CAAC,gBAAgB,CAAC;oCA/BjB,OAAO,KACf,OAAO,CAAC,sBAAsB,CAAC;kCAuDK,OAAO;;CAiJ7C,CAAC"}
@@ -0,0 +1,328 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CapacityMasterModule = void 0;
4
+ const constants_1 = require("@lit-protocol/constants");
5
+ const contracts_sdk_1 = require("@lit-protocol/contracts-sdk");
6
+ const ethers_1 = require("ethers");
7
+ // Defaults tuned for tests; can be overridden via config()
8
+ const DEFAULT_AGGRESSION = 100; // baseline target RPS
9
+ const KEEP_LOG_INTERVAL_MS = 5 * 60 * 1000; // 5 minutes
10
+ const CAPACITY_WINDOW_MS = 15 * 60 * 1000; // 15 minutes safety window
11
+ // In-memory key/value store (simple persistent cache in-process)
12
+ const memStore = new Map();
13
+ const kvGet = async (k) => memStore.get(k);
14
+ const kvSet = async (k, v) => {
15
+ memStore.set(k, v);
16
+ };
17
+ const state = {
18
+ configured: false,
19
+ // config
20
+ holderPrivateKey: undefined,
21
+ creditsStoreKeySuffix: ":CAPACITY_CREDITS_STORE:",
22
+ rateSetpoint: new Map([
23
+ ["datil", DEFAULT_AGGRESSION],
24
+ ["datil-test", DEFAULT_AGGRESSION],
25
+ ]),
26
+ standardRateQuantum: new Map([
27
+ ["datil", DEFAULT_AGGRESSION],
28
+ ["datil-test", DEFAULT_AGGRESSION],
29
+ ]),
30
+ standardDueToDays: new Map([
31
+ ["datil", 1],
32
+ ["datil-test", 1],
33
+ ]),
34
+ keepCreditsInterval: new Map([
35
+ ["datil", 10000],
36
+ ["datil-test", 10000],
37
+ ]),
38
+ // working
39
+ lastControlAt: new Map([
40
+ ["datil", 0],
41
+ ["datil-test", 0],
42
+ ]),
43
+ reqCounter: new Map([
44
+ ["datil", 0],
45
+ ["datil-test", 0],
46
+ ]),
47
+ last100Rps: new Map([
48
+ ["datil", []],
49
+ ["datil-test", []],
50
+ ]),
51
+ currentRps: new Map([
52
+ ["datil", 0],
53
+ ["datil-test", 0],
54
+ ]),
55
+ // track usage per credit in the last CAPACITY_WINDOW_MS
56
+ creditsUsageWindowMs: CAPACITY_WINDOW_MS,
57
+ inUseByNetwork: new Map(),
58
+ buildingWallet: false,
59
+ holderWallet: undefined,
60
+ increaseSetpointRate: 0.2,
61
+ // timers are started lazily to avoid open handles in tests
62
+ logInterval: null,
63
+ rpsInterval: null,
64
+ };
65
+ const isTestEnv = !!(process.env.JEST_WORKER_ID || process.env.NODE_ENV === "test");
66
+ const startIntervals = () => {
67
+ // idempotent
68
+ if (!state.logInterval) {
69
+ state.logInterval = setInterval(() => {
70
+ logLeanState();
71
+ }, KEEP_LOG_INTERVAL_MS);
72
+ }
73
+ if (!state.rpsInterval) {
74
+ state.rpsInterval = setInterval(() => {
75
+ updateRps("datil");
76
+ updateRps("datil-test");
77
+ }, 1000);
78
+ }
79
+ };
80
+ const config = (cfg) => {
81
+ state.holderPrivateKey = cfg.holderPrivateKey;
82
+ if (cfg.creditsStoreKeySuffix)
83
+ state.creditsStoreKeySuffix = cfg.creditsStoreKeySuffix;
84
+ if (cfg.rateSetpoint) {
85
+ state.rateSetpoint.set("datil", cfg.rateSetpoint);
86
+ state.rateSetpoint.set("datil-test", cfg.rateSetpoint);
87
+ }
88
+ if (cfg.standardRateQuantum) {
89
+ state.standardRateQuantum.set("datil", cfg.standardRateQuantum);
90
+ state.standardRateQuantum.set("datil-test", cfg.standardRateQuantum);
91
+ }
92
+ if (cfg.standardDueToDays) {
93
+ state.standardDueToDays.set("datil", cfg.standardDueToDays);
94
+ state.standardDueToDays.set("datil-test", cfg.standardDueToDays);
95
+ }
96
+ if (cfg.keepCreditsInterval) {
97
+ state.keepCreditsInterval.set("datil", cfg.keepCreditsInterval);
98
+ state.keepCreditsInterval.set("datil-test", cfg.keepCreditsInterval);
99
+ }
100
+ state.configured = true;
101
+ logLeanState();
102
+ // only start background timers outside of tests
103
+ if (!isTestEnv)
104
+ startIntervals();
105
+ };
106
+ const requireConfig = () => {
107
+ if (!state.configured || !state.holderPrivateKey) {
108
+ throw new Error("CapacityMasterModule: configure with holderPrivateKey first");
109
+ }
110
+ };
111
+ const getHolderWallet = async () => {
112
+ while (state.buildingWallet) {
113
+ await new Promise((r) => setTimeout(r, 50));
114
+ }
115
+ if (state.holderWallet)
116
+ return state.holderWallet;
117
+ state.buildingWallet = true;
118
+ const provider = new ethers_1.ethers.providers.JsonRpcProvider(constants_1.LIT_RPC.CHRONICLE_YELLOWSTONE);
119
+ state.holderWallet = new ethers_1.ethers.Wallet(state.holderPrivateKey, provider);
120
+ state.buildingWallet = false;
121
+ return state.holderWallet;
122
+ };
123
+ const getHolderAddress = async () => {
124
+ return (await getHolderWallet()).getAddress();
125
+ };
126
+ // Cache helpers
127
+ const keyForCredits = (network, address) => `${network}${state.creditsStoreKeySuffix}${address}`;
128
+ const retrieveAllCredits = async (network, address) => {
129
+ const storeStr = await kvGet(keyForCredits(network, address));
130
+ if (!storeStr)
131
+ return [];
132
+ const parsed = JSON.parse(storeStr);
133
+ const now = Date.now();
134
+ const valid = parsed.filter((cc) => cc.dueTo > now);
135
+ await kvSet(keyForCredits(network, address), JSON.stringify(valid));
136
+ return valid;
137
+ };
138
+ const storeNewCredit = async (network, address, credit) => {
139
+ const all = await retrieveAllCredits(network, address);
140
+ all.push(credit);
141
+ await kvSet(keyForCredits(network, address), JSON.stringify(all));
142
+ };
143
+ // RPS tracking
144
+ const tickRps = (network) => {
145
+ state.reqCounter.set(network, (state.reqCounter.get(network) || 0) + 1);
146
+ };
147
+ const updateRps = (network) => {
148
+ const arr = state.last100Rps.get(network);
149
+ arr.push(state.reqCounter.get(network));
150
+ if (arr.length > 100)
151
+ arr.shift();
152
+ const avg = arr.reduce((a, b) => a + b, 0) / Math.max(arr.length, 1);
153
+ state.currentRps.set(network, avg);
154
+ state.reqCounter.set(network, 0);
155
+ };
156
+ // Note: rpsInterval is started lazily via startIntervals() to prevent open handles during tests
157
+ const increaseSetpoint = (current) => Math.floor(current * (1 + state.increaseSetpointRate));
158
+ const getCreditsReport = async (network) => {
159
+ const addr = await getHolderAddress();
160
+ const credits = await retrieveAllCredits(network, addr);
161
+ const steps = [];
162
+ const sorted = [...credits].sort((a, b) => a.dueTo - b.dueTo);
163
+ const op = [...sorted];
164
+ while (op.length > 0) {
165
+ if (steps.length > 0 && op[0].dueTo === steps[steps.length - 1].dueTo) {
166
+ op.shift();
167
+ continue;
168
+ }
169
+ const step = {
170
+ totalRatePerSecond: op.reduce((acc, cc) => acc + cc.ratePerSecond, 0),
171
+ dueTo: op[0].dueTo,
172
+ activeCapacityCredits: [...op],
173
+ };
174
+ steps.push(step);
175
+ op.shift();
176
+ }
177
+ return {
178
+ totalRatePerSecond: steps[0]?.totalRatePerSecond ?? 0,
179
+ totalDueTo: steps.reduce((acc, s) => acc + s.dueTo, 0),
180
+ rateDueToSteps: steps,
181
+ capacityCredits: credits,
182
+ };
183
+ };
184
+ const buyCredits = async (network, opts) => {
185
+ const rate = opts?.rate ?? state.standardRateQuantum.get(network);
186
+ const dueToDays = opts?.dueToDays ?? state.standardDueToDays.get(network);
187
+ const holderAddr = await getHolderAddress();
188
+ const contracts = new contracts_sdk_1.LitContracts({
189
+ privateKey: state.holderPrivateKey,
190
+ network,
191
+ debug: false,
192
+ });
193
+ await contracts.connect();
194
+ const now = Date.now();
195
+ const receipt = await contracts.mintCapacityCreditsNFT({
196
+ requestsPerSecond: rate,
197
+ daysUntilUTCMidnightExpiration: dueToDays,
198
+ });
199
+ const credit = {
200
+ id: receipt.capacityTokenIdStr,
201
+ ratePerSecond: rate,
202
+ dueTo: now + dueToDays * 24 * 60 * 60 * 1000 - state.creditsUsageWindowMs - 100,
203
+ };
204
+ await storeNewCredit(network, holderAddr, credit);
205
+ return credit;
206
+ };
207
+ const controlCredits = async (network) => {
208
+ // dynamic setpoint: if usage > target, lift target modestly
209
+ if ((state.currentRps.get(network) || 0) > state.rateSetpoint.get(network)) {
210
+ state.rateSetpoint.set(network, increaseSetpoint(state.currentRps.get(network)));
211
+ }
212
+ // respect control interval
213
+ const last = state.lastControlAt.get(network);
214
+ if (Date.now() - last < state.keepCreditsInterval.get(network))
215
+ return;
216
+ state.lastControlAt.set(network, Date.now());
217
+ const report = await getCreditsReport(network);
218
+ if (report.totalRatePerSecond < state.rateSetpoint.get(network)) {
219
+ await buyCredits(network);
220
+ }
221
+ };
222
+ const getLeastUsedCredit = (network, active) => {
223
+ let usage = state.inUseByNetwork.get(network);
224
+ if (!usage) {
225
+ usage = new Map();
226
+ state.inUseByNetwork.set(network, usage);
227
+ }
228
+ // ensure keys exist for active credits
229
+ for (const cc of active)
230
+ if (!usage.has(cc.id))
231
+ usage.set(cc.id, []);
232
+ // garbage-collect and keep only recent uses in window
233
+ const now = Date.now();
234
+ for (const [id, arr] of usage.entries()) {
235
+ if (!active.find((cc) => cc.id === id)) {
236
+ usage.delete(id);
237
+ }
238
+ else {
239
+ usage.set(id, arr.filter((t) => t > now - state.creditsUsageWindowMs));
240
+ }
241
+ }
242
+ // choose least used
243
+ const sorted = [...active].sort((a, b) => (usage.get(a.id).length || 0) - (usage.get(b.id).length || 0));
244
+ usage.get(sorted[0].id).push(now);
245
+ return sorted[0];
246
+ };
247
+ const requestDelegationCredit = async (network) => {
248
+ tickRps(network);
249
+ await controlCredits(network);
250
+ let report = {
251
+ totalRatePerSecond: 0,
252
+ totalDueTo: 0,
253
+ rateDueToSteps: [],
254
+ capacityCredits: [],
255
+ };
256
+ // ensure we have at least one active credit
257
+ while (report.rateDueToSteps.length === 0) {
258
+ report = await getCreditsReport(network);
259
+ if (report.rateDueToSteps.length === 0) {
260
+ await controlCredits(network);
261
+ // brief backoff
262
+ await new Promise((r) => setTimeout(r, 200));
263
+ }
264
+ }
265
+ const active = report.rateDueToSteps[0].activeCapacityCredits;
266
+ return getLeastUsedCredit(network, active);
267
+ };
268
+ const getDelegationCredits = async (network, litNodeClient, userWalletAddress) => {
269
+ requireConfig();
270
+ const picked = await requestDelegationCredit(network);
271
+ const { capacityDelegationAuthSig } = await litNodeClient.createCapacityDelegationAuthSig({
272
+ uses: "1",
273
+ dAppOwnerWallet: await getHolderWallet(),
274
+ capacityTokenId: picked.id,
275
+ delegateeAddresses: [userWalletAddress],
276
+ expiration: new Date(Date.now() + state.creditsUsageWindowMs).toISOString(),
277
+ });
278
+ return capacityDelegationAuthSig;
279
+ };
280
+ const requestClearCapacityCredits = async (network) => {
281
+ const holder = await getHolderAddress();
282
+ const key = keyForCredits(network === "datil" ? "datil" : "datil-test", holder);
283
+ await kvSet(key, "[]");
284
+ };
285
+ const logLeanState = () => {
286
+ const lean = {
287
+ rateSetpoint: state.rateSetpoint,
288
+ standardRateQuantum: state.standardRateQuantum,
289
+ standardDueToDays: state.standardDueToDays,
290
+ keepCreditsInterval: state.keepCreditsInterval,
291
+ lastControlAt: state.lastControlAt,
292
+ currentRps: state.currentRps,
293
+ creditsUsageWindowMs: state.creditsUsageWindowMs,
294
+ };
295
+ // Keep logs lightweight in tests; uncomment if needed
296
+ // console.log("CapacityMasterModule state:", lean);
297
+ };
298
+ exports.CapacityMasterModule = {
299
+ // configuration
300
+ config,
301
+ // main API
302
+ getDelegationCredits,
303
+ // maintenance / tools
304
+ requestClearCapacityCredits,
305
+ // graceful shutdown to prevent open handles in tests
306
+ shutdown: () => {
307
+ try {
308
+ if (state.logInterval) {
309
+ clearInterval(state.logInterval);
310
+ state.logInterval = null;
311
+ }
312
+ if (state.rpsInterval) {
313
+ clearInterval(state.rpsInterval);
314
+ state.rpsInterval = null;
315
+ }
316
+ }
317
+ catch (e) {
318
+ // ignore
319
+ }
320
+ },
321
+ // Optional: expose helpers for introspection in tests
322
+ _internals: {
323
+ buyCredits,
324
+ getCreditsReport,
325
+ controlCredits,
326
+ },
327
+ };
328
+ //# sourceMappingURL=capacity-master.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capacity-master.module.js","sourceRoot":"","sources":["../../src/modules/capacity-master.module.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,9 @@ export interface ClientConfig {
11
11
  debug?: boolean;
12
12
  alertWhenUnauthorized?: boolean;
13
13
  minNodeCount?: number;
14
+ checkNodeAttestation?: boolean;
15
+ connectTimeout?: number;
16
+ bootstrapUrls?: string[];
14
17
  }
15
18
  export declare class LitClientManager {
16
19
  private clients;
@@ -1 +1 @@
1
- {"version":3,"file":"client-manager.module.d.ts","sourceRoot":"","sources":["../../src/modules/client-manager.module.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC;AAE3C,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,iBAAiB,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAUD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,OAAO,CAAoC;IACnD,OAAO,CAAC,KAAK,CAAU;IAEvB,OAAO,CAAC,aAAa,CAAe;IAGpC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,eAAe,CAA+B;gBAE1C,aAAa,EAAE,YAAY;IAMvC;;;OAGG;IACG,SAAS,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IAuDvE;;OAEG;IACG,YAAY,CAChB,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAC7B,OAAO,CAAC,YAAY,CAAC;IA8CxB;;;OAGG;IACH,aAAa,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI;IAenD;;;OAGG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAiCpC;;OAEG;IACH,QAAQ,IAAI;QACV,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC1E;IAmBD;;OAEG;IACH,OAAO,CAAC,YAAY;IAIpB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAMzB;;OAEG;YACW,kBAAkB;CA6BjC"}
1
+ {"version":3,"file":"client-manager.module.d.ts","sourceRoot":"","sources":["../../src/modules/client-manager.module.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC;AAE3C,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,iBAAiB,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAUD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,OAAO,CAAoC;IACnD,OAAO,CAAC,KAAK,CAAU;IAEvB,OAAO,CAAC,aAAa,CAAe;IAGpC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,eAAe,CAA+B;gBAE1C,aAAa,EAAE,YAAY;IAMvC;;;OAGG;IACG,SAAS,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IAiEvE;;OAEG;IACG,YAAY,CAChB,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAC7B,OAAO,CAAC,YAAY,CAAC;IA8CxB;;;OAGG;IACH,aAAa,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI;IAenD;;;OAGG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAiCpC;;OAEG;IACH,QAAQ,IAAI;QACV,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC1E;IAmBD;;OAEG;IACH,OAAO,CAAC,YAAY;IAIpB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAMzB;;OAEG;YACW,kBAAkB;CA6BjC"}