cojson 0.15.1 → 0.15.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.
@@ -1,4 +1,4 @@
1
1
 
2
- > cojson@0.15.1 build /home/runner/_work/jazz/jazz/packages/cojson
2
+ > cojson@0.15.2 build /home/runner/_work/jazz/jazz/packages/cojson
3
3
  > rm -rf ./dist && tsc --sourceMap --outDir dist
4
4
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # cojson
2
2
 
3
+ ## 0.15.2
4
+
5
+ ### Patch Changes
6
+
7
+ - 4b964ed: Add debug code on transactions parsing
8
+
3
9
  ## 0.15.1
4
10
 
5
11
  ### Patch Changes
@@ -1 +1 @@
1
- {"version":3,"file":"coValueCore.d.ts","sourceRoot":"","sources":["../../src/coValueCore/coValueCore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coValueCore.d.ts","sourceRoot":"","sources":["../../src/coValueCore/coValueCore.ts"],"names":[],"mappings":"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"}
@@ -398,11 +398,20 @@ export class CoValueCore {
398
398
  continue;
399
399
  }
400
400
  if (tx.privacy === "trusting") {
401
- allTransactions.push({
402
- txID,
403
- madeAt: tx.madeAt,
404
- changes: parseJSON(tx.changes),
405
- });
401
+ try {
402
+ allTransactions.push({
403
+ txID,
404
+ madeAt: tx.madeAt,
405
+ changes: parseJSON(tx.changes),
406
+ });
407
+ }
408
+ catch (e) {
409
+ logger.error("Failed to parse trusting transaction on " + this.id, {
410
+ err: e,
411
+ txID,
412
+ changes: tx.changes.slice(0, 50),
413
+ });
414
+ }
406
415
  continue;
407
416
  }
408
417
  if (options?.ignorePrivateTransactions) {
@@ -418,7 +427,17 @@ export class CoValueCore {
418
427
  in: this.id,
419
428
  tx: txID,
420
429
  });
421
- decryptedChanges = decryptedString && parseJSON(decryptedString);
430
+ try {
431
+ decryptedChanges = decryptedString && parseJSON(decryptedString);
432
+ }
433
+ catch (e) {
434
+ logger.error("Failed to parse private transaction on " + this.id, {
435
+ err: e,
436
+ txID,
437
+ changes: decryptedString?.slice(0, 50),
438
+ });
439
+ continue;
440
+ }
422
441
  this._decryptionCache[tx.encryptedChanges] = decryptedChanges;
423
442
  }
