@bsv/wallet-toolbox 2.1.0-beta.3 → 2.1.2

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 (78) hide show
  1. package/CHANGELOG.md +31 -1
  2. package/docs/client.md +581 -199
  3. package/docs/monitor.md +30 -11
  4. package/docs/services.md +78 -27
  5. package/docs/storage.md +18 -82
  6. package/docs/wallet.md +581 -199
  7. package/out/src/Setup.js +1 -4
  8. package/out/src/Setup.js.map +1 -1
  9. package/out/src/WalletPermissionsManager.d.ts +4 -2
  10. package/out/src/WalletPermissionsManager.d.ts.map +1 -1
  11. package/out/src/WalletPermissionsManager.js +127 -35
  12. package/out/src/WalletPermissionsManager.js.map +1 -1
  13. package/out/src/__tests/WalletPermissionsManager.flows.test.js +113 -1
  14. package/out/src/__tests/WalletPermissionsManager.flows.test.js.map +1 -1
  15. package/out/src/mockchain/MockChainMigrations.js +1 -1
  16. package/out/src/mockchain/MockChainMigrations.js.map +1 -1
  17. package/out/src/sdk/WalletStorage.interfaces.d.ts +2 -0
  18. package/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -1
  19. package/out/src/services/Services.d.ts +15 -0
  20. package/out/src/services/Services.d.ts.map +1 -1
  21. package/out/src/services/Services.js +59 -4
  22. package/out/src/services/Services.js.map +1 -1
  23. package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -1
  24. package/out/src/services/chaintracker/chaintracks/Chaintracks.js +20 -4
  25. package/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
  26. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js +1 -1
  27. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js.map +1 -1
  28. package/out/src/services/chaintracker/chaintracks/__tests/bulkIngestorFailures.test.d.ts +2 -0
  29. package/out/src/services/chaintracker/chaintracks/__tests/bulkIngestorFailures.test.d.ts.map +1 -0
  30. package/out/src/services/chaintracker/chaintracks/__tests/bulkIngestorFailures.test.js +109 -0
  31. package/out/src/services/chaintracker/chaintracks/__tests/bulkIngestorFailures.test.js.map +1 -0
  32. package/out/src/storage/StorageIdb.d.ts.map +1 -1
  33. package/out/src/storage/StorageIdb.js +4 -0
  34. package/out/src/storage/StorageIdb.js.map +1 -1
  35. package/out/src/storage/StorageKnex.d.ts +8 -0
  36. package/out/src/storage/StorageKnex.d.ts.map +1 -1
  37. package/out/src/storage/StorageKnex.js +125 -71
  38. package/out/src/storage/StorageKnex.js.map +1 -1
  39. package/out/src/storage/StorageProvider.d.ts +8 -0
  40. package/out/src/storage/StorageProvider.d.ts.map +1 -1
  41. package/out/src/storage/StorageProvider.js +42 -0
  42. package/out/src/storage/StorageProvider.js.map +1 -1
  43. package/out/src/storage/methods/ListOutputsSpecOp.d.ts.map +1 -1
  44. package/out/src/storage/methods/ListOutputsSpecOp.js +24 -7
  45. package/out/src/storage/methods/ListOutputsSpecOp.js.map +1 -1
  46. package/out/src/storage/methods/createAction.d.ts.map +1 -1
  47. package/out/src/storage/methods/createAction.js +69 -32
  48. package/out/src/storage/methods/createAction.js.map +1 -1
  49. package/out/src/storage/methods/listActionsIdb.d.ts.map +1 -1
  50. package/out/src/storage/methods/listActionsIdb.js +17 -3
  51. package/out/src/storage/methods/listActionsIdb.js.map +1 -1
  52. package/out/src/storage/methods/listActionsKnex.d.ts.map +1 -1
  53. package/out/src/storage/methods/listActionsKnex.js +28 -2
  54. package/out/src/storage/methods/listActionsKnex.js.map +1 -1
  55. package/out/src/storage/methods/listOutputsKnex.d.ts.map +1 -1
  56. package/out/src/storage/methods/listOutputsKnex.js +83 -50
  57. package/out/src/storage/methods/listOutputsKnex.js.map +1 -1
  58. package/out/src/storage/remoting/StorageServer.d.ts +1 -0
  59. package/out/src/storage/remoting/StorageServer.d.ts.map +1 -1
  60. package/out/src/storage/remoting/StorageServer.js +58 -8
  61. package/out/src/storage/remoting/StorageServer.js.map +1 -1
  62. package/out/src/storage/remoting/__test/StorageClient.man.test.js +361 -96
  63. package/out/src/storage/remoting/__test/StorageClient.man.test.js.map +1 -1
  64. package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -1
  65. package/out/src/storage/schema/KnexMigrations.js +41 -1
  66. package/out/src/storage/schema/KnexMigrations.js.map +1 -1
  67. package/out/src/storage/sync/StorageMySQLDojoReader.d.ts.map +1 -1
  68. package/out/src/storage/sync/StorageMySQLDojoReader.js +4 -0
  69. package/out/src/storage/sync/StorageMySQLDojoReader.js.map +1 -1
  70. package/out/src/utility/brc114ActionTimeLabels.d.ts +9 -0
  71. package/out/src/utility/brc114ActionTimeLabels.d.ts.map +1 -0
  72. package/out/src/utility/brc114ActionTimeLabels.js +51 -0
  73. package/out/src/utility/brc114ActionTimeLabels.js.map +1 -0
  74. package/package.json +3 -3
  75. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.test.d.ts +0 -2
  76. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.test.d.ts.map +0 -1
  77. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.test.js +0 -102
  78. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.test.js.map +0 -1
@@ -2,13 +2,20 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const sdk_1 = require("@bsv/sdk");
4
4
  const TestUtilsWalletStorage_1 = require("../../../../test/utils/TestUtilsWalletStorage");
