cojson 0.7.35-unique.2 → 0.8.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 (77) hide show
  1. package/.turbo/turbo-build.log +2 -7
  2. package/.turbo/turbo-lint.log +4 -0
  3. package/.turbo/turbo-test.log +321 -253
  4. package/CHANGELOG.md +10 -2
  5. package/dist/PeerState.js +66 -0
  6. package/dist/PeerState.js.map +1 -0
  7. package/dist/PriorityBasedMessageQueue.js +51 -0
  8. package/dist/PriorityBasedMessageQueue.js.map +1 -0
  9. package/dist/base64url.js.map +1 -1
  10. package/dist/coValue.js.map +1 -1
  11. package/dist/coValueCore.js +3 -6
  12. package/dist/coValueCore.js.map +1 -1
  13. package/dist/coValues/account.js +0 -1
  14. package/dist/coValues/account.js.map +1 -1
  15. package/dist/coValues/coList.js.map +1 -1
  16. package/dist/coValues/coMap.js.map +1 -1
  17. package/dist/coValues/coStream.js +14 -15
  18. package/dist/coValues/coStream.js.map +1 -1
  19. package/dist/coValues/group.js.map +1 -1
  20. package/dist/coreToCoValue.js.map +1 -1
  21. package/dist/crypto/PureJSCrypto.js.map +1 -1
  22. package/dist/crypto/WasmCrypto.js.map +1 -1
  23. package/dist/crypto/crypto.js +3 -0
  24. package/dist/crypto/crypto.js.map +1 -1
  25. package/dist/index.js +3 -2
  26. package/dist/index.js.map +1 -1
  27. package/dist/jsonStringify.js.map +1 -1
  28. package/dist/localNode.js +7 -7
  29. package/dist/localNode.js.map +1 -1
  30. package/dist/permissions.js.map +1 -1
  31. package/dist/priority.js +31 -0
  32. package/dist/priority.js.map +1 -0
  33. package/dist/storage/FileSystem.js.map +1 -1
  34. package/dist/storage/chunksAndKnownStates.js +2 -0
  35. package/dist/storage/chunksAndKnownStates.js.map +1 -1
  36. package/dist/storage/index.js.map +1 -1
  37. package/dist/streamUtils.js.map +1 -1
  38. package/dist/sync.js +7 -18
  39. package/dist/sync.js.map +1 -1
  40. package/dist/tests/PeerState.test.js +80 -0
  41. package/dist/tests/PeerState.test.js.map +1 -0
  42. package/dist/tests/PriorityBasedMessageQueue.test.js +97 -0
  43. package/dist/tests/PriorityBasedMessageQueue.test.js.map +1 -0
  44. package/dist/tests/account.test.js +1 -2
  45. package/dist/tests/account.test.js.map +1 -1
  46. package/dist/tests/coMap.test.js.map +1 -1
  47. package/dist/tests/coStream.test.js +34 -1
  48. package/dist/tests/coStream.test.js.map +1 -1
  49. package/dist/tests/permissions.test.js +41 -42
  50. package/dist/tests/permissions.test.js.map +1 -1
  51. package/dist/tests/priority.test.js +61 -0
  52. package/dist/tests/priority.test.js.map +1 -0
  53. package/dist/tests/sync.test.js +327 -17
  54. package/dist/tests/sync.test.js.map +1 -1
  55. package/dist/tests/testUtils.js +1 -2
  56. package/dist/tests/testUtils.js.map +1 -1
  57. package/dist/typeUtils/expectGroup.js.map +1 -1
  58. package/package.json +3 -3
  59. package/src/PeerState.ts +85 -0
  60. package/src/PriorityBasedMessageQueue.ts +77 -0
  61. package/src/coValueCore.ts +4 -9
  62. package/src/coValues/account.ts +0 -1
  63. package/src/coValues/coStream.ts +21 -18
  64. package/src/crypto/crypto.ts +5 -0
  65. package/src/index.ts +3 -3
  66. package/src/localNode.ts +6 -7
  67. package/src/priority.ts +39 -0
  68. package/src/storage/chunksAndKnownStates.ts +2 -0
  69. package/src/sync.ts +19 -34
  70. package/src/tests/PeerState.test.ts +92 -0
  71. package/src/tests/PriorityBasedMessageQueue.test.ts +111 -0
  72. package/src/tests/account.test.ts +1 -2
  73. package/src/tests/coStream.test.ts +58 -1
  74. package/src/tests/permissions.test.ts +41 -42
  75. package/src/tests/priority.test.ts +75 -0
  76. package/src/tests/sync.test.ts +488 -26
  77. package/src/tests/testUtils.ts +1 -2