424
443
  if (!decryptedChanges) {
@@ -1 +1 @@
1
- {"version":3,"file":"coValueCore.js","sourceRoot":"","sources":["../../src/coValueCore/coValueCore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coValueCore.js","sourceRoot":"","sources":["../../src/coValueCore/coValueCore.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
+ import { encrypt } from "jazz-crypto-rs";
1
2
  import { assert, afterEach, beforeEach, expect, test, vi } from "vitest";
3
+ import { bytesToBase64url } from "../base64url.js";
2
4
  import { CoValueCore } from "../coValueCore/coValueCore.js";
3
5
  import { WasmCrypto } from "../crypto/WasmCrypto.js";
4
6
  import { stableStringify } from "../jsonStringify.js";
@@ -217,4 +219,101 @@ test("listeners are notified even if the previous listener threw an error", asyn
217
219
  expect(mapOnNode2.get("hello")).toBe("world");
218
220
  errorLog.mockRestore();
219
221
  });
222
+ test("getValidTransactions should skip trusting transactions with invalid JSON", () => {
223
+ const [agent, sessionID] = randomAgentAndSessionID();
224
+ const node = new LocalNode(agent.agentSecret, sessionID, Crypto);
225
+ const coValue = node.createCoValue({
226
+ type: "costream",
227
+ ruleset: { type: "unsafeAllowAll" },
228
+ meta: null,
229
+ ...Crypto.createdNowUnique(),
230
+ });
231
+ // Create a valid transaction first
232
+ const validTransaction = {
233
+ privacy: "trusting",
234
+ madeAt: Date.now(),
235
+ changes: stableStringify([{ hello: "world" }]),
236
+ };
237
+ const { expectedNewHash: expectedNewHash1 } = coValue.verified.expectedNewHashAfter(node.currentSessionID, [
238
+ validTransaction,
239
+ ]);
240
+ coValue
241
+ .tryAddTransactions(node.currentSessionID, [validTransaction], expectedNewHash1, Crypto.sign(agent.currentSignerSecret(), expectedNewHash1), "immediate")
242
+ ._unsafeUnwrap();
243
+ // Create an invalid transaction with malformed JSON
244
+ const invalidTransaction = {
245
+ privacy: "trusting",
246
+ madeAt: Date.now() + 1,
247
+ changes: '{"invalid": json}', // Invalid JSON string
248
+ };
249
+ const { expectedNewHash: expectedNewHash2 } = coValue.verified.expectedNewHashAfter(node.currentSessionID, [
250
+ invalidTransaction,
251
+ ]);
252
+ coValue
253
+ .tryAddTransactions(node.currentSessionID, [invalidTransaction], expectedNewHash2, Crypto.sign(agent.currentSignerSecret(), expectedNewHash2), "immediate")
254
+ ._unsafeUnwrap();
255
+ // Get valid transactions - should only include the valid one
256
+ const validTransactions = coValue.getValidTransactions();
257
+ expect(validTransactions).toHaveLength(1);
258
+ expect(validTransactions[0]?.changes).toEqual([{ hello: "world" }]);
259
+ });
260
+ test("getValidTransactions should skip private transactions with invalid JSON", () => {
261
+ const [agent, sessionID] = randomAgentAndSessionID();
262
+ const node = new LocalNode(agent.agentSecret, sessionID, Crypto);
263
+ const group = node.createGroup();
264
+ group.addMember("everyone", "writer");
265
+ const coValue = node.createCoValue({
266
+ type: "costream",
267
+ ruleset: { type: "ownedByGroup", group: group.id },
268
+ meta: null,
269
+ ...Crypto.createdNowUnique(),
270
+ });
271
+ const { secret: keySecret, id: keyID } = coValue.getCurrentReadKey();
272
+ assert(keySecret);
273
+ const encrypted = Crypto.encryptForTransaction([{ hello: "world" }], keySecret, {
274
+ in: coValue.id,
275
+ tx: coValue.nextTransactionID(),
276
+ });
277
+ // Create a valid private transaction first
278
+ const validTransaction = {
279
+ privacy: "private",
280
+ madeAt: Date.now(),
281
+ keyUsed: keyID,
282
+ encryptedChanges: encrypted,
283
+ };
284
+ const { expectedNewHash: expectedNewHash1 } = coValue.verified.expectedNewHashAfter(node.currentSessionID, [
285
+ validTransaction,
286
+ ]);
287
+ coValue
288
+ .tryAddTransactions(node.currentSessionID, [validTransaction], expectedNewHash1, Crypto.sign(agent.currentSignerSecret(), expectedNewHash1), "immediate")
289
+ ._unsafeUnwrap();
290
+ const textEncoder = new TextEncoder();
291
+ const brokenChange = `encrypted_U${bytesToBase64url(encrypt(textEncoder.encode('{"invalid": json}'), keySecret, textEncoder.encode(stableStringify({
292
+ in: coValue.id,
293
+ tx: coValue.nextTransactionID(),
294
+ }))))}`;
295
+ // Create an invalid private transaction with malformed JSON after decryption
296
+ const invalidTransaction = {
297
+ privacy: "private",
298
+ madeAt: Date.now() + 1,
299
+ keyUsed: keyID,
300
+ encryptedChanges: brokenChange,
301
+ };
302
+ const { expectedNewHash: expectedNewHash2 } = coValue.verified.expectedNewHashAfter(node.currentSessionID, [
303
+ invalidTransaction,
304
+ ]);
305
+ coValue
306
+ .tryAddTransactions(node.currentSessionID, [invalidTransaction], expectedNewHash2, Crypto.sign(agent.currentSignerSecret(), expectedNewHash2), "immediate")
307
+ ._unsafeUnwrap();
308
+ // Get valid transactions - should skip the invalid one
309
+ const validTransactions = coValue.getValidTransactions({
310
+ ignorePrivateTransactions: false,
311
+ });
312
+ // Since we can't easily create valid private transactions in this test setup,
313
+ // we just verify that the method doesn't crash and handles the invalid JSON gracefully
314
+ expect(validTransactions).toBeDefined();
315
+ expect(Array.isArray(validTransactions)).toBe(true);
316
+ expect(validTransactions.length).toBe(1);
317
+ expect(validTransactions[0]?.changes).toEqual([{ hello: "world" }]);
318
+ });
220
319
  //# sourceMappingURL=coValueCore.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"coValueCore.test.js","sourceRoot":"","sources":["../../src/tests/coValueCore.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coValueCore.test.js","sourceRoot":"","sources":["../../src/tests/coValueCore.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -25,7 +25,7 @@
25
25
  },
26
26
  "type": "module",
27
27
  "license": "MIT",
28
- "version": "0.15.1",
28
+ "version": "0.15.2",
29
29
  "devDependencies": {
30
30
  "@opentelemetry/sdk-metrics": "^2.0.0",
31
31
  "typescript": "5.6.2"
@@ -621,11 +621,19 @@ export class CoValueCore {
621
621
  }
622
622
 
623
623
  if (tx.privacy === "trusting") {
624
- allTransactions.push({
625
- txID,
626
- madeAt: tx.madeAt,
627
- changes: parseJSON(tx.changes),
628
- });
624
+ try {
625
+ allTransactions.push({
626
+ txID,
627
+ madeAt: tx.madeAt,
628
+ changes: parseJSON(tx.changes),
629
+ });
630
+ } catch (e) {
631
+ logger.error("Failed to parse trusting transaction on " + this.id, {
632
+ err: e,
633
+ txID,
634
+ changes: tx.changes.slice(0, 50),
635
+ });
636
+ }
629
637
  continue;
630
638
  }
631
639
 
@@ -650,7 +658,17 @@ export class CoValueCore {
650
658
  tx: txID,
651
659
  },
652
660
  );
653
- decryptedChanges = decryptedString && parseJSON(decryptedString);
661
+
662
+ try {
663
+ decryptedChanges = decryptedString && parseJSON(decryptedString);
664
+ } catch (e) {
665
+ logger.error("Failed to parse private transaction on " + this.id, {
666
+ err: e,
667
+ txID,
668
+ changes: decryptedString?.slice(0, 50),
669
+ });
670
+ continue;
671
+ }
654
672
  this._decryptionCache[tx.encryptedChanges] = decryptedChanges;
655
673
  }
656
674
 
@@ -1,4 +1,6 @@
1
+ import { encrypt } from "jazz-crypto-rs";
1
2
  import { assert, afterEach, beforeEach, expect, test, vi } from "vitest";
3
+ import { bytesToBase64url } from "../base64url.js";
2
4
  import { CoValueCore } from "../coValueCore/coValueCore.js";
3
5
  import { Transaction } from "../coValueCore/verifiedState.js";
4
6
  import { MapOpPayload } from "../coValues/coMap.js";
@@ -348,3 +350,165 @@ test("listeners are notified even if the previous listener threw an error", asyn
348
350
 
349
351
  errorLog.mockRestore();
350
352
  });