5
+ const utilityHelpers_1 = require("../../../utility/utilityHelpers");
6
+ const Services_1 = require("../../../services/Services");
7
+ const Wallet_1 = require("../../../Wallet");
8
+ const Setup_1 = require("../../../Setup");
9
+ const StorageKnex_1 = require("../../StorageKnex");
10
+ const WalletStorageManager_1 = require("../../WalletStorageManager");
11
+ const auth_express_middleware_1 = require("@bsv/auth-express-middleware");
5
12
  describe('StorageClient to tagged revision manual tests', () => {
6
13
  jest.setTimeout(99999999);
7
14
  test('0 sync createAction signAction', async () => {
8
15
  if (TestUtilsWalletStorage_1._tu.noEnv('main'))
9
16
  return;
10
17
  const env = TestUtilsWalletStorage_1._tu.getEnv('main');
11
- const tag = 'v1-0-145---'; // revision tags must be followed by '---' as a GCR service URL prefix.
18
+ const tag = 'v1-0-149---'; // revision tags must be followed by '---' as a GCR service URL prefix.
12
19
  const endpointUrl = `https://${tag}prod-storage-921101068003.us-west1.run.app`;
13
20
  const s = await TestUtilsWalletStorage_1._tu.createTestWalletWithStorageClient({
14
21
  rootKeyHex: env.devKeys[env.identityKey],
@@ -100,7 +107,7 @@ describe('StorageClient to tagged revision manual tests', () => {
100
107
  if (TestUtilsWalletStorage_1._tu.noEnv('main'))
101
108
  return;
102
109
  const env = TestUtilsWalletStorage_1._tu.getEnv('main');
103
- // const tag = 'v1-0-145---' // revision tags must be followed by '---' as a GCR service URL prefix.
110
+ const tag = 'v1-0-155---'; // revision tags must be followed by '---' as a GCR service URL prefix.
104
111
  // const endpointUrl = `https://${tag}prod-storage-921101068003.us-west1.run.app`
105
112
  const endpointUrl = `https://storage.babbage.systems`;
106
113
  const s = await TestUtilsWalletStorage_1._tu.createTestWalletWithStorageClient({
@@ -116,108 +123,366 @@ describe('StorageClient to tagged revision manual tests', () => {
116
123
  const count = 8;
117
124
  const acceptDelayedBroadcast = false;
118
125
  const satoshis = 1;
119
- let outputs = await s.wallet.listOutputs({ basket: testCode, include: 'entire transactions', limit: count });
120
- const missing = count - outputs.totalOutputs;
121
- const balance = await s.wallet.balance();
122
- if (balance < missing * 10000) {
123
- console.warn(`balance ${balance} is less than needed ${missing * 10000} to run the test, skipping...`);
124
- return;
125
- }
126
- if (missing > 0) {
127
- const createPromises = [];
128
- for (let i = 0; i < missing; i++) {
129
- // Create an output in the testCode basket if it doesn't exist
130
- const car = s.wallet.createAction({
131
- labels: [testCode],
132
- description: `create ${testCode}`,
133
- outputs: [
134
- {
135
- basket: testCode,
136
- lockingScript: lock.toHex(),
137
- satoshis,
138
- outputDescription: testCode,
139
- tags: [testCode]
126
+ let reps = 0;
127
+ for (;;) {
128
+ reps++;
129
+ console.log(`Async createAction/signAction iteration ${reps}`);
130
+ let outputs = await s.wallet.listOutputs({ basket: testCode, include: 'entire transactions', limit: count });
131
+ const missing = count - outputs.totalOutputs;
132
+ const balance = await s.wallet.balance();
133
+ if (balance < missing * 10000) {
134
+ console.warn(`balance ${balance} is less than needed ${missing * 10000} to run the test, skipping...`);
135
+ return;
136
+ }
137
+ if (missing > 0) {
138
+ const createPromises = [];
139
+ for (let i = 0; i < missing; i++) {
140
+ // Create an output in the testCode basket if it doesn't exist
141
+ const car = s.wallet.createAction({
142
+ labels: [testCode],
143
+ description: `create ${testCode}`,
144
+ outputs: [
145
+ {
146
+ basket: testCode,
147
+ lockingScript: lock.toHex(),
148
+ satoshis,
149
+ outputDescription: testCode,
150
+ tags: [testCode]
151
+ }
152
+ ],
153
+ options: {
154
+ randomizeOutputs: false,
155
+ acceptDelayedBroadcast
140
156
  }
141
- ],
142
- options: {
143
- randomizeOutputs: false,
144
- acceptDelayedBroadcast
145
- }
146
- });
147
- createPromises.push(car);
157
+ });
158
+ createPromises.push(car);
159
+ }
160
+ const createResults = await Promise.all(createPromises);
161
+ console.log(`${createPromises.length} createPromises resulting in ${createResults.length} createResults`);
162
+ for (const car of createResults) {
163
+ expect(car.txid).toBeTruthy();
164
+ console.log(`Created outpoint: ${car.txid}:0`);
165
+ }
166
+ outputs = await s.wallet.listOutputs({ basket: testCode, include: 'entire transactions', limit: count });
148
167
  }
149
- const createResults = await Promise.all(createPromises);
150
- console.log(`${createPromises.length} createPromises resulting in ${createResults.length} createResults`);
151
- for (const car of createResults) {
152
- expect(car.txid).toBeTruthy();
153
- console.log(`Created outpoint: ${car.txid}:0`);
168
+ const consumeCreatePromises = [];
169
+ const beef = sdk_1.Beef.fromBinary(outputs.BEEF);
170
+ for (let i = 0; i < count; i++) {
171
+ const o = outputs.outputs[i];
172
+ if (o && o.outpoint && outputs.BEEF) {
173
+ // Consume the first output found...
174
+ const unlock = TestUtilsWalletStorage_1._tu.getUnlockP2PKH(k, satoshis);
175
+ const unlockingScriptLength = await unlock.estimateLength();
176
+ // Create an output in the testCode basket if it doesn't exist
177
+ const po = sdk_1.Validation.parseWalletOutpoint(o.outpoint); // just to verify it parses before we use it
178
+ const inputBEEF = beef.toBinaryAtomic(po.txid);
179
+ const cas = s.wallet.createAction({
180
+ labels: [testCode],
181
+ description: `consume ${testCode}`,
182
+ inputBEEF,
183
+ inputs: [
184
+ {
185
+ unlockingScriptLength,
186
+ outpoint: o.outpoint,
187
+ inputDescription: `consume ${testCode}`
188
+ }
189
+ ],
190
+ options: {
191
+ randomizeOutputs: false,
192
+ acceptDelayedBroadcast
193
+ }
194
+ });
195
+ consumeCreatePromises.push(cas);
196
+ }
154
197
  }
155
- outputs = await s.wallet.listOutputs({ basket: testCode, include: 'entire transactions', limit: count });
156
- }
157
- const consumeCreatePromises = [];
158
- const beef = sdk_1.Beef.fromBinary(outputs.BEEF);
159
- for (let i = 0; i < count; i++) {
160
- const o = outputs.outputs[i];
161
- if (o && o.outpoint && outputs.BEEF) {
162
- // Consume the first output found...
163
- const unlock = TestUtilsWalletStorage_1._tu.getUnlockP2PKH(k, satoshis);
164
- const unlockingScriptLength = await unlock.estimateLength();
165
- // Create an output in the testCode basket if it doesn't exist
166
- const po = sdk_1.Validation.parseWalletOutpoint(o.outpoint); // just to verify it parses before we use it
167
- const inputBEEF = beef.toBinaryAtomic(po.txid);
168
- const cas = s.wallet.createAction({
169
- labels: [testCode],
170
- description: `consume ${testCode}`,
171
- inputBEEF,
172
- inputs: [
173
- {
174
- unlockingScriptLength,
175
- outpoint: o.outpoint,
176
- inputDescription: `consume ${testCode}`
198
+ const consumeCreateResults = await Promise.all(consumeCreatePromises);
199
+ console.log(`${consumeCreatePromises.length} consumeCreatePromises resulting in ${consumeCreateResults.length} consumeCreateResults`);
200
+ const consumeSignPromises = [];
201
+ for (const cas of consumeCreateResults) {
202
+ expect(cas.signableTransaction).toBeTruthy();
203
+ if (cas.signableTransaction) {
204
+ const st = cas.signableTransaction;
205
+ expect(st.reference).toBeTruthy();
206
+ const atomicBeef = sdk_1.Beef.fromBinary(st.tx);
207
+ const tx = atomicBeef.txs[atomicBeef.txs.length - 1].tx;
208
+ const unlock = TestUtilsWalletStorage_1._tu.getUnlockP2PKH(k, satoshis);
209
+ tx.inputs[0].unlockingScriptTemplate = unlock;
210
+ await tx.sign();
211
+ const unlockingScript = tx.inputs[0].unlockingScript.toHex();
212
+ const signArgs = {
213
+ reference: st.reference,
214
+ spends: { 0: { unlockingScript } },
215
+ options: {
216
+ returnTXIDOnly: true,
217
+ noSend: false,
218
+ acceptDelayedBroadcast
177
219
  }
178
- ],
179
- options: {
180
- randomizeOutputs: false,
181
- acceptDelayedBroadcast
182
- }
183
- });
184
- consumeCreatePromises.push(cas);
220
+ };
221
+ const sr = s.wallet.signAction(signArgs);
222
+ consumeSignPromises.push(sr);
223
+ }
185
224
  }
186
- }
187
- const consumeCreateResults = await Promise.all(consumeCreatePromises);
188
- console.log(`${consumeCreatePromises.length} consumeCreatePromises resulting in ${consumeCreateResults.length} consumeCreateResults`);
189
- const consumeSignPromises = [];
190
- for (const cas of consumeCreateResults) {
191
- expect(cas.signableTransaction).toBeTruthy();
192
- if (cas.signableTransaction) {
193
- const st = cas.signableTransaction;
194
- expect(st.reference).toBeTruthy();
195
- const atomicBeef = sdk_1.Beef.fromBinary(st.tx);
196
- const tx = atomicBeef.txs[atomicBeef.txs.length - 1].tx;
197
- const unlock = TestUtilsWalletStorage_1._tu.getUnlockP2PKH(k, satoshis);
198
- tx.inputs[0].unlockingScriptTemplate = unlock;
199
- await tx.sign();
200
- const unlockingScript = tx.inputs[0].unlockingScript.toHex();
201
- const signArgs = {
202
- reference: st.reference,
203
- spends: { 0: { unlockingScript } },
204
- options: {
205
- returnTXIDOnly: true,
206
- noSend: false,
207
- acceptDelayedBroadcast
208
- }
209
- };
210
- const sr = s.wallet.signAction(signArgs);
211
- consumeSignPromises.push(sr);
225
+ const consumeSignResults = await Promise.all(consumeSignPromises);
226
+ console.log(`${consumeSignPromises.length} consumeSignPromises resulting in ${consumeSignResults.length} consumeSignResults`);
227
+ for (const sr of consumeSignResults) {
228
+ expect(sr.txid).toBeTruthy();
229
+ console.log(`Consumed outpoint in ${sr.txid}`);
212
230
  }
231
+ await (0, utilityHelpers_1.wait)(15000);
213
232
  }
214
- const consumeSignResults = await Promise.all(consumeSignPromises);
215
- console.log(`${consumeSignPromises.length} consumeSignPromises resulting in ${consumeSignResults.length} consumeSignResults`);
216
- for (const sr of consumeSignResults) {
217
- expect(sr.txid).toBeTruthy();
218
- console.log(`Consumed outpoint in ${sr.txid}`);
219
- }
220
233
  await s.wallet.destroy();
221
234
  });
235
+ test('2 makeAvailable', async () => {
236
+ if (TestUtilsWalletStorage_1._tu.noEnv('main'))
237
+ return;
238
+ const env = TestUtilsWalletStorage_1._tu.getEnv('main');
239
+ const tag = 'v1-0-154---'; // revision tags must be followed by '---' as a GCR service URL prefix.
240
+ const endpointUrl = `https://${tag}prod-storage-921101068003.us-west1.run.app`;
241
+ // const endpointUrl = `https://storage.babbage.systems`
242
+ const s = await TestUtilsWalletStorage_1._tu.createTestWalletWithStorageClient({
243
+ rootKeyHex: env.devKeys[env.identityKey],
244
+ endpointUrl,
245
+ chain: 'main'
246
+ });
247
+ await s.storage.makeAvailable();
248
+ await s.wallet.destroy();
249
+ });
250
+ test('3 well-known auth', async () => {
251
+ if (TestUtilsWalletStorage_1._tu.noEnv('main'))
252
+ return;
253
+ const env = TestUtilsWalletStorage_1._tu.getEnv('main');
254
+ const services = new Services_1.Services('main');
255
+ const rootKey = sdk_1.PrivateKey.fromHex(env.devKeys['02c3bee1dd15c89937899897578b420e253c21d81de76b6365c2f5ad7ca743cf14']);
256
+ const keyDeriver = new sdk_1.CachedKeyDeriver(rootKey);
257
+ const knex = Setup_1.Setup.createMySQLKnex(process.env.MAIN_CLOUD_MYSQL_CONNECTION);
258
+ const activeStorage = new StorageKnex_1.StorageKnex({
259
+ chain: env.chain,
260
+ knex: knex,
261
+ commissionSatoshis: 0,
262
+ commissionPubKeyHex: undefined,
263
+ feeModel: { model: 'sat/kb', value: 1 }
264
+ });
265
+ const settings = await activeStorage.makeAvailable();
266
+ const storage = new WalletStorageManager_1.WalletStorageManager(settings.storageIdentityKey, activeStorage);
267
+ const wallet = new Wallet_1.Wallet({ chain: env.chain, keyDeriver, storage, services });
268
+ const options = { wallet };
269
+ const auth = (0, auth_express_middleware_1.createAuthMiddleware)(options);
270
+ // Currently processIntitialRequest in Peer.js must be edited to use a constant sessionNonce so the two requests will share the same session
271
+ for (const [wellKnownAuth, makeAvailable, nonce] of [
272
+ // [wellKnownAuth0, makeAvailable0, "/RrUGlYwjOkxaQEOClkuEZUCQCWAXA9lUKOzxuJvVhfox6AFXeE/jkXUu9AnqHc/"],
273
+ // [wellKnownAuth1, makeAvailable1, 'zzEWA7yPnnD1dcy689jdQlV6lQD1pu9XhtrzTJw+ndw/6/d6VFOXJbmF4HouaJOA']
274
+ [wellKnownAuth2, makeAvailable2, 'qEH+mrEcyA+ZOLy0NQtyybGcRiHjp4eHtHHJQLxzYqosbGsSrcWvTY2kLdaRq9dQ']
275
+ ]) {
276
+ const req = {
277
+ path: '/.well-known/auth',
278
+ headers: wellKnownAuth.headers,
279
+ body: JSON.parse(wellKnownAuth.body),
280
+ method: 'POST'
281
+ };
282
+ const res = {
283
+ status: (code) => {
284
+ console.log(`Response status: ${code}`);
285
+ return res;
286
+ },
287
+ json: (obj) => {
288
+ console.log(`Response body: ${JSON.stringify(obj)}`);
289
+ return res;
290
+ }
291
+ };
292
+ let authNextCalled = 0;
293
+ auth(req, res, () => {
294
+ authNextCalled++;
295
+ });
296
+ await (0, utilityHelpers_1.wait)(1000); // auth is not async, chains via next methods
297
+ const req2 = {
298
+ path: '/',
299
+ headers: makeAvailable.headers,
300
+ body: JSON.parse(makeAvailable.body),
301
+ method: 'POST',
302
+ protocol: 'https',
303
+ get: (headerName) => {
304
+ const headerValue = makeAvailable.headers[headerName.toLowerCase()];
305
+ console.log(`Request header ${headerName}: ${headerValue}`);
306
+ return headerValue;
307
+ }
308
+ };
309
+ auth(req2, res, () => {
310
+ authNextCalled++;
311
+ });
312
+ await (0, utilityHelpers_1.wait)(1000); // auth is not async, chains via next methods
313
+ expect(req2.auth.identityKey).toBe(req.body.identityKey);
314
+ }
315
+ await wallet.destroy();
316
+ });
222
317
  });
318
+ const wellKnownAuth0 = {
319
+ body: '{"version":"0.1","messageType":"initialRequest","identityKey":"030edf8ae22d7e55fe3de7f9edbeb8b1e59d9a5adae8916fa39dc8142f491bc40d","initialNonce":"0GZ7LeI3HrbeWRLvTYiSp8Z3zpLCY0W/eROUo3x7TY3QRswJYRpwMvmT9OiDIyMD","requestedCertificates":{"certifiers":[],"types":{}}}',
320
+ bodyJson: {
321
+ version: '0.1',
322
+ messageType: 'initialRequest',
323
+ identityKey: '030edf8ae22d7e55fe3de7f9edbeb8b1e59d9a5adae8916fa39dc8142f491bc40d',
324
+ initialNonce: '0GZ7LeI3HrbeWRLvTYiSp8Z3zpLCY0W/eROUo3x7TY3QRswJYRpwMvmT9OiDIyMD',
325
+ requestedCertificates: { certifiers: [], types: {} }
326
+ },
327
+ headers: {
328
+ 'accept-encoding': 'br, gzip, deflate',
329
+ 'accept-language': '*',
330
+ accept: '*/*',
331
+ connection: 'close',
332
+ 'content-length': '266',
333
+ 'content-type': 'application/json',
334
+ forwarded: 'for="73.114.228.4";proto=https',
335
+ host: 'v1-0-154---prod-storage-921101068003.us-west1.run.app',
336
+ 'sec-fetch-mode': 'cors',
337
+ traceparent: '00-2f8ddd90c1ed5fc87abc205c94c6939c-04929980c02bf805-01',
338
+ 'user-agent': 'node',
339
+ 'x-cloud-trace-context': '2f8ddd90c1ed5fc87abc205c94c6939c/329494501010438149;o=1',
340
+ 'x-forwarded-for': '73.114.228.4, 169.254.169.126',
341
+ 'x-forwarded-proto': 'https',
342
+ 'x-nginx-proxy': 'true',
343
+ 'x-real-ip': '169.254.169.126'
344
+ }
345
+ };
346
+ const makeAvailable0 = {
347
+ headers: {
348
+ 'accept-encoding': 'br, gzip, deflate',
349
+ 'accept-language': '*',
350
+ accept: '*/*',
351
+ connection: 'close',
352
+ 'content-length': '61',
353
+ 'content-type': 'application/json',
354
+ forwarded: 'for="73.114.228.4";proto=https',
355
+ host: 'v1-0-154---prod-storage-921101068003.us-west1.run.app',
356
+ 'sec-fetch-mode': 'cors',
357
+ traceparent: '00-c663bca2e170f0dffb2d4eeeb42e7e06-81a9008de05f0045-00',
358
+ 'user-agent': 'node',
359
+ 'x-bsv-auth-identity-key': '030edf8ae22d7e55fe3de7f9edbeb8b1e59d9a5adae8916fa39dc8142f491bc40d',
360
+ 'x-bsv-auth-nonce': '+ZoZVHfFkK/s9/15We7+WEcrYC+BZeea8VIQa88NQkE=',
361
+ 'x-bsv-auth-request-id': '7aUXjqq7wUKNlb4IyX+BAww4xXReG/F9AH5+us5EJ08=',
362
+ 'x-bsv-auth-signature': '304502210087248dbca9270453ba480d7f32f0e0534e58ffddfb72b5f47465c4868c54e05a02203cdf6db286957959b6e3945c2fc51f0239a1056dc6d9709bf44371eeae8ca5aa',
363
+ 'x-bsv-auth-version': '0.1',
364
+ 'x-bsv-auth-your-nonce': '/RrUGlYwjOkxaQEOClkuEZUCQCWAXA9lUKOzxuJvVhfox6AFXeE/jkXUu9AnqHc/', // SessionNonce
365
+ 'x-cloud-trace-context': 'c663bca2e170f0dffb2d4eeeb42e7e06/9342999511311515717',
366
+ 'x-forwarded-for': '73.114.228.4, 169.254.169.126',
367
+ 'x-forwarded-proto': 'https',
368
+ 'x-nginx-proxy': 'true',
369
+ 'x-real-ip': '169.254.169.126'
370
+ },
371
+ body: '{"jsonrpc":"2.0","method":"makeAvailable","params":[],"id":1}'
372
+ };
373
+ /**
374
+ * 2026-02-16 13:30:50.573 https://storage.babbage.systems/.well-known/auth
375
+ */
376
+ const wellKnownAuth1 = {
377
+ body: '{"version":"0.1","messageType":"initialRequest","identityKey":"02e2ae292b4ff4ed51aacc69dc66a235693bbd417d89853f1f8a7bc36fa7fe4132","initialNonce":"lGlQHqNqFSxKhBBtNBPMYqXDJQADlBCbGPapoq+Yuyx7q8in7QRGHbB5s1Gt8tYU","requestedCertificates":{"certifiers":[],"types":{}}}',
378
+ bodyJson: {
379
+ version: '0.1',
380
+ messageType: 'initialRequest',
381
+ identityKey: '02e2ae292b4ff4ed51aacc69dc66a235693bbd417d89853f1f8a7bc36fa7fe4132',
382
+ initialNonce: 'lGlQHqNqFSxKhBBtNBPMYqXDJQADlBCbGPapoq+Yuyx7q8in7QRGHbB5s1Gt8tYU',
383
+ requestedCertificates: { certifiers: [], types: {} }
384
+ },
385
+ headers: {
386
+ 'accept-encoding': 'br, gzip, deflate',
387
+ 'accept-language': '*',
388
+ accept: '*/*',
389
+ connection: 'close',
390
+ 'content-length': '266',
391
+ 'content-type': 'application/json',
392
+ forwarded: 'for="139.60.24.151";proto=https',
393
+ host: 'storage.babbage.systems',
394
+ 'sec-fetch-mode': 'cors',
395
+ traceparent: '00-e27cb77d84eb5d2b4c143bdde70bb701-93d9e91f12823fc9-01',
396
+ 'user-agent': 'node',
397
+ 'x-cloud-trace-context': 'e27cb77d84eb5d2b4c143bdde70bb701/10653802713185402825;o=1',
398
+ 'x-forwarded-for': '139.60.24.151, 169.254.169.126',
399
+ 'x-forwarded-proto': 'https',
400
+ 'x-nginx-proxy': 'true',
401
+ 'x-real-ip': '169.254.169.126'
402
+ }
403
+ };
404
+ /**
405
+ * 2026-02-16 13:30:50.762 https://storage.babbage.systems/
406
+ */
407
+ const makeAvailable1 = {
408
+ headers: {
409
+ 'accept-encoding': 'br, gzip, deflate',
410
+ 'accept-language': '*',
411
+ accept: '*/*',
412
+ connection: 'close',
413
+ 'content-length': '61',
414
+ 'content-type': 'application/json',
415
+ forwarded: 'for="139.60.24.151";proto=https',
416
+ host: 'storage.babbage.systems',
417
+ 'sec-fetch-mode': 'cors',
418
+ traceparent: '00-1bc7b37f69050532c10da101d45e0f2e-5015abad7e20f2b2-00',
419
+ 'user-agent': 'node',
420
+ 'x-bsv-auth-identity-key': '02e2ae292b4ff4ed51aacc69dc66a235693bbd417d89853f1f8a7bc36fa7fe4132',
421
+ 'x-bsv-auth-nonce': 'OJgzWjyWhdBbUC/1Wf0inA0LXi3EEY26NOvn/NFW1u4=',
422
+ 'x-bsv-auth-request-id': 'xhhmPf62T0XUpFVMIx4cDHqL67Ira7Emch29/EU9AJo=',
423
+ 'x-bsv-auth-signature': '304402203b868ad7aed3f18086bce5574c7f4a4224186e952c64811481cb8ae6b80758410220769cf00d0d6e2e892353620f28d1061b26a2dfc5053362fcd022908f2f6d35c6',
424
+ 'x-bsv-auth-version': '0.1',
425
+ 'x-bsv-auth-your-nonce': 'zzEWA7yPnnD1dcy689jdQlV6lQD1pu9XhtrzTJw+ndw/6/d6VFOXJbmF4HouaJOA', // SessionNonce
426
+ 'x-cloud-trace-context': '1bc7b37f69050532c10da101d45e0f2e/5770707259178939058',
427
+ 'x-forwarded-for': '139.60.24.151, 169.254.169.126',
428
+ 'x-forwarded-proto': 'https',
429
+ 'x-nginx-proxy': 'true',
430
+ 'x-real-ip': '169.254.169.126'
431
+ },
432
+ body: '{"jsonrpc":"2.0","method":"makeAvailable","params":[],"id":1}'
433
+ };
434
+ /**
435
+ * 2026-02-16 13:30:34.530 https://storage.babbage.systems/.well-known/auth
436
+ */
437
+ const wellKnownAuth2 = {
438
+ headers: {
439
+ 'accept-encoding': 'br, gzip, deflate',
440
+ 'accept-language': '*',
441
+ accept: '*/*',
442
+ connection: 'close',
443
+ 'content-length': '266',
444
+ 'content-type': 'application/json',
445
+ forwarded: 'for="139.60.24.151";proto=https',
446
+ host: 'storage.babbage.systems',
447
+ 'sec-fetch-mode': 'cors',
448
+ traceparent: '00-f52531a6aa6dec13ba4ec165aa615590-e48b7ddae1ca5217-01',
449
+ 'user-agent': 'node',
450
+ 'x-cloud-trace-context': 'f52531a6aa6dec13ba4ec165aa615590/16468394841454826007;o=1',
451
+ 'x-forwarded-for': '139.60.24.151, 169.254.169.126',
452
+ 'x-forwarded-proto': 'https',
453
+ 'x-nginx-proxy': 'true',
454
+ 'x-real-ip': '169.254.169.126'
455
+ },
456
+ body: '{"version":"0.1","messageType":"initialRequest","identityKey":"03b85662715f2945c0aa26c04177c50a55161c43120caf1a073b7ccc65e152b547","initialNonce":"LPVCEQYXYEr2Y2pjCYZX8FmaZqc1oPPER5chOCtqvFqQxBBAylImSKlR0rPIqgiX","requestedCertificates":{"certifiers":[],"types":{}}}'
457
+ };
458
+ /**
459
+ * 2026-02-16 13:30:34.769 https://storage.babbage.systems/
460
+ */
461
+ const makeAvailable2 = {
462
+ body: '{"jsonrpc":"2.0","method":"makeAvailable","params":[],"id":1}',
463
+ headers: {
464
+ 'accept-encoding': 'br, gzip, deflate',
465
+ 'accept-language': '*',
466
+ accept: '*/*',
467
+ connection: 'close',
468
+ 'content-length': '61',
469
+ 'content-type': 'application/json',
470
+ forwarded: 'for="139.60.24.151";proto=https',
471
+ host: 'storage.babbage.systems',
472
+ 'sec-fetch-mode': 'cors',
473
+ traceparent: '00-7d00483fcd60d92106a9dce7c4a39df0-a3027461b3c018f1-00',
474
+ 'user-agent': 'node',
475
+ 'x-bsv-auth-identity-key': '03b85662715f2945c0aa26c04177c50a55161c43120caf1a073b7ccc65e152b547',
476
+ 'x-bsv-auth-nonce': '954FRnp8CoQ6BS6drfYg+F/0vCSpyp3kSMwxckLYRu0=',
477
+ 'x-bsv-auth-request-id': 'xxXd9Gddq436hRjxkdNoxXTaz8k5VyTGQRdS/Aer1ks=',
478
+ 'x-bsv-auth-signature': '3045022100e476674b0ab85d362adefd479cf35ebdd547dbf91917d9e82d27aafe7939532e022008f4b2aa6f264d73ce1638e3767d8b4c16d7c92b315b3668c7d7ff97c5dc681d',
479
+ 'x-bsv-auth-version': '0.1',
480
+ 'x-bsv-auth-your-nonce': 'qEH+mrEcyA+ZOLy0NQtyybGcRiHjp4eHtHHJQLxzYqosbGsSrcWvTY2kLdaRq9dQ',
481
+ 'x-cloud-trace-context': '7d00483fcd60d92106a9dce7c4a39df0/11746078741112035569',
482
+ 'x-forwarded-for': '139.60.24.151, 169.254.169.126',
483
+ 'x-forwarded-proto': 'https',
484
+ 'x-nginx-proxy': 'true',
485
+ 'x-real-ip': '169.254.169.126'
486
+ }
487
+ };
223
488
  //# sourceMappingURL=StorageClient.man.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StorageClient.man.test.js","sourceRoot":"","sources":["../../../../../src/storage/remoting/__test/StorageClient.man.test.ts"],"names":[],"mappings":";;AAAA,kCAAwG;AACxG,0FAAmE;AAEnE,QAAQ,CAAC,+CAA+C,EAAE,GAAG,EAAE;IAC7D,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;IAEzB,IAAI,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAChD,IAAI,4BAAG,CAAC,KAAK,CAAC,MAAM,CAAC;YAAE,OAAM;QAC7B,MAAM,GAAG,GAAG,4BAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC9B,MAAM,GAAG,GAAG,aAAa,CAAA,CAAC,uEAAuE;QACjG,MAAM,WAAW,GAAG,WAAW,GAAG,4CAA4C,CAAA;QAC9E,MAAM,CAAC,GAAG,MAAM,4BAAG,CAAC,iCAAiC,CAAC;YACpD,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;YACxC,WAAW;YACX,KAAK,EAAE,MAAM;SACd,CAAC,CAAA;QAEF,MAAM,QAAQ,GAAG,SAAS,CAAA;QAC1B,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAA;QAC1E,MAAM,OAAO,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,CAAA;QAC3C,MAAM,KAAK,GAAG,IAAI,WAAK,EAAE,CAAA;QACzB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAEhC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAAA;YACxC,MAAM,CAAC,OAAO,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;YACtC,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC,CAAA;YAChG,IAAI,OAAO,CAAC,YAAY,KAAK,CAAC,EAAE,CAAC;gBAC/B,8DAA8D;gBAC9D,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;oBACtC,MAAM,EAAE,CAAC,QAAQ,CAAC;oBAClB,WAAW,EAAE,UAAU,QAAQ,EAAE;oBACjC,OAAO,EAAE;wBACP;4BACE,MAAM,EAAE,QAAQ;4BAChB,aAAa,EAAE,IAAI,CAAC,KAAK,EAAE;4BAC3B,QAAQ,EAAE,CAAC;4BACX,iBAAiB,EAAE,QAAQ;4BAC3B,IAAI,EAAE,CAAC,QAAQ,CAAC;yBACjB;qBACF;oBACD,OAAO,EAAE;wBACP,gBAAgB,EAAE,KAAK;wBACvB,sBAAsB,EAAE,KAAK;qBAC9B;iBACF,CAAC,CAAA;gBACF,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAA;gBAC7B,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,CAAC,IAAI,IAAI,CAAC,CAAA;YAChD,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;gBAC5B,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;oBACpC,oCAAoC;oBACpC,MAAM,MAAM,GAAG,4BAAG,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAA;oBAChD,MAAM,qBAAqB,GAAG,MAAM,MAAM,CAAC,cAAc,EAAE,CAAA;oBAC3D,8DAA8D;oBAC9D,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;wBACtC,MAAM,EAAE,CAAC,QAAQ,CAAC;wBAClB,WAAW,EAAE,WAAW,QAAQ,EAAE;wBAClC,SAAS,EAAE,OAAO,CAAC,IAAI;wBACvB,MAAM,EAAE;4BACN;gCACE,qBAAqB;gCACrB,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ;gCACrC,gBAAgB,EAAE,WAAW,QAAQ,EAAE;6BACxC;yBACF;wBACD,OAAO,EAAE;4BACP,gBAAgB,EAAE,KAAK;4BACvB,sBAAsB,EAAE,KAAK;yBAC9B;qBACF,CAAC,CAAA;oBACF,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,UAAU,EAAE,CAAA;oBAC5C,IAAI,GAAG,CAAC,mBAAmB,EAAE,CAAC;wBAC5B,MAAM,EAAE,GAAG,GAAG,CAAC,mBAAoB,CAAA;wBACnC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,CAAA;wBACjC,MAAM,UAAU,GAAG,UAAI,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;wBACzC,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAG,CAAA;wBACxD,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,uBAAuB,GAAG,MAAM,CAAA;wBAC7C,MAAM,EAAE,CAAC,IAAI,EAAE,CAAA;wBACf,MAAM,eAAe,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,eAAgB,CAAC,KAAK,EAAE,CAAA;wBAC7D,MAAM,QAAQ,GAAmB;4BAC/B,SAAS,EAAE,EAAE,CAAC,SAAS;4BACvB,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,eAAe,EAAE,EAAE;4BAClC,OAAO,EAAE;gCACP,cAAc,EAAE,IAAI;gCACpB,MAAM,EAAE,KAAK;gCACb,sBAAsB,EAAE,KAAK;6BAC9B;yBACF,CAAA;wBACD,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;wBAC9C,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAA;wBAC5B,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,QAAQ,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,CAAA;oBAC/D,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QACjD,IAAI,4BAAG,CAAC,KAAK,CAAC,MAAM,CAAC;YAAE,OAAM;QAC7B,MAAM,GAAG,GAAG,4BAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC9B,oGAAoG;QACpG,iFAAiF;QACjF,MAAM,WAAW,GAAG,iCAAiC,CAAA;QACrD,MAAM,CAAC,GAAG,MAAM,4BAAG,CAAC,iCAAiC,CAAC;YACpD,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;YACxC,WAAW;YACX,KAAK,EAAE,MAAM;SACd,CAAC,CAAA;QAEF,MAAM,QAAQ,GAAG,SAAS,CAAA;QAC1B,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAA;QAC1E,MAAM,OAAO,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,CAAA;QAC3C,MAAM,KAAK,GAAG,IAAI,WAAK,EAAE,CAAA;QACzB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAEhC,MAAM,KAAK,GAAG,CAAC,CAAA;QACf,MAAM,sBAAsB,GAAG,KAAK,CAAA;QACpC,MAAM,QAAQ,GAAG,CAAC,CAAA;QAElB,IAAI,OAAO,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,qBAAqB,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;QAE5G,MAAM,OAAO,GAAG,KAAK,GAAG,OAAO,CAAC,YAAY,CAAA;QAE5C,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAAA;QACxC,IAAI,OAAO,GAAG,OAAO,GAAG,KAAK,EAAE,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC,WAAW,OAAO,wBAAwB,OAAO,GAAG,KAAK,+BAA+B,CAAC,CAAA;YACtG,OAAM;QACR,CAAC;QAED,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YAChB,MAAM,cAAc,GAAkC,EAAE,CAAA;YAExD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;gBACjC,8DAA8D;gBAC9D,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;oBAChC,MAAM,EAAE,CAAC,QAAQ,CAAC;oBAClB,WAAW,EAAE,UAAU,QAAQ,EAAE;oBACjC,OAAO,EAAE;wBACP;4BACE,MAAM,EAAE,QAAQ;4BAChB,aAAa,EAAE,IAAI,CAAC,KAAK,EAAE;4BAC3B,QAAQ;4BACR,iBAAiB,EAAE,QAAQ;4BAC3B,IAAI,EAAE,CAAC,QAAQ,CAAC;yBACjB;qBACF;oBACD,OAAO,EAAE;wBACP,gBAAgB,EAAE,KAAK;wBACvB,sBAAsB;qBACvB;iBACF,CAAC,CAAA;gBACF,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC1B,CAAC;YAED,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;YACvD,OAAO,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,MAAM,gCAAgC,aAAa,CAAC,MAAM,gBAAgB,CAAC,CAAA;YACzG,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;gBAChC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAA;gBAC7B,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,CAAC,IAAI,IAAI,CAAC,CAAA;YAChD,CAAC;YACD,OAAO,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,qBAAqB,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;QAC1G,CAAC;QAED,MAAM,qBAAqB,GAAkC,EAAE,CAAA;QAC/D,MAAM,IAAI,GAAG,UAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAK,CAAC,CAAA;QAE3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;YAC5B,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACpC,oCAAoC;gBACpC,MAAM,MAAM,GAAG,4BAAG,CAAC,cAAc,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;gBAC9C,MAAM,qBAAqB,GAAG,MAAM,MAAM,CAAC,cAAc,EAAE,CAAA;gBAC3D,8DAA8D;gBAC9D,MAAM,EAAE,GAAG,gBAAU,CAAC,mBAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA,CAAC,4CAA4C;gBAClG,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,CAAA;gBAC9C,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;oBAChC,MAAM,EAAE,CAAC,QAAQ,CAAC;oBAClB,WAAW,EAAE,WAAW,QAAQ,EAAE;oBAClC,SAAS;oBACT,MAAM,EAAE;wBACN;4BACE,qBAAqB;4BACrB,QAAQ,EAAE,CAAC,CAAC,QAAQ;4BACpB,gBAAgB,EAAE,WAAW,QAAQ,EAAE;yBACxC;qBACF;oBACD,OAAO,EAAE;wBACP,gBAAgB,EAAE,KAAK;wBACvB,sBAAsB;qBACvB;iBACF,CAAC,CAAA;gBACF,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACjC,CAAC;QACH,CAAC;QAED,MAAM,oBAAoB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAA;QACrE,OAAO,CAAC,GAAG,CACT,GAAG,qBAAqB,CAAC,MAAM,uCAAuC,oBAAoB,CAAC,MAAM,uBAAuB,CACzH,CAAA;QAED,MAAM,mBAAmB,GAAgC,EAAE,CAAA;QAE3D,KAAK,MAAM,GAAG,IAAI,oBAAoB,EAAE,CAAC;YACvC,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,UAAU,EAAE,CAAA;YAC5C,IAAI,GAAG,CAAC,mBAAmB,EAAE,CAAC;gBAC5B,MAAM,EAAE,GAAG,GAAG,CAAC,mBAAoB,CAAA;gBACnC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,CAAA;gBACjC,MAAM,UAAU,GAAG,UAAI,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;gBACzC,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAG,CAAA;gBACxD,MAAM,MAAM,GAAG,4BAAG,CAAC,cAAc,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;gBAC9C,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,uBAAuB,GAAG,MAAM,CAAA;gBAC7C,MAAM,EAAE,CAAC,IAAI,EAAE,CAAA;gBACf,MAAM,eAAe,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,eAAgB,CAAC,KAAK,EAAE,CAAA;gBAC7D,MAAM,QAAQ,GAAmB;oBAC/B,SAAS,EAAE,EAAE,CAAC,SAAS;oBACvB,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,eAAe,EAAE,EAAE;oBAClC,OAAO,EAAE;wBACP,cAAc,EAAE,IAAI;wBACpB,MAAM,EAAE,KAAK;wBACb,sBAAsB;qBACvB;iBACF,CAAA;gBACD,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;gBACxC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAC9B,CAAC;QACH,CAAC;QAED,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;QACjE,OAAO,CAAC,GAAG,CACT,GAAG,mBAAmB,CAAC,MAAM,qCAAqC,kBAAkB,CAAC,MAAM,qBAAqB,CACjH,CAAA;QAED,KAAK,MAAM,EAAE,IAAI,kBAAkB,EAAE,CAAC;YACpC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAA;YAC5B,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,CAAC,IAAI,EAAE,CAAC,CAAA;QAChD,CAAC;QAED,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"StorageClient.man.test.js","sourceRoot":"","sources":["../../../../../src/storage/remoting/__test/StorageClient.man.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"KnexMigrations.d.ts","sourceRoot":"","sources":["../../../../src/storage/schema/KnexMigrations.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAKvC,UAAU,SAAS;IACjB,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACjC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACpC,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,UAAU,eAAe,CAAC,cAAc;IACtC,aAAa,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAAA;IAC3E,gBAAgB,CAAC,SAAS,EAAE,cAAc,GAAG,MAAM,CAAA;IACnD,YAAY,CAAC,SAAS,EAAE,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;CAC5D;AAED,qBAAa,cAAe,YAAW,eAAe,CAAC,MAAM,CAAC;IASnD,KAAK,EAAE,KAAK;IACZ,WAAW,EAAE,MAAM;IACnB,kBAAkB,EAAE,MAAM;IAC1B,qBAAqB,EAAE,MAAM;IAXtC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAK;IAE1C;;;;OAIG;gBAEM,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,MAAM,EACnB,kBAAkB,EAAE,MAAM,EAC1B,qBAAqB,EAAE,MAAM;IAKhC,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAGxC,gBAAgB,CAAC,SAAS,EAAE,MAAM;IAG5B,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAInD,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;WAK9B,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;IAK/C,eAAe,CACb,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,kBAAkB,EAAE,MAAM,EAC1B,qBAAqB,EAAE,MAAM,GAC5B,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC;CAiZ7B;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAoB7E"}
1
+ {"version":3,"file":"KnexMigrations.d.ts","sourceRoot":"","sources":["../../../../src/storage/schema/KnexMigrations.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAKvC,UAAU,SAAS;IACjB,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACjC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACpC,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,UAAU,eAAe,CAAC,cAAc;IACtC,aAAa,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAAA;IAC3E,gBAAgB,CAAC,SAAS,EAAE,cAAc,GAAG,MAAM,CAAA;IACnD,YAAY,CAAC,SAAS,EAAE,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;CAC5D;AAED,qBAAa,cAAe,YAAW,eAAe,CAAC,MAAM,CAAC;IASnD,KAAK,EAAE,KAAK;IACZ,WAAW,EAAE,MAAM;IACnB,kBAAkB,EAAE,MAAM;IAC1B,qBAAqB,EAAE,MAAM;IAXtC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAK;IAE1C;;;;OAIG;gBAEM,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,MAAM,EACnB,kBAAkB,EAAE,MAAM,EAC1B,qBAAqB,EAAE,MAAM;IAKhC,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAGxC,gBAAgB,CAAC,SAAS,EAAE,MAAM;IAG5B,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAInD,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;WAK9B,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;IAK/C,eAAe,CACb,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,kBAAkB,EAAE,MAAM,EAC1B,qBAAqB,EAAE,MAAM,GAC5B,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC;CA2b7B;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAoB7E"}
@@ -20,7 +20,7 @@ class KnexMigrations {
20
20
  this.migrations = this.setupMigrations(chain, storageName, storageIdentityKey, maxOutputScriptLength);
21
21
  }
22
22
  async getMigrations() {
23
- return Object.keys(this.migrations).sort();
23
+ return Object.keys(this.migrations).sort((a, b) => a.localeCompare(b));
24
24
  }
25
25
  getMigrationName(migration) {
26
26
  return migration;
@@ -60,6 +60,46 @@ class KnexMigrations {
60
60
  });
61
61
  }
62
62
  };
63
+ migrations['2026-02-27-001 add listOutputs path indexes'] = {
64
+ async up(knex) {
65
+ await knex.schema.alterTable('outputs', table => {
66
+ table.index(['userId', 'spendable', 'outputId'], 'idx_outputs_user_spendable_outputid');
67
+ table.index(['userId', 'basketId', 'spendable', 'outputId'], 'idx_outputs_user_basket_spendable_outputid');
68
+ });
69
+ await knex.schema.alterTable('output_tags_map', table => {
70
+ table.index(['outputId', 'isDeleted', 'outputTagId'], 'idx_output_tags_map_output_deleted_tag');
71
+ });
72
+ await knex.schema.alterTable('tx_labels_map', table => {
73
+ table.index(['transactionId', 'isDeleted'], 'idx_tx_labels_map_tx_deleted');
74
+ });
75
+ },
76
+ async down(knex) {
77
+ await knex.schema.alterTable('tx_labels_map', table => {
78
+ table.dropIndex(['transactionId', 'isDeleted'], 'idx_tx_labels_map_tx_deleted');
79
+ });
80
+ await knex.schema.alterTable('output_tags_map', table => {
81
+ table.dropIndex(['outputId', 'isDeleted', 'outputTagId'], 'idx_output_tags_map_output_deleted_tag');
82
+ });
83
+ await knex.schema.alterTable('outputs', table => {
84
+ table.dropIndex(['userId', 'basketId', 'spendable', 'outputId'], 'idx_outputs_user_basket_spendable_outputid');
85
+ table.dropIndex(['userId', 'spendable', 'outputId'], 'idx_outputs_user_spendable_outputid');
86
+ });
87
+ }
88
+ };
89
+ migrations['2026-02-27-002 add createAction path indexes'] = {
90
+ async up(knex) {
91
+ await knex.schema.alterTable('outputs', table => {
92
+ table.index(['userId', 'basketId', 'spendable', 'satoshis'], 'idx_outputs_user_basket_spendable_satoshis');
93
+ table.index(['spentBy'], 'idx_outputs_spentby');
94
+ });
95
+ },
96
+ async down(knex) {
97
+ await knex.schema.alterTable('outputs', table => {
98
+ table.dropIndex(['spentBy'], 'idx_outputs_spentby');
99
+ table.dropIndex(['userId', 'basketId', 'spendable', 'satoshis'], 'idx_outputs_user_basket_spendable_satoshis');
100
+ });
101
+ }
102
+ };
63
103
  migrations['2025-10-18-002 add proven_tx_reqs txid index'] = {
64
104
  async up(knex) {
65
105
  await knex.schema.alterTable('proven_tx_reqs', table => {