@@ -1 +1 @@
1
- {"version":3,"file":"sync.test.js","sourceRoot":"","sources":["../../src/tests/sync.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync.test.js","sourceRoot":"","sources":["../../src/tests/sync.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import { expect } from "vitest";
2
- import { newRandomSessionID } from "../coValueCore.js";
3
2
  import { LocalNode } from "../localNode.js";
4
3
  import { expectGroup } from "../typeUtils/expectGroup.js";
5
4
  import { ControlledAgent } from "../coValues/account.js";
@@ -7,7 +6,7 @@ import { WasmCrypto } from "../crypto/WasmCrypto.js";
7
6
  const Crypto = await WasmCrypto.create();
8
7
  export function randomAnonymousAccountAndSessionID() {
9
8
  const agentSecret = Crypto.newRandomAgentSecret();
10
- const sessionID = newRandomSessionID(Crypto.getAgentID(agentSecret));
9
+ const sessionID = Crypto.newRandomSessionID(Crypto.getAgentID(agentSecret));
11
10
  return [new ControlledAgent(agentSecret, Crypto), sessionID];
12
11
  }
13
12
  export function newGroup() {
@@ -1 +1 @@
1
- {"version":3,"file":"testUtils.js","sourceRoot":"","sources":["../../src/tests/testUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"testUtils.js","sourceRoot":"","sources":["../../src/tests/testUtils.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"expectGroup.js","sourceRoot":"","sources":["../../src/typeUtils/expectGroup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAmB,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,MAAM,UAAU,WAAW,CAAC,OAAmB;IAC3C,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAC/B,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE;QAC1C,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;KACtD;IAED,IAAI,CAAC,CAAC,GAAG,YAAY,QAAQ,CAAC,EAAE;QAC5B,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;KACrC;IAED,OAAO,GAAG,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"expectGroup.js","sourceRoot":"","sources":["../../src/typeUtils/expectGroup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAmB,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,MAAM,UAAU,WAAW,CAAC,OAAmB;IAC3C,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAC/B,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACvD,CAAC;IAED,IAAI,CAAC,CAAC,GAAG,YAAY,QAAQ,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACtC,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC"}
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "types": "src/index.ts",
6
6
  "type": "module",
7
7
  "license": "MIT",
8
- "version": "0.7.35-unique.2",
8
+ "version": "0.8.0",
9
9
  "devDependencies": {
10
10
  "@types/jest": "^29.5.3",
11
11
  "@typescript-eslint/eslint-plugin": "^6.2.1",
@@ -14,8 +14,8 @@
14
14
  "eslint-config-prettier": "^9.1.0",
15
15
  "eslint-plugin-neverthrow": "^1.1.4",
16
16
  "eslint-plugin-require-extensions": "^0.1.3",
17
- "typescript": "5.0.2",
18
- "vitest": "^0.34.6"
17
+ "typescript": "^5.3.3",
18
+ "vitest": "1.5.3"
19
19
  },
20
20
  "dependencies": {
21
21
  "@hazae41/berith": "^1.2.6",
@@ -0,0 +1,85 @@
1
+ import { RawCoID } from "./ids.js";
2
+ import { CO_VALUE_PRIORITY } from "./priority.js";
3
+ import {
4
+ PriorityBasedMessageQueue,
5
+ QueueEntry,
6
+ } from "./PriorityBasedMessageQueue.js";
7
+ import { CoValueKnownState, Peer, SyncMessage } from "./sync.js";
8
+
9
+ export class PeerState {
10
+ constructor(private peer: Peer) {}
11
+
12
+ readonly optimisticKnownStates: { [id: RawCoID]: CoValueKnownState } = {};
13
+ readonly toldKnownState: Set<RawCoID> = new Set();
14
+ get id() {
15
+ return this.peer.id;
16
+ }
17
+
18
+ get role() {
19
+ return this.peer.role;
20
+ }
21
+
22
+ get priority() {
23
+ return this.peer.priority;
24
+ }
25
+
26
+ get crashOnClose() {
27
+ return this.peer.crashOnClose;
28
+ }
29
+
30
+ /**
31
+ * We set as default priority HIGH to handle all the messages without a
32
+ * priority property as HIGH priority.
33
+ *
34
+ * This way we consider all the non-content messsages as HIGH priority.
35
+ */
36
+ private queue = new PriorityBasedMessageQueue(CO_VALUE_PRIORITY.HIGH);
37
+ private processing = false;
38
+ public closed = false;
39
+
40
+ async processQueue() {
41
+ if (this.processing) {
42
+ return;
43
+ }
44
+
45
+ this.processing = true;
46
+
47
+
48
+ let entry: QueueEntry | undefined;
49
+ while ((entry = this.queue.pull())) {
50
+ // Awaiting the push to send one message at a time
51
+ // This way when the peer is "under pressure" we can enqueue all
52
+ // the coming messages and organize them by priority
53
+ await this.peer.outgoing
54
+ .push(entry.msg)
55
+ .then(entry.resolve)
56
+ .catch(entry.reject);
57
+ }
58
+
59
+ this.processing = false;
60
+ }
61
+
62
+ pushOutgoingMessage(msg: SyncMessage) {
63
+ const promise = this.queue.push(msg);
64
+
65
+ void this.processQueue();
66
+
67
+ return promise;
68
+ }
69
+
70
+ get incoming() {
71
+ if (this.closed) {
72
+ return (async function* () {
73
+ yield "Disconnected" as const;
74
+ })();
75
+ }
76
+
77
+ return this.peer.incoming;
78
+ }
79
+
80
+ gracefulShutdown() {
81
+ console.debug("Gracefully closing", this.id);
82
+ this.peer.outgoing.close();
83
+ this.closed = true;
84
+ }
85
+ }
@@ -0,0 +1,77 @@
1
+ import { CoValuePriority } from "./priority.js";
2
+ import { SyncMessage } from "./sync.js";
3
+
4
+ function promiseWithResolvers<R>() {
5
+ let resolve = (_: R) => {};
6
+ let reject = (_: unknown) => {};
7
+
8
+ const promise = new Promise<R>((_resolve, _reject) => {
9
+ resolve = _resolve;
10
+ reject = _reject;
11
+ });
12
+
13
+ return {
14
+ promise,
15
+ resolve,
16
+ reject,
17
+ };
18
+ }
19
+
20
+ export type QueueEntry = {
21
+ msg: SyncMessage;
22
+ promise: Promise<void>;
23
+ resolve: () => void;
24
+ reject: (_: unknown) => void;
25
+ };
26
+
27
+ /**
28
+ * Since we have a fixed range of priority values (0-7) we can create a fixed array of queues.
29
+ */
30
+ type Tuple<T, N extends number, A extends unknown[] = []> = A extends { length: N } ? A : Tuple<T, N, [...A, T]>;
31
+ type QueueTuple = Tuple<QueueEntry[], 8>;
32
+
33
+ export class PriorityBasedMessageQueue {
34
+ private queues: QueueTuple = [
35
+ [],
36
+ [],
37
+ [],
38
+ [],
39
+ [],
40
+ [],
41
+ [],
42
+ [],
43
+ ];
44
+
45
+ private getQueue(priority: CoValuePriority) {
46
+ return this.queues[priority];
47
+ }
48
+
49
+ constructor(
50
+ private defaultPriority: CoValuePriority,
51
+ ) {}
52
+
53
+ public push(msg: SyncMessage) {
54
+ const { promise, resolve, reject } = promiseWithResolvers<void>();
55
+ const entry: QueueEntry = { msg, promise, resolve, reject };
56
+
57
+ if ("priority" in msg) {
58
+ const queue = this.getQueue(msg.priority);
59
+
60
+ queue?.push(entry);
61
+ } else {
62
+ this.getQueue(this.defaultPriority).push(entry);
63
+ }
64
+
65
+ return promise;
66
+ }
67
+
68
+ public pull() {
69
+ const activeQueue = this.queues.find((queue) => queue.length > 0);
70
+
71
+ if (!activeQueue) {
72
+ return undefined;
73
+ }
74
+
75
+ return activeQueue.shift();
76
+ }
77
+ }
@@ -10,7 +10,6 @@ import {
10
10
  SignerID,
11
11
  } from "./crypto/crypto.js";
12
12
  import { JsonObject, JsonValue } from "./jsonValue.js";
13
- import { base58 } from "@scure/base";
14
13
  import {
15
14
  PermissionsDef as RulesetDef,
16
15
  determineValidTransactions,
@@ -19,7 +18,7 @@ import {
19
18
  import { RawGroup } from "./coValues/group.js";
20
19
  import { LocalNode, ResolveAccountAgentError } from "./localNode.js";
21
20
  import { CoValueKnownState, NewContentMessage } from "./sync.js";
22
- import { AgentID, RawCoID, SessionID, TransactionID } from "./ids.js";
21
+ import { RawCoID, SessionID, TransactionID } from "./ids.js";
23
22
  import { RawAccountID, ControlledAccountOrAgent } from "./coValues/account.js";
24
23
  import { Stringified, parseJSON, stableStringify } from "./jsonStringify.js";
25
24
  import { coreToCoValue } from "./coreToCoValue.js";
@@ -27,6 +26,7 @@ import { expectGroup } from "./typeUtils/expectGroup.js";
27
26
  import { isAccountID } from "./typeUtils/isAccountID.js";
28
27
  import { accountOrAgentIDfromSessionID } from "./typeUtils/accountOrAgentIDfromSessionID.js";
29
28
  import { err, ok, Result } from "neverthrow";
29
+ import { getPriorityFromHeader } from "./priority.js";
30
30
 
31
31
  /**
32
32
  In order to not block other concurrently syncing CoValues we introduce a maximum size of transactions,
@@ -53,13 +53,6 @@ export function idforHeader(
53
53
  return `co_z${hash.slice("shortHash_z".length)}`;
54
54
  }
55
55
 
56
- export function newRandomSessionID(accountID: RawAccountID | AgentID): SessionID {
57
- return `${accountID}_session_z${base58.encode(
58
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
59
- (globalThis as any).crypto.getRandomValues(new Uint8Array(8)),
60
- )}`;
61
- }
62
-
63
56
  type SessionLog = {
64
57
  transactions: Transaction[];
65
58
  lastHash?: Hash;
@@ -850,6 +843,7 @@ export class CoValueCore {
850
843
  action: "content",
851
844
  id: this.id,
852
845
  header: knownState?.header ? undefined : this.header,
846
+ priority: getPriorityFromHeader(this.header),
853
847
  new: {},
854
848
  };
855
849
 
@@ -922,6 +916,7 @@ export class CoValueCore {
922
916
  id: this.id,
923
917
  header: undefined,
924
918
  new: {},
919
+ priority: getPriorityFromHeader(this.header),
925
920
  };
926
921
  pieces.push(currentPiece);
927
922
  pieceSize = pieceSize - oldPieceSize;
@@ -133,7 +133,6 @@ export class RawControlledAccount<Meta extends AccountMeta = AccountMeta>
133
133
  }
134
134
  }
135
135
 
136
- /** @hidden */
137
136
  export class ControlledAgent implements ControlledAccountOrAgent {
138
137
  constructor(
139
138
  public agentSecret: AgentSecret,
@@ -96,15 +96,20 @@ export class RawCoStreamView<
96
96
  }
97
97
 
98
98
  getSingleStream(): Item[] | undefined {
99
- if (Object.keys(this.items).length === 0) {
99
+ const streams = Object.values(this.items);
100
+ const firstStream = streams[0];
101
+
102
+ if (!firstStream) {
100
103
  return undefined;
101
- } else if (Object.keys(this.items).length !== 1) {
104
+ }
105
+
106
+ if (streams.length > 1) {
102
107
  throw new Error(
103
108
  "CoStream.getSingleStream() can only be called when there is exactly one stream",
104
109
  );
105
110
  }
106
111
 
107
- return Object.values(this.items)[0]?.map((item) => item.value);
112
+ return firstStream.map((item) => item.value);
108
113
  }
109
114
 
110
115
  sessions(): SessionID[] {
@@ -264,14 +269,26 @@ export class RawBinaryCoStreamView<
264
269
  extends RawCoStreamView<BinaryStreamItem, Meta>
265
270
  implements RawCoValue
266
271
  {
272
+ isBinaryStreamEnded() {
273
+ const items = this.getSingleStream();
274
+
275
+ if (!items || items.length === 0) {
276
+ return false;
277
+ }
278
+
279
+ const lastItem = items[items.length - 1];
280
+
281
+ return lastItem?.type === "end";
282
+ }
283
+
267
284
  getBinaryChunks(
268
285
  allowUnfinished?: boolean,
269
286
  ):
270
287
  | (BinaryStreamInfo & { chunks: Uint8Array[]; finished: boolean })
271
288
  | undefined {
272
- // const before = performance.now();
273
289
  const items = this.getSingleStream();
274
290
 
291
+ // No active streams
275
292
  if (!items) return;
276
293
 
277
294
  const start = items[0];
@@ -288,9 +305,6 @@ export class RawBinaryCoStreamView<
288
305
  const chunks: Uint8Array[] = [];
289
306
 
290
307
  let finished = false;
291
- // let totalLength = 0;
292
-
293
- let lastProgressUpdate = Date.now();
294
308
 
295
309
  for (const item of items.slice(1)) {
296
310
  if (item.type === "end") {
@@ -306,20 +320,9 @@ export class RawBinaryCoStreamView<
306
320
  const chunk = base64URLtoBytes(
307
321
  item.chunk.slice(binary_U_prefixLength),
308
322
  );
309
- // totalLength += chunk.length;
310
323
  chunks.push(chunk);
311
-
312
- if (Date.now() - lastProgressUpdate > 100) {
313
- lastProgressUpdate = Date.now();
314
- }
315
324
  }
316
325
 
317
- // const after = performance.now();
318
- // console.log(
319
- // "getBinaryChunks bandwidth in MB/s",
320
- // (1000 * totalLength) / (after - before) / (1024 * 1024)
321
- // );
322
-
323
326
  return {
324
327
  mimeType: start.mimeType,
325
328
  fileName: start.fileName,
@@ -2,6 +2,7 @@ import { JsonValue } from "../jsonValue.js";
2
2
  import { base58 } from "@scure/base";
3
3
  import { AgentID, RawCoID, TransactionID } from "../ids.js";
4
4
  import { Stringified, parseJSON, stableStringify } from "../jsonStringify.js";
5
+ import { RawAccountID, SessionID } from "../index.js";
5
6
 
6
7
  export type SignerSecret = `signerSecret_z${string}`;
7
8
  export type SignerID = `signer_z${string}`;
@@ -290,6 +291,10 @@ export abstract class CryptoProvider<Blake3State = any> {
290
291
  }),
291
292
  )}`;
292
293
  }
294
+
295
+ newRandomSessionID(accountID: RawAccountID | AgentID): SessionID {
296
+ return `${accountID}_session_z${base58.encode(this.randomBytes(8))}`;
297
+ }
293
298
  }
294
299
 
295
300
  export type Hash = `hash_z${string}`;
package/src/index.ts CHANGED
@@ -1,13 +1,12 @@
1
1
  import {
2
2
  CoValueCore,
3
3
  type CoValueUniqueness,
4
- newRandomSessionID,
5
4
  MAX_RECOMMENDED_TX_SIZE,
6
5
  idforHeader,
7
6
  } from "./coValueCore.js";
8
7
  import { accountOrAgentIDfromSessionID } from "./typeUtils/accountOrAgentIDfromSessionID.js";
9
8
  import { LocalNode } from "./localNode.js";
10
- import type { RawCoValue } from "./coValue.js";
9
+ import { type RawCoValue } from "./coValue.js";
11
10
  import { RawCoMap } from "./coValues/coMap.js";
12
11
  import { RawCoList } from "./coValues/coList.js";
13
12
  import { RawCoStream, RawBinaryCoStream } from "./coValues/coStream.js";
@@ -62,10 +61,10 @@ type Value = JsonValue | AnyRawCoValue;
62
61
 
63
62
  import { LSMStorage, BlockFilename, WalFilename } from "./storage/index.js";
64
63
  import { FileSystem } from "./storage/FileSystem.js";
64
+ import { getPriorityFromHeader } from "./priority.js";
65
65
 
66
66
  /** @hidden */
67
67
  export const cojsonInternals = {
68
- newRandomSessionID,
69
68
  connectedPeers,
70
69
  rawCoIDtoBytes,
71
70
  rawCoIDfromBytes,
@@ -81,6 +80,7 @@ export const cojsonInternals = {
81
80
  idforHeader,
82
81
  StreamingHash,
83
82
  Channel,
83
+ getPriorityFromHeader,
84
84
  };
85
85
 
86
86
  export {
package/src/localNode.ts CHANGED
@@ -3,7 +3,6 @@ import {
3
3
  CoValueCore,
4
4
  CoValueHeader,
5
5
  CoValueUniqueness,
6
- newRandomSessionID,
7
6
  } from "./coValueCore.js";
8
7
  import {
9
8
  InviteSecret,
@@ -89,7 +88,7 @@ export class LocalNode {
89
88
  const throwawayAgent = crypto.newRandomAgentSecret();
90
89
  const setupNode = new LocalNode(
91
90
  new ControlledAgent(throwawayAgent, crypto),
92
- newRandomSessionID(crypto.getAgentID(throwawayAgent)),
91
+ crypto.newRandomSessionID(crypto.getAgentID(throwawayAgent)),
93
92
  crypto,
94
93
  );
95
94
 
@@ -97,7 +96,7 @@ export class LocalNode {
97
96
 
98
97
  const nodeWithAccount = account.core.node.testWithDifferentAccount(
99
98
  account,
100
- newRandomSessionID(account.id),
99
+ crypto.newRandomSessionID(account.id),
101
100
  );
102
101
 
103
102
  const accountOnNodeWithAccount =
@@ -183,7 +182,7 @@ export class LocalNode {
183
182
  }): Promise<LocalNode> {
184
183
  const loadingNode = new LocalNode(
185
184
  new ControlledAgent(accountSecret, crypto),
186
- newRandomSessionID(accountID),
185
+ crypto.newRandomSessionID(accountID),
187
186
  crypto,
188
187
  );
189
188
 
@@ -207,7 +206,7 @@ export class LocalNode {
207
206
  // since this is all synchronous, we can just swap out nodes for the SyncManager
208
207
  const node = loadingNode.testWithDifferentAccount(
209
208
  controlledAccount,
210
- sessionID || newRandomSessionID(accountID),
209
+ sessionID || crypto.newRandomSessionID(accountID),
211
210
  );
212
211
  node.syncManager = loadingNode.syncManager;
213
212
  node.syncManager.local = node;
@@ -430,7 +429,7 @@ export class LocalNode {
430
429
  group.core
431
430
  .testWithDifferentAccount(
432
431
  new ControlledAgent(inviteAgentSecret, this.crypto),
433
- newRandomSessionID(inviteAgentID),
432
+ this.crypto.newRandomSessionID(inviteAgentID),
434
433
  )
435
434
  .getCurrentContent(),
436
435
  );
@@ -500,7 +499,7 @@ export class LocalNode {
500
499
  )
501
500
  .testWithDifferentAccount(
502
501
  new ControlledAgent(agentSecret, this.crypto),
503
- newRandomSessionID(accountAgentID),
502
+ this.crypto.newRandomSessionID(accountAgentID),
504
503
  )
505
504
  .getCurrentContent(),
506
505
  );