353
+
354
+ test("getValidTransactions should skip trusting transactions with invalid JSON", () => {
355
+ const [agent, sessionID] = randomAgentAndSessionID();
356
+ const node = new LocalNode(agent.agentSecret, sessionID, Crypto);
357
+
358
+ const coValue = node.createCoValue({
359
+ type: "costream",
360
+ ruleset: { type: "unsafeAllowAll" },
361
+ meta: null,
362
+ ...Crypto.createdNowUnique(),
363
+ });
364
+
365
+ // Create a valid transaction first
366
+ const validTransaction: Transaction = {
367
+ privacy: "trusting",
368
+ madeAt: Date.now(),
369
+ changes: stableStringify([{ hello: "world" }]),
370
+ };
371
+
372
+ const { expectedNewHash: expectedNewHash1 } =
373
+ coValue.verified.expectedNewHashAfter(node.currentSessionID, [
374
+ validTransaction,
375
+ ]);
376
+
377
+ coValue
378
+ .tryAddTransactions(
379
+ node.currentSessionID,
380
+ [validTransaction],
381
+ expectedNewHash1,
382
+ Crypto.sign(agent.currentSignerSecret(), expectedNewHash1),
383
+ "immediate",
384
+ )
385
+ ._unsafeUnwrap();
386
+
387
+ // Create an invalid transaction with malformed JSON
388
+ const invalidTransaction: Transaction = {
389
+ privacy: "trusting",
390
+ madeAt: Date.now() + 1,
391
+ changes: '{"invalid": json}' as any, // Invalid JSON string
392
+ };
393
+
394
+ const { expectedNewHash: expectedNewHash2 } =
395
+ coValue.verified.expectedNewHashAfter(node.currentSessionID, [
396
+ invalidTransaction,
397
+ ]);
398
+
399
+ coValue
400
+ .tryAddTransactions(
401
+ node.currentSessionID,
402
+ [invalidTransaction],
403
+ expectedNewHash2,
404
+ Crypto.sign(agent.currentSignerSecret(), expectedNewHash2),
405
+ "immediate",
406
+ )
407
+ ._unsafeUnwrap();
408
+
409
+ // Get valid transactions - should only include the valid one
410
+ const validTransactions = coValue.getValidTransactions();
411
+
412
+ expect(validTransactions).toHaveLength(1);
413
+ expect(validTransactions[0]?.changes).toEqual([{ hello: "world" }]);
414
+ });
415
+
416
+ test("getValidTransactions should skip private transactions with invalid JSON", () => {
417
+ const [agent, sessionID] = randomAgentAndSessionID();
418
+ const node = new LocalNode(agent.agentSecret, sessionID, Crypto);
419
+
420
+ const group = node.createGroup();
421
+ group.addMember("everyone", "writer");
422
+
423
+ const coValue = node.createCoValue({
424
+ type: "costream",
425
+ ruleset: { type: "ownedByGroup", group: group.id },
426
+ meta: null,
427
+ ...Crypto.createdNowUnique(),
428
+ });
429
+
430
+ const { secret: keySecret, id: keyID } = coValue.getCurrentReadKey();
431
+
432
+ assert(keySecret);
433
+
434
+ const encrypted = Crypto.encryptForTransaction(
435
+ [{ hello: "world" }],
436
+ keySecret,
437
+ {
438
+ in: coValue.id,
439
+ tx: coValue.nextTransactionID(),
440
+ },
441
+ );
442
+
443
+ // Create a valid private transaction first
444
+ const validTransaction: Transaction = {
445
+ privacy: "private",
446
+ madeAt: Date.now(),
447
+ keyUsed: keyID,
448
+ encryptedChanges: encrypted as any,
449
+ };
450
+
451
+ const { expectedNewHash: expectedNewHash1 } =
452
+ coValue.verified.expectedNewHashAfter(node.currentSessionID, [
453
+ validTransaction,
454
+ ]);
455
+
456
+ coValue
457
+ .tryAddTransactions(
458
+ node.currentSessionID,
459
+ [validTransaction],
460
+ expectedNewHash1,
461
+ Crypto.sign(agent.currentSignerSecret(), expectedNewHash1),
462
+ "immediate",
463
+ )
464
+ ._unsafeUnwrap();
465
+
466
+ const textEncoder = new TextEncoder();
467
+ const brokenChange = `encrypted_U${bytesToBase64url(
468
+ encrypt(
469
+ textEncoder.encode('{"invalid": json}'),
470
+ keySecret,
471
+ textEncoder.encode(
472
+ stableStringify({
473
+ in: coValue.id,
474
+ tx: coValue.nextTransactionID(),
475
+ }),
476
+ ),
477
+ ),
478
+ )}`;
479
+
480
+ // Create an invalid private transaction with malformed JSON after decryption
481
+ const invalidTransaction: Transaction = {
482
+ privacy: "private",
483
+ madeAt: Date.now() + 1,
484
+ keyUsed: keyID,
485
+ encryptedChanges: brokenChange as any,
486
+ };
487
+
488
+ const { expectedNewHash: expectedNewHash2 } =
489
+ coValue.verified.expectedNewHashAfter(node.currentSessionID, [
490
+ invalidTransaction,
491
+ ]);
492
+
493
+ coValue
494
+ .tryAddTransactions(
495
+ node.currentSessionID,
496
+ [invalidTransaction],
497
+ expectedNewHash2,
498
+ Crypto.sign(agent.currentSignerSecret(), expectedNewHash2),
499
+ "immediate",
500
+ )
501
+ ._unsafeUnwrap();
502
+
503
+ // Get valid transactions - should skip the invalid one
504
+ const validTransactions = coValue.getValidTransactions({
505
+ ignorePrivateTransactions: false,
506
+ });
507
+
508
+ // Since we can't easily create valid private transactions in this test setup,
509
+ // we just verify that the method doesn't crash and handles the invalid JSON gracefully
510
+ expect(validTransactions).toBeDefined();
511
+ expect(Array.isArray(validTransactions)).toBe(true);
512
+ expect(validTransactions.length).toBe(1);
513
+ expect(validTransactions[0]?.changes).toEqual([{ hello: "world" }]);
514
+ });