cojson 0.13.30 → 0.13.33

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 (46) hide show
  1. package/.turbo/turbo-build.log +5 -4
  2. package/.turbo/turbo-lint.log +4 -0
  3. package/.turbo/turbo-test.log +1001 -0
  4. package/CHANGELOG.md +13 -0
  5. package/dist/coValueCore/coValueCore.d.ts.map +1 -1
  6. package/dist/coValueCore/coValueCore.js +1 -4
  7. package/dist/coValueCore/coValueCore.js.map +1 -1
  8. package/dist/coValues/group.d.ts.map +1 -1
  9. package/dist/coValues/group.js +4 -1
  10. package/dist/coValues/group.js.map +1 -1
  11. package/dist/localNode.d.ts.map +1 -1
  12. package/dist/localNode.js +1 -1
  13. package/dist/localNode.js.map +1 -1
  14. package/dist/permissions.d.ts.map +1 -1
  15. package/dist/permissions.js +0 -12
  16. package/dist/permissions.js.map +1 -1
  17. package/dist/tests/group.inheritance.test.d.ts +2 -0
  18. package/dist/tests/group.inheritance.test.d.ts.map +1 -0
  19. package/dist/tests/group.inheritance.test.js +235 -0
  20. package/dist/tests/group.inheritance.test.js.map +1 -0
  21. package/dist/tests/group.invite.test.d.ts +2 -0
  22. package/dist/tests/group.invite.test.d.ts.map +1 -0
  23. package/dist/tests/group.invite.test.js +214 -0
  24. package/dist/tests/group.invite.test.js.map +1 -0
  25. package/dist/tests/group.removeMember.test.js +22 -0
  26. package/dist/tests/group.removeMember.test.js.map +1 -1
  27. package/dist/tests/group.roleOf.test.d.ts +2 -0
  28. package/dist/tests/group.roleOf.test.d.ts.map +1 -0
  29. package/dist/tests/group.roleOf.test.js +275 -0
  30. package/dist/tests/group.roleOf.test.js.map +1 -0
  31. package/dist/tests/group.test.js +1 -505
  32. package/dist/tests/group.test.js.map +1 -1
  33. package/dist/tests/permissions.test.js +0 -33
  34. package/dist/tests/permissions.test.js.map +1 -1
  35. package/package.json +1 -1
  36. package/src/coValueCore/coValueCore.ts +1 -6
  37. package/src/coValues/group.ts +4 -1
  38. package/src/localNode.ts +3 -1
  39. package/src/permissions.ts +0 -18
  40. package/src/tests/group.inheritance.test.ts +418 -0
  41. package/src/tests/group.invite.test.ts +354 -0
  42. package/src/tests/group.removeMember.test.ts +48 -0
  43. package/src/tests/group.roleOf.test.ts +450 -0
  44. package/src/tests/group.test.ts +0 -852
  45. package/src/tests/permissions.test.ts +0 -52
  46. package/src/tests/sync.invite.test.ts +12 -4
@@ -0,0 +1,1001 @@
1
+
2
+ > cojson@0.7.35-unique.2 test /Users/anselm/jazz/jazz/packages/cojson
3
+ > vitest --run
4
+
5
+
6
+ RUN v0.34.6 /Users/anselm/jazz/jazz/packages/cojson
7
+
8
+ ✓ src/base64url.test.ts (1 test) 5ms
9
+ stderr | src/tests/crypto.test.ts > Encryption for transactions doesn't decrypt with a wrong key
10
+ Decryption error SyntaxError: Unexpected token ':', ":-S��Cѵ���" is not valid JSON
11
+ at JSON.parse (<anonymous>)
12
+ at Module.parseJSON (/Users/anselm/jazz/jazz/packages/cojson/src/jsonStringify.ts:67:17)
13
+ at WasmCrypto.decrypt (/Users/anselm/jazz/jazz/packages/cojson/src/crypto/crypto.ts:157:20)
14
+ at WasmCrypto.decryptForTransaction (/Users/anselm/jazz/jazz/packages/cojson/src/crypto/crypto.ts:186:21)
15
+ at /Users/anselm/jazz/jazz/packages/cojson/src/tests/crypto.test.ts:141:31
16
+ at file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:135:14
17
+ at file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:58:26
18
+ at runTest (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:663:17)
19
+ at runSuite (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:782:15)
20
+ at runFiles (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:834:5)
21
+ Decryption error SyntaxError: Unexpected token '\', "\-��Ͱ�5h
22
+ �j" is not valid JSON
23
+ at JSON.parse (<anonymous>)
24
+ at Module.parseJSON (/Users/anselm/jazz/jazz/packages/cojson/src/jsonStringify.ts:67:17)
25
+ at WasmCrypto.decrypt (/Users/anselm/jazz/jazz/packages/cojson/src/crypto/crypto.ts:157:20)
26
+ at WasmCrypto.decryptForTransaction (/Users/anselm/jazz/jazz/packages/cojson/src/crypto/crypto.ts:186:21)
27
+ at /Users/anselm/jazz/jazz/packages/cojson/src/tests/crypto.test.ts:146:31
28
+ at file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:135:14
29
+ at file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:58:26
30
+ at runTest (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:663:17)
31
+ at runSuite (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:782:15)
32
+ at runFiles (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:834:5)
33
+
34
+ stderr | src/tests/crypto.test.ts > Encryption of keySecrets doesn't decrypt with a wrong key
35
+ Decryption error SyntaxError: Unexpected token '�', "�c#�5�����"... is not valid JSON
36
+ at JSON.parse (<anonymous>)
37
+ at Module.parseJSON (/Users/anselm/jazz/jazz/packages/cojson/src/jsonStringify.ts:67:17)
38
+ at WasmCrypto.decrypt (/Users/anselm/jazz/jazz/packages/cojson/src/crypto/crypto.ts:157:20)
39
+ at WasmCrypto.decryptKeySecret (/Users/anselm/jazz/jazz/packages/cojson/src/crypto/crypto.ts:232:21)
40
+ at /Users/anselm/jazz/jazz/packages/cojson/src/tests/crypto.test.ts:182:30
41
+ at file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:135:14
42
+ at file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:58:26
43
+ at runTest (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:663:17)
44
+ at runSuite (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:782:15)
45
+ at runFiles (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:834:5)
46
+
47
+ ✓ src/tests/crypto.test.ts (8 tests) 89ms
48
+ stdout | src/tests/sync.test.ts > No matter the optimistic known state, node respects invalid known state messages and resyncs
49
+ Sending correction
50
+
51
+ ✓ src/tests/coValueCore.test.ts (4 tests) 61ms
52
+ ✓ src/tests/coList.test.ts (4 tests) 16ms
53
+ ✓ src/tests/group.test.ts (4 tests) 50ms
54
+ ✓ src/tests/coStream.test.ts (6 tests) 63ms
55
+ ✓ src/tests/coMap.test.ts (5 tests) 66ms
56
+ stderr | src/tests/cryptoImpl.test.ts > Crypto 'Wasm' > encrypt and decrypt
57
+ Decryption error SyntaxError: Unexpected token '�', "��w�hh� 곞K\" is not valid JSON
58
+ at JSON.parse (<anonymous>)
59
+ at Module.parseJSON (/Users/anselm/jazz/jazz/packages/cojson/src/jsonStringify.ts:67:17)
60
+ at WasmCrypto.decrypt (/Users/anselm/jazz/jazz/packages/cojson/src/crypto/crypto.ts:157:20)
61
+ at /Users/anselm/jazz/jazz/packages/cojson/src/tests/cryptoImpl.test.ts:116:18
62
+ at file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:135:14
63
+ at file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:58:26
64
+ at runTest (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:663:17)
65
+ at runSuite (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:782:15)
66
+ at runSuite (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:782:15)
67
+ at runFiles (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:834:5)
68
+ Decryption error SyntaxError: Unexpected token '�', "�A#mUȲ�@w�X " is not valid JSON
69
+ at JSON.parse (<anonymous>)
70
+ at Module.parseJSON (/Users/anselm/jazz/jazz/packages/cojson/src/jsonStringify.ts:67:17)
71
+ at WasmCrypto.decrypt (/Users/anselm/jazz/jazz/packages/cojson/src/crypto/crypto.ts:157:20)
72
+ at /Users/anselm/jazz/jazz/packages/cojson/src/tests/cryptoImpl.test.ts:120:18
73
+ at file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:135:14
74
+ at file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:58:26
75
+ at runTest (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:663:17)
76
+ at runSuite (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:782:15)
77
+ at runSuite (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:782:15)
78
+ at runFiles (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:834:5)
79
+
80
+ stderr | src/tests/cryptoImpl.test.ts > Crypto 'PureJS' > encrypt and decrypt
81
+ Decryption error SyntaxError: Unexpected token '�', "��w�hh� 곞K\" is not valid JSON
82
+ at JSON.parse (<anonymous>)
83
+ at Module.parseJSON (/Users/anselm/jazz/jazz/packages/cojson/src/jsonStringify.ts:67:17)
84
+ at PureJSCrypto.decrypt (/Users/anselm/jazz/jazz/packages/cojson/src/crypto/crypto.ts:157:20)
85
+ at /Users/anselm/jazz/jazz/packages/cojson/src/tests/cryptoImpl.test.ts:116:18
86
+ at file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:135:14
87
+ at file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:58:26
88
+ at runTest (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:663:17)
89
+ at runSuite (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:782:15)
90
+ at runSuite (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:782:15)
91
+ at runFiles (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:834:5)
92
+ Decryption error SyntaxError: Unexpected token '�', "�A#mUȲ�@w�X " is not valid JSON
93
+ at JSON.parse (<anonymous>)
94
+ at Module.parseJSON (/Users/anselm/jazz/jazz/packages/cojson/src/jsonStringify.ts:67:17)
95
+ at PureJSCrypto.decrypt (/Users/anselm/jazz/jazz/packages/cojson/src/crypto/crypto.ts:157:20)
96
+ at /Users/anselm/jazz/jazz/packages/cojson/src/tests/cryptoImpl.test.ts:120:18
97
+ at file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:135:14
98
+ at file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:58:26
99
+ at runTest (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:663:17)
100
+ at runSuite (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:782:15)
101
+ at runSuite (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:782:15)
102
+ at runFiles (file:///Users/anselm/jazz/jazz/node_modules/.pnpm/@vitest+runner@0.34.6/node_modules/@vitest/runner/dist/index.js:834:5)
103
+
104
+ ✓ src/tests/cryptoImpl.test.ts (22 tests) 220ms
105
+ ✓ src/tests/account.test.ts (3 tests) 166ms
106
+ stdout | src/tests/account.test.ts > Can create account with one node, and then load it on another
107
+ After connected peers
108
+ node2 -> node1 {
109
+ "action": "load",
110
+ "id": "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M",
111
+ "header": false,
112
+ "sessions": {}
113
+ }
114
+ node1 -> node2 {
115
+ "action": "known",
116
+ "id": "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M",
117
+ "header": true,
118
+ "sessions": {
119
+ "sealer_zBsivTNrrqyqew5vQpghe1eKffSgxfjg7bQf8yif3xKPs/signer_z9C3emBnLBMH9CNCRJ5hxvPH4n17UHg4C38mZT1fYw1VX_session_zGHfocjKtKMz": 3,
120
+ "sealer_zBsivTNrrqyqew5vQpghe1eKffSgxfjg7bQf8yif3xKPs/signer_z9C3emBnLBMH9CNCRJ5hxvPH4n17UHg4C38mZT1fYw1VX_session_zMko4j4qrE7N": 1
121
+ }
122
+ }
123
+ node1 -> node2 {
124
+ "action": "content",
125
+ "id": "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M",
126
+ "header": {
127
+ "type": "comap",
128
+ "ruleset": {
129
+ "type": "group",
130
+ "initialAdmin": "sealer_zBsivTNrrqyqew5vQpghe1eKffSgxfjg7bQf8yif3xKPs/signer_z9C3emBnLBMH9CNCRJ5hxvPH4n17UHg4C38mZT1fYw1VX"
131
+ },
132
+ "meta": {
133
+ "type": "account"
134
+ },
135
+ "createdAt": null,
136
+ "uniqueness": null
137
+ },
138
+ "new": {
139
+ "sealer_zBsivTNrrqyqew5vQpghe1eKffSgxfjg7bQf8yif3xKPs/signer_z9C3emBnLBMH9CNCRJ5hxvPH4n17UHg4C38mZT1fYw1VX_session_zGHfocjKtKMz": {
140
+ "after": 0,
141
+ "newTransactions": [
142
+ {
143
+ "privacy": "trusting",
144
+ "madeAt": 1725557738354,
145
+ "changes": "[{\"key\":\"sealer_zBsi..."
146
+ },
147
+ {
148
+ "privacy": "trusting",
149
+ "madeAt": 1725557738396,
150
+ "changes": "[{\"key\":\"key_z4FRZBs..."
151
+ },
152
+ {
153
+ "privacy": "trusting",
154
+ "madeAt": 1725557738410,
155
+ "changes": "[{\"key\":\"readKey\",\"o..."
156
+ }
157
+ ],
158
+ "lastSignature": "signature_z2URPL3pcay1WjPdhvfTmm1g7Yws6or45uM3XNwrjiK3fsPorjrAJghhYQaqjoYYAACYPNof24g7YdfAtm3eiBfTK"
159
+ },
160
+ "sealer_zBsivTNrrqyqew5vQpghe1eKffSgxfjg7bQf8yif3xKPs/signer_z9C3emBnLBMH9CNCRJ5hxvPH4n17UHg4C38mZT1fYw1VX_session_zMko4j4qrE7N": {
161
+ "after": 0,
162
+ "newTransactions": [
163
+ {
164
+ "privacy": "trusting",
165
+ "madeAt": 1725557738416,
166
+ "changes": "[{\"key\":\"profile\",\"o..."
167
+ }
168
+ ],
169
+ "lastSignature": "signature_z2BpXqZFvjjuWF4HmqQ3u2vnjepJv785zyREfD4u9Pu2zrAGwXWH3ZLsAqzNPqNNDX7UKhoqpcfDfvps6jdBUESsy"
170
+ }
171
+ }
172
+ }
173
+ node2 -> node1 {
174
+ "action": "known",
175
+ "id": "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M",
176
+ "header": true,
177
+ "sessions": {
178
+ "sealer_zBsivTNrrqyqew5vQpghe1eKffSgxfjg7bQf8yif3xKPs/signer_z9C3emBnLBMH9CNCRJ5hxvPH4n17UHg4C38mZT1fYw1VX_session_zGHfocjKtKMz": 3,
179
+ "sealer_zBsivTNrrqyqew5vQpghe1eKffSgxfjg7bQf8yif3xKPs/signer_z9C3emBnLBMH9CNCRJ5hxvPH4n17UHg4C38mZT1fYw1VX_session_zMko4j4qrE7N": 1
180
+ }
181
+ }
182
+ node2 -> node1 {
183
+ "action": "load",
184
+ "id": "co_zaHFe5eNzbbLXkAga8WQxRUo7gL",
185
+ "header": false,
186
+ "sessions": {}
187
+ }
188
+ node1 -> node2 {
189
+ "action": "known",
190
+ "asDependencyOf": "co_zaHFe5eNzbbLXkAga8WQxRUo7gL",
191
+ "id": "co_zKuCRYEMwCD8VBgqStNTewdW794",
192
+ "header": true,
193
+ "sessions": {
194
+ "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M_session_zMko4j4qrE7N": 5
195
+ }
196
+ }
197
+ node1 -> node2 {
198
+ "action": "known",
199
+ "id": "co_zaHFe5eNzbbLXkAga8WQxRUo7gL",
200
+ "header": true,
201
+ "sessions": {
202
+ "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M_session_zMko4j4qrE7N": 1
203
+ }
204
+ }
205
+ node1 -> node2 {
206
+ "action": "content",
207
+ "id": "co_zKuCRYEMwCD8VBgqStNTewdW794",
208
+ "header": {
209
+ "type": "comap",
210
+ "ruleset": {
211
+ "type": "group",
212
+ "initialAdmin": "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M"
213
+ },
214
+ "meta": null,
215
+ "createdAt": "2024-09-05T17:35:38.412Z",
216
+ "uniqueness": "zSBZpzDoZq42t6XNR"
217
+ },
218
+ "new": {
219
+ "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M_session_zMko4j4qrE7N": {
220
+ "after": 0,
221
+ "newTransactions": [
222
+ {
223
+ "privacy": "trusting",
224
+ "madeAt": 1725557738412,
225
+ "changes": "[{\"key\":\"co_z2kGV3hz..."
226
+ },
227
+ {
228
+ "privacy": "trusting",
229
+ "madeAt": 1725557738413,
230
+ "changes": "[{\"key\":\"key_zpBLGbt..."
231
+ },
232
+ {
233
+ "privacy": "trusting",
234
+ "madeAt": 1725557738414,
235
+ "changes": "[{\"key\":\"readKey\",\"o..."
236
+ },
237
+ {
238
+ "privacy": "trusting",
239
+ "madeAt": 1725557738414,
240
+ "changes": "[{\"key\":\"everyone\",\"..."
241
+ },
242
+ {
243
+ "privacy": "trusting",
244
+ "madeAt": 1725557738415,
245
+ "changes": "[{\"key\":\"key_zpBLGbt..."
246
+ }
247
+ ],
248
+ "lastSignature": "signature_z292xXKnysHtegs6yv4RpfxwEoZ4PDpo6jSma94VBbP2yRvsLGjLvxjtjEekcfCCSkG2P2x9K8nEu3r6sNJiGqt15"
249
+ }
250
+ }
251
+ }
252
+ node2 -> node1 {
253
+ "action": "known",
254
+ "id": "co_zKuCRYEMwCD8VBgqStNTewdW794",
255
+ "header": true,
256
+ "sessions": {
257
+ "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M_session_zMko4j4qrE7N": 5
258
+ }
259
+ }
260
+ node1 -> node2 {
261
+ "action": "content",
262
+ "id": "co_zaHFe5eNzbbLXkAga8WQxRUo7gL",
263
+ "header": {
264
+ "type": "comap",
265
+ "ruleset": {
266
+ "type": "ownedByGroup",
267
+ "group": "co_zKuCRYEMwCD8VBgqStNTewdW794"
268
+ },
269
+ "meta": null,
270
+ "createdAt": "2024-09-05T17:35:38.415Z",
271
+ "uniqueness": "z3KT2uSYjxWJchw2a4"
272
+ },
273
+ "new": {
274
+ "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M_session_zMko4j4qrE7N": {
275
+ "after": 0,
276
+ "newTransactions": [
277
+ {
278
+ "privacy": "private",
279
+ "madeAt": 1725557738415,
280
+ "keyUsed": "key_zpBLGbt7cvFvgQ85V",
281
+ "encryptedChanges": "encrypted_UzVAzI2Y-j..."
282
+ }
283
+ ],
284
+ "lastSignature": "signature_z3AvvRzGQYUbKyWJerPjYQshvTBycEWz4AvVimLyTsGaF3GpwHbHXnjp5kVqgkuYteDJnQKBHZVy4vEs6oYhbNS2c"
285
+ }
286
+ }
287
+ }
288
+ node2 -> node1 {
289
+ "action": "load",
290
+ "id": "co_zV1pwZuyzGPzjoahEMfxVvigfSX",
291
+ "header": false,
292
+ "sessions": {}
293
+ }
294
+ node1 -> node2 {
295
+ "action": "known",
296
+ "asDependencyOf": "co_zV1pwZuyzGPzjoahEMfxVvigfSX",
297
+ "id": "co_zVH8ymFo3N8PQcwLV3H9xbHCZVb",
298
+ "header": true,
299
+ "sessions": {
300
+ "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M_session_zMko4j4qrE7N": 3
301
+ }
302
+ }
303
+ node2 -> node1 {
304
+ "action": "known",
305
+ "id": "co_zaHFe5eNzbbLXkAga8WQxRUo7gL",
306
+ "header": true,
307
+ "sessions": {
308
+ "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M_session_zMko4j4qrE7N": 1
309
+ }
310
+ }
311
+ node1 -> node2 {
312
+ "action": "known",
313
+ "id": "co_zV1pwZuyzGPzjoahEMfxVvigfSX",
314
+ "header": true,
315
+ "sessions": {
316
+ "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M_session_zMko4j4qrE7N": 1
317
+ }
318
+ }
319
+ node1 -> node2 {
320
+ "action": "content",
321
+ "id": "co_zVH8ymFo3N8PQcwLV3H9xbHCZVb",
322
+ "header": {
323
+ "type": "comap",
324
+ "ruleset": {
325
+ "type": "group",
326
+ "initialAdmin": "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M"
327
+ },
328
+ "meta": null,
329
+ "createdAt": "2024-09-05T17:35:38.416Z",
330
+ "uniqueness": "z3qXZmD9JxfkGrp9Ho"
331
+ },
332
+ "new": {
333
+ "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M_session_zMko4j4qrE7N": {
334
+ "after": 0,
335
+ "newTransactions": [
336
+ {
337
+ "privacy": "trusting",
338
+ "madeAt": 1725557738416,
339
+ "changes": "[{\"key\":\"co_z2kGV3hz..."
340
+ },
341
+ {
342
+ "privacy": "trusting",
343
+ "madeAt": 1725557738417,
344
+ "changes": "[{\"key\":\"key_z2EbryK..."
345
+ },
346
+ {
347
+ "privacy": "trusting",
348
+ "madeAt": 1725557738417,
349
+ "changes": "[{\"key\":\"readKey\",\"o..."
350
+ }
351
+ ],
352
+ "lastSignature": "signature_zkwjFPWxe9JGY6eh3SuX62CL58wt17N6VynCSCxCD9Kacs4itsL8ESX1x6zRSabC5aqeUPjakgYQExQS8bN63QYE"
353
+ }
354
+ }
355
+ }
356
+ node2 -> node1 {
357
+ "action": "known",
358
+ "id": "co_zVH8ymFo3N8PQcwLV3H9xbHCZVb",
359
+ "header": true,
360
+ "sessions": {
361
+ "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M_session_zMko4j4qrE7N": 3
362
+ }
363
+ }
364
+ node1 -> node2 {
365
+ "action": "content",
366
+ "id": "co_zV1pwZuyzGPzjoahEMfxVvigfSX",
367
+ "header": {
368
+ "type": "comap",
369
+ "ruleset": {
370
+ "type": "ownedByGroup",
371
+ "group": "co_zVH8ymFo3N8PQcwLV3H9xbHCZVb"
372
+ },
373
+ "meta": null,
374
+ "createdAt": "2024-09-05T17:35:38.420Z",
375
+ "uniqueness": "zzXtiUbCUm8YqyGRD"
376
+ },
377
+ "new": {
378
+ "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M_session_zMko4j4qrE7N": {
379
+ "after": 0,
380
+ "newTransactions": [
381
+ {
382
+ "privacy": "private",
383
+ "madeAt": 1725557738421,
384
+ "keyUsed": "key_z2EbryK71gqb2DXkbX",
385
+ "encryptedChanges": "encrypted_U6sY6-uWhj..."
386
+ }
387
+ ],
388
+ "lastSignature": "signature_zccVBJftfenKEBbddxyvcv4BsAsqm9YiN3u9pGUVy5mVJSyqgoWPXoAkjAt9J5WjQ9hyR983yNjCsJZSC1P8kdGk"
389
+ }
390
+ }
391
+ }
392
+ node2 -> node1 {
393
+ "action": "known",
394
+ "id": "co_zV1pwZuyzGPzjoahEMfxVvigfSX",
395
+ "header": true,
396
+ "sessions": {
397
+ "co_z2kGV3hzVM2ZCMSYrMXFZB4cr1M_session_zMko4j4qrE7N": 1
398
+ }
399
+ }
400
+
401
+ stdout | src/tests/sync.test.ts > Can sync a coValue through a server to another client
402
+ client1 -> serverFor1 {
403
+ "action": "load",
404
+ "id": "co_zjGggE5tSaEk9twyMcWQMmmQcKp",
405
+ "header": true,
406
+ "sessions": {
407
+ "sealer_z2RRdNBPeHdMVe23BVAfEotKRiL2T22xqBvr4AZiXUiPv/signer_zAqWV9M9cRo9FoqYDRrnpYg7PwL57DAUhe8SwrhLQQ12x_session_zUh6v5S4sCMY": 3
408
+ }
409
+ }
410
+ client2 -> serverFor2 {
411
+ "action": "load",
412
+ "id": "co_zUmQQ1qxbF5gTkCfcUpHzgp7HW8",
413
+ "header": false,
414
+ "sessions": {}
415
+ }
416
+ serverFor1 -> client1 {
417
+ "action": "known",
418
+ "id": "co_zjGggE5tSaEk9twyMcWQMmmQcKp",
419
+ "header": false,
420
+ "sessions": {}
421
+ }
422
+ client1 -> serverFor1 {
423
+ "action": "load",
424
+ "id": "co_zUmQQ1qxbF5gTkCfcUpHzgp7HW8",
425
+ "header": true,
426
+ "sessions": {
427
+ "sealer_z2RRdNBPeHdMVe23BVAfEotKRiL2T22xqBvr4AZiXUiPv/signer_zAqWV9M9cRo9FoqYDRrnpYg7PwL57DAUhe8SwrhLQQ12x_session_zUh6v5S4sCMY": 1
428
+ }
429
+ }
430
+ client1 -> serverFor1 {
431
+ "action": "content",
432
+ "id": "co_zjGggE5tSaEk9twyMcWQMmmQcKp",
433
+ "header": {
434
+ "type": "comap",
435
+ "ruleset": {
436
+ "type": "group",
437
+ "initialAdmin": "sealer_z2RRdNBPeHdMVe23BVAfEotKRiL2T22xqBvr4AZiXUiPv/signer_zAqWV9M9cRo9FoqYDRrnpYg7PwL57DAUhe8SwrhLQQ12x"
438
+ },
439
+ "meta": null,
440
+ "createdAt": "2024-09-05T17:35:38.446Z",
441
+ "uniqueness": "zee3bWacoiydBEYJC"
442
+ },
443
+ "new": {
444
+ "sealer_z2RRdNBPeHdMVe23BVAfEotKRiL2T22xqBvr4AZiXUiPv/signer_zAqWV9M9cRo9FoqYDRrnpYg7PwL57DAUhe8SwrhLQQ12x_session_zUh6v5S4sCMY": {
445
+ "after": 0,
446
+ "newTransactions": [
447
+ {
448
+ "privacy": "trusting",
449
+ "madeAt": 1725557738447,
450
+ "changes": "[{\"key\":\"sealer_z2RR..."
451
+ },
452
+ {
453
+ "privacy": "trusting",
454
+ "madeAt": 1725557738448,
455
+ "changes": "[{\"key\":\"key_z4pqxtF..."
456
+ },
457
+ {
458
+ "privacy": "trusting",
459
+ "madeAt": 1725557738448,
460
+ "changes": "[{\"key\":\"readKey\",\"o..."
461
+ }
462
+ ],
463
+ "lastSignature": "signature_z4ScNY6PDJFAhmJbkwfSmV1ekScT6uYKZMU94S2PJTD4C3JSJTPwtxkqzDS2kLi4zxNugSyXCH9y283BCLoAMTk5h"
464
+ }
465
+ }
466
+ }
467
+ serverFor1 -> client1 {
468
+ "action": "known",
469
+ "id": "co_zUmQQ1qxbF5gTkCfcUpHzgp7HW8",
470
+ "header": false,
471
+ "sessions": {}
472
+ }
473
+ client1 -> serverFor1 {
474
+ "action": "content",
475
+ "id": "co_zUmQQ1qxbF5gTkCfcUpHzgp7HW8",
476
+ "header": {
477
+ "type": "comap",
478
+ "ruleset": {
479
+ "type": "ownedByGroup",
480
+ "group": "co_zjGggE5tSaEk9twyMcWQMmmQcKp"
481
+ },
482
+ "meta": null,
483
+ "createdAt": "2024-09-05T17:35:38.449Z",
484
+ "uniqueness": "z2aN5yZBhjmYhLzAx9"
485
+ },
486
+ "new": {
487
+ "sealer_z2RRdNBPeHdMVe23BVAfEotKRiL2T22xqBvr4AZiXUiPv/signer_zAqWV9M9cRo9FoqYDRrnpYg7PwL57DAUhe8SwrhLQQ12x_session_zUh6v5S4sCMY": {
488
+ "after": 0,
489
+ "newTransactions": [
490
+ {
491
+ "privacy": "trusting",
492
+ "madeAt": 1725557738449,
493
+ "changes": "[{\"key\":\"hello\",\"op\"..."
494
+ }
495
+ ],
496
+ "lastSignature": "signature_z63RgJujQUrG62zG7JssmzeFEQFDF2d4uTmLn9TTHSgiUEBSqNhcqtkoHdxXzCaRxU6gnEdAyBMFQvEQUx7DTTahW"
497
+ }
498
+ }
499
+ }
500
+ serverFor1 -> client1 {
501
+ "action": "known",
502
+ "id": "co_zjGggE5tSaEk9twyMcWQMmmQcKp",
503
+ "header": true,
504
+ "sessions": {
505
+ "sealer_z2RRdNBPeHdMVe23BVAfEotKRiL2T22xqBvr4AZiXUiPv/signer_zAqWV9M9cRo9FoqYDRrnpYg7PwL57DAUhe8SwrhLQQ12x_session_zUh6v5S4sCMY": 3
506
+ }
507
+ }
508
+ serverFor1 -> client1 {
509
+ "action": "known",
510
+ "id": "co_zUmQQ1qxbF5gTkCfcUpHzgp7HW8",
511
+ "header": true,
512
+ "sessions": {
513
+ "sealer_z2RRdNBPeHdMVe23BVAfEotKRiL2T22xqBvr4AZiXUiPv/signer_zAqWV9M9cRo9FoqYDRrnpYg7PwL57DAUhe8SwrhLQQ12x_session_zUh6v5S4sCMY": 1
514
+ }
515
+ }
516
+ serverFor2 -> client2 {
517
+ "action": "known",
518
+ "asDependencyOf": "co_zUmQQ1qxbF5gTkCfcUpHzgp7HW8",
519
+ "id": "co_zjGggE5tSaEk9twyMcWQMmmQcKp",
520
+ "header": true,
521
+ "sessions": {
522
+ "sealer_z2RRdNBPeHdMVe23BVAfEotKRiL2T22xqBvr4AZiXUiPv/signer_zAqWV9M9cRo9FoqYDRrnpYg7PwL57DAUhe8SwrhLQQ12x_session_zUh6v5S4sCMY": 3
523
+ }
524
+ }
525
+ serverFor2 -> client2 {
526
+ "action": "known",
527
+ "id": "co_zUmQQ1qxbF5gTkCfcUpHzgp7HW8",
528
+ "header": true,
529
+ "sessions": {
530
+ "sealer_z2RRdNBPeHdMVe23BVAfEotKRiL2T22xqBvr4AZiXUiPv/signer_zAqWV9M9cRo9FoqYDRrnpYg7PwL57DAUhe8SwrhLQQ12x_session_zUh6v5S4sCMY": 1
531
+ }
532
+ }
533
+ serverFor2 -> client2 {
534
+ "action": "content",
535
+ "id": "co_zjGggE5tSaEk9twyMcWQMmmQcKp",
536
+ "header": {
537
+ "type": "comap",
538
+ "ruleset": {
539
+ "type": "group",
540
+ "initialAdmin": "sealer_z2RRdNBPeHdMVe23BVAfEotKRiL2T22xqBvr4AZiXUiPv/signer_zAqWV9M9cRo9FoqYDRrnpYg7PwL57DAUhe8SwrhLQQ12x"
541
+ },
542
+ "meta": null,
543
+ "createdAt": "2024-09-05T17:35:38.446Z",
544
+ "uniqueness": "zee3bWacoiydBEYJC"
545
+ },
546
+ "new": {
547
+ "sealer_z2RRdNBPeHdMVe23BVAfEotKRiL2T22xqBvr4AZiXUiPv/signer_zAqWV9M9cRo9FoqYDRrnpYg7PwL57DAUhe8SwrhLQQ12x_session_zUh6v5S4sCMY": {
548
+ "after": 0,
549
+ "newTransactions": [
550
+ {
551
+ "privacy": "trusting",
552
+ "madeAt": 1725557738447,
553
+ "changes": "[{\"key\":\"sealer_z2RR..."
554
+ },
555
+ {
556
+ "privacy": "trusting",
557
+ "madeAt": 1725557738448,
558
+ "changes": "[{\"key\":\"key_z4pqxtF..."
559
+ },
560
+ {
561
+ "privacy": "trusting",
562
+ "madeAt": 1725557738448,
563
+ "changes": "[{\"key\":\"readKey\",\"o..."
564
+ }
565
+ ],
566
+ "lastSignature": "signature_z4ScNY6PDJFAhmJbkwfSmV1ekScT6uYKZMU94S2PJTD4C3JSJTPwtxkqzDS2kLi4zxNugSyXCH9y283BCLoAMTk5h"
567
+ }
568
+ }
569
+ }
570
+ client2 -> serverFor2 {
571
+ "action": "known",
572
+ "id": "co_zjGggE5tSaEk9twyMcWQMmmQcKp",
573
+ "header": true,
574
+ "sessions": {
575
+ "sealer_z2RRdNBPeHdMVe23BVAfEotKRiL2T22xqBvr4AZiXUiPv/signer_zAqWV9M9cRo9FoqYDRrnpYg7PwL57DAUhe8SwrhLQQ12x_session_zUh6v5S4sCMY": 3
576
+ }
577
+ }
578
+ serverFor2 -> client2 {
579
+ "action": "content",
580
+ "id": "co_zUmQQ1qxbF5gTkCfcUpHzgp7HW8",
581
+ "header": {
582
+ "type": "comap",
583
+ "ruleset": {
584
+ "type": "ownedByGroup",
585
+ "group": "co_zjGggE5tSaEk9twyMcWQMmmQcKp"
586
+ },
587
+ "meta": null,
588
+ "createdAt": "2024-09-05T17:35:38.449Z",
589
+ "uniqueness": "z2aN5yZBhjmYhLzAx9"
590
+ },
591
+ "new": {
592
+ "sealer_z2RRdNBPeHdMVe23BVAfEotKRiL2T22xqBvr4AZiXUiPv/signer_zAqWV9M9cRo9FoqYDRrnpYg7PwL57DAUhe8SwrhLQQ12x_session_zUh6v5S4sCMY": {
593
+ "after": 0,
594
+ "newTransactions": [
595
+ {
596
+ "privacy": "trusting",
597
+ "madeAt": 1725557738449,
598
+ "changes": "[{\"key\":\"hello\",\"op\"..."
599
+ }
600
+ ],
601
+ "lastSignature": "signature_z63RgJujQUrG62zG7JssmzeFEQFDF2d4uTmLn9TTHSgiUEBSqNhcqtkoHdxXzCaRxU6gnEdAyBMFQvEQUx7DTTahW"
602
+ }
603
+ }
604
+ }
605
+ client2 -> serverFor2 {
606
+ "action": "known",
607
+ "id": "co_zUmQQ1qxbF5gTkCfcUpHzgp7HW8",
608
+ "header": true,
609
+ "sessions": {
610
+ "sealer_z2RRdNBPeHdMVe23BVAfEotKRiL2T22xqBvr4AZiXUiPv/signer_zAqWV9M9cRo9FoqYDRrnpYg7PwL57DAUhe8SwrhLQQ12x_session_zUh6v5S4sCMY": 1
611
+ }
612
+ }
613
+
614
+ stdout | src/tests/sync.test.ts > Can sync a coValue with private transactions through a server to another client
615
+ client1 -> server {
616
+ "action": "load",
617
+ "id": "co_z8FEC6jx7P1LF7w6MXGp4rfVKXA",
618
+ "header": true,
619
+ "sessions": {
620
+ "sealer_zCx2k65PR51mmEMQ2keySCQnbaHwmU6hNayiP1aTBt5kC/signer_z5urFqfgzWTkVjduCxydLb2eVsSeK1XdyDaahH14U195y_session_zLaXNv4BG8wC": 3
621
+ }
622
+ }
623
+ client2 -> server {
624
+ "action": "load",
625
+ "id": "co_zioYqt3WdFMSqHoq7d5Vjsw9KMy",
626
+ "header": false,
627
+ "sessions": {}
628
+ }
629
+ server -> client1 {
630
+ "action": "known",
631
+ "id": "co_z8FEC6jx7P1LF7w6MXGp4rfVKXA",
632
+ "header": false,
633
+ "sessions": {}
634
+ }
635
+ client1 -> server {
636
+ "action": "load",
637
+ "id": "co_zioYqt3WdFMSqHoq7d5Vjsw9KMy",
638
+ "header": true,
639
+ "sessions": {
640
+ "sealer_zCx2k65PR51mmEMQ2keySCQnbaHwmU6hNayiP1aTBt5kC/signer_z5urFqfgzWTkVjduCxydLb2eVsSeK1XdyDaahH14U195y_session_zLaXNv4BG8wC": 1
641
+ }
642
+ }
643
+ client1 -> server {
644
+ "action": "content",
645
+ "id": "co_z8FEC6jx7P1LF7w6MXGp4rfVKXA",
646
+ "header": {
647
+ "type": "comap",
648
+ "ruleset": {
649
+ "type": "group",
650
+ "initialAdmin": "sealer_zCx2k65PR51mmEMQ2keySCQnbaHwmU6hNayiP1aTBt5kC/signer_z5urFqfgzWTkVjduCxydLb2eVsSeK1XdyDaahH14U195y"
651
+ },
652
+ "meta": null,
653
+ "createdAt": "2024-09-05T17:35:38.454Z",
654
+ "uniqueness": "z27vZxZzxFzdDR7q8g"
655
+ },
656
+ "new": {
657
+ "sealer_zCx2k65PR51mmEMQ2keySCQnbaHwmU6hNayiP1aTBt5kC/signer_z5urFqfgzWTkVjduCxydLb2eVsSeK1XdyDaahH14U195y_session_zLaXNv4BG8wC": {
658
+ "after": 0,
659
+ "newTransactions": [
660
+ {
661
+ "privacy": "trusting",
662
+ "madeAt": 1725557738455,
663
+ "changes": "[{\"key\":\"sealer_zCx2..."
664
+ },
665
+ {
666
+ "privacy": "trusting",
667
+ "madeAt": 1725557738456,
668
+ "changes": "[{\"key\":\"key_zuonNdn..."
669
+ },
670
+ {
671
+ "privacy": "trusting",
672
+ "madeAt": 1725557738457,
673
+ "changes": "[{\"key\":\"readKey\",\"o..."
674
+ }
675
+ ],
676
+ "lastSignature": "signature_z5ZByUAxN6V7uHDY1jg9QPdV7ivi5GhV9aveQfEvZUThSZVwLB5XHfC2ZMDLVTcVrHzYxKnM6VXoym67XhaY7EbYu"
677
+ }
678
+ }
679
+ }
680
+ server -> client1 {
681
+ "action": "known",
682
+ "id": "co_zioYqt3WdFMSqHoq7d5Vjsw9KMy",
683
+ "header": false,
684
+ "sessions": {}
685
+ }
686
+ client1 -> server {
687
+ "action": "content",
688
+ "id": "co_zioYqt3WdFMSqHoq7d5Vjsw9KMy",
689
+ "header": {
690
+ "type": "comap",
691
+ "ruleset": {
692
+ "type": "ownedByGroup",
693
+ "group": "co_z8FEC6jx7P1LF7w6MXGp4rfVKXA"
694
+ },
695
+ "meta": null,
696
+ "createdAt": "2024-09-05T17:35:38.457Z",
697
+ "uniqueness": "z4H5Drf7MQDeZrXgmV"
698
+ },
699
+ "new": {
700
+ "sealer_zCx2k65PR51mmEMQ2keySCQnbaHwmU6hNayiP1aTBt5kC/signer_z5urFqfgzWTkVjduCxydLb2eVsSeK1XdyDaahH14U195y_session_zLaXNv4BG8wC": {
701
+ "after": 0,
702
+ "newTransactions": [
703
+ {
704
+ "privacy": "private",
705
+ "madeAt": 1725557738457,
706
+ "keyUsed": "key_zuonNdnQQKECHPQim",
707
+ "encryptedChanges": "encrypted_UWuqDvoibN..."
708
+ }
709
+ ],
710
+ "lastSignature": "signature_zwwrKpcm6NdPW3o4uNGf3aSWzztoVDbcuaYfA1jdjAZK4MfCmx9pGiY5g49GJvQS7rSKH7fn7NVM37RwND9oPCWZ"
711
+ }
712
+ }
713
+ }
714
+ server -> client1 {
715
+ "action": "known",
716
+ "id": "co_z8FEC6jx7P1LF7w6MXGp4rfVKXA",
717
+ "header": true,
718
+ "sessions": {
719
+ "sealer_zCx2k65PR51mmEMQ2keySCQnbaHwmU6hNayiP1aTBt5kC/signer_z5urFqfgzWTkVjduCxydLb2eVsSeK1XdyDaahH14U195y_session_zLaXNv4BG8wC": 3
720
+ }
721
+ }
722
+ server -> client1 {
723
+ "action": "known",
724
+ "id": "co_zioYqt3WdFMSqHoq7d5Vjsw9KMy",
725
+ "header": true,
726
+ "sessions": {
727
+ "sealer_zCx2k65PR51mmEMQ2keySCQnbaHwmU6hNayiP1aTBt5kC/signer_z5urFqfgzWTkVjduCxydLb2eVsSeK1XdyDaahH14U195y_session_zLaXNv4BG8wC": 1
728
+ }
729
+ }
730
+ server -> client2 {
731
+ "action": "known",
732
+ "asDependencyOf": "co_zioYqt3WdFMSqHoq7d5Vjsw9KMy",
733
+ "id": "co_z8FEC6jx7P1LF7w6MXGp4rfVKXA",
734
+ "header": true,
735
+ "sessions": {
736
+ "sealer_zCx2k65PR51mmEMQ2keySCQnbaHwmU6hNayiP1aTBt5kC/signer_z5urFqfgzWTkVjduCxydLb2eVsSeK1XdyDaahH14U195y_session_zLaXNv4BG8wC": 3
737
+ }
738
+ }
739
+ server -> client2 {
740
+ "action": "known",
741
+ "id": "co_zioYqt3WdFMSqHoq7d5Vjsw9KMy",
742
+ "header": true,
743
+ "sessions": {
744
+ "sealer_zCx2k65PR51mmEMQ2keySCQnbaHwmU6hNayiP1aTBt5kC/signer_z5urFqfgzWTkVjduCxydLb2eVsSeK1XdyDaahH14U195y_session_zLaXNv4BG8wC": 1
745
+ }
746
+ }
747
+ server -> client2 {
748
+ "action": "content",
749
+ "id": "co_z8FEC6jx7P1LF7w6MXGp4rfVKXA",
750
+ "header": {
751
+ "type": "comap",
752
+ "ruleset": {
753
+ "type": "group",
754
+ "initialAdmin": "sealer_zCx2k65PR51mmEMQ2keySCQnbaHwmU6hNayiP1aTBt5kC/signer_z5urFqfgzWTkVjduCxydLb2eVsSeK1XdyDaahH14U195y"
755
+ },
756
+ "meta": null,
757
+ "createdAt": "2024-09-05T17:35:38.454Z",
758
+ "uniqueness": "z27vZxZzxFzdDR7q8g"
759
+ },
760
+ "new": {
761
+ "sealer_zCx2k65PR51mmEMQ2keySCQnbaHwmU6hNayiP1aTBt5kC/signer_z5urFqfgzWTkVjduCxydLb2eVsSeK1XdyDaahH14U195y_session_zLaXNv4BG8wC": {
762
+ "after": 0,
763
+ "newTransactions": [
764
+ {
765
+ "privacy": "trusting",
766
+ "madeAt": 1725557738455,
767
+ "changes": "[{\"key\":\"sealer_zCx2..."
768
+ },
769
+ {
770
+ "privacy": "trusting",
771
+ "madeAt": 1725557738456,
772
+ "changes": "[{\"key\":\"key_zuonNdn..."
773
+ },
774
+ {
775
+ "privacy": "trusting",
776
+ "madeAt": 1725557738457,
777
+ "changes": "[{\"key\":\"readKey\",\"o..."
778
+ }
779
+ ],
780
+ "lastSignature": "signature_z5ZByUAxN6V7uHDY1jg9QPdV7ivi5GhV9aveQfEvZUThSZVwLB5XHfC2ZMDLVTcVrHzYxKnM6VXoym67XhaY7EbYu"
781
+ }
782
+ }
783
+ }
784
+ client2 -> server {
785
+ "action": "known",
786
+ "id": "co_z8FEC6jx7P1LF7w6MXGp4rfVKXA",
787
+ "header": true,
788
+ "sessions": {
789
+ "sealer_zCx2k65PR51mmEMQ2keySCQnbaHwmU6hNayiP1aTBt5kC/signer_z5urFqfgzWTkVjduCxydLb2eVsSeK1XdyDaahH14U195y_session_zLaXNv4BG8wC": 3
790
+ }
791
+ }
792
+ server -> client2 {
793
+ "action": "content",
794
+ "id": "co_zioYqt3WdFMSqHoq7d5Vjsw9KMy",
795
+ "header": {
796
+ "type": "comap",
797
+ "ruleset": {
798
+ "type": "ownedByGroup",
799
+ "group": "co_z8FEC6jx7P1LF7w6MXGp4rfVKXA"
800
+ },
801
+ "meta": null,
802
+ "createdAt": "2024-09-05T17:35:38.457Z",
803
+ "uniqueness": "z4H5Drf7MQDeZrXgmV"
804
+ },
805
+ "new": {
806
+ "sealer_zCx2k65PR51mmEMQ2keySCQnbaHwmU6hNayiP1aTBt5kC/signer_z5urFqfgzWTkVjduCxydLb2eVsSeK1XdyDaahH14U195y_session_zLaXNv4BG8wC": {
807
+ "after": 0,
808
+ "newTransactions": [
809
+ {
810
+ "privacy": "private",
811
+ "madeAt": 1725557738457,
812
+ "keyUsed": "key_zuonNdnQQKECHPQim",
813
+ "encryptedChanges": "encrypted_UWuqDvoibN..."
814
+ }
815
+ ],
816
+ "lastSignature": "signature_zwwrKpcm6NdPW3o4uNGf3aSWzztoVDbcuaYfA1jdjAZK4MfCmx9pGiY5g49GJvQS7rSKH7fn7NVM37RwND9oPCWZ"
817
+ }
818
+ }
819
+ }
820
+ client2 -> server {
821
+ "action": "known",
822
+ "id": "co_zioYqt3WdFMSqHoq7d5Vjsw9KMy",
823
+ "header": true,
824
+ "sessions": {
825
+ "sealer_zCx2k65PR51mmEMQ2keySCQnbaHwmU6hNayiP1aTBt5kC/signer_z5urFqfgzWTkVjduCxydLb2eVsSeK1XdyDaahH14U195y_session_zLaXNv4BG8wC": 1
826
+ }
827
+ }
828
+
829
+ stdout | src/tests/sync.test.ts > If we start loading a coValue before connecting to a peer that has it, it will load it once we connect
830
+ peer2 -> peer1 {
831
+ "action": "load",
832
+ "id": "co_zji1byAKQ9pkwHeMJzbGD2bVr6d",
833
+ "header": false,
834
+ "sessions": {}
835
+ }
836
+ peer1 -> peer2 {
837
+ "action": "known",
838
+ "asDependencyOf": "co_zji1byAKQ9pkwHeMJzbGD2bVr6d",
839
+ "id": "co_zJDdBJr6t1zo3jk3mzYpYk5TrdD",
840
+ "header": true,
841
+ "sessions": {
842
+ "sealer_zBRNwbAMYbgmoSZNbr7B3vyGsJfeZG8j2uHkAEf6Mn7qK/signer_z5YWN82fdGFeYyE44cMYLgXDAJbsP5y98o5H5JTmZTDoV_session_zD97kioSfAgC": 3
843
+ }
844
+ }
845
+ peer1 -> peer2 {
846
+ "action": "known",
847
+ "id": "co_zji1byAKQ9pkwHeMJzbGD2bVr6d",
848
+ "header": true,
849
+ "sessions": {
850
+ "sealer_zBRNwbAMYbgmoSZNbr7B3vyGsJfeZG8j2uHkAEf6Mn7qK/signer_z5YWN82fdGFeYyE44cMYLgXDAJbsP5y98o5H5JTmZTDoV_session_zD97kioSfAgC": 1
851
+ }
852
+ }
853
+ peer1 -> peer2 {
854
+ "action": "content",
855
+ "id": "co_zJDdBJr6t1zo3jk3mzYpYk5TrdD",
856
+ "header": {
857
+ "type": "comap",
858
+ "ruleset": {
859
+ "type": "group",
860
+ "initialAdmin": "sealer_zBRNwbAMYbgmoSZNbr7B3vyGsJfeZG8j2uHkAEf6Mn7qK/signer_z5YWN82fdGFeYyE44cMYLgXDAJbsP5y98o5H5JTmZTDoV"
861
+ },
862
+ "meta": null,
863
+ "createdAt": "2024-09-05T17:35:38.463Z",
864
+ "uniqueness": "z4R9neDHpsCuQRs3Po"
865
+ },
866
+ "new": {
867
+ "sealer_zBRNwbAMYbgmoSZNbr7B3vyGsJfeZG8j2uHkAEf6Mn7qK/signer_z5YWN82fdGFeYyE44cMYLgXDAJbsP5y98o5H5JTmZTDoV_session_zD97kioSfAgC": {
868
+ "after": 0,
869
+ "newTransactions": [
870
+ {
871
+ "privacy": "trusting",
872
+ "madeAt": 1725557738463,
873
+ "changes": "[{\"key\":\"sealer_zBRN..."
874
+ },
875
+ {
876
+ "privacy": "trusting",
877
+ "madeAt": 1725557738464,
878
+ "changes": "[{\"key\":\"key_z4k1rBB..."
879
+ },
880
+ {
881
+ "privacy": "trusting",
882
+ "madeAt": 1725557738464,
883
+ "changes": "[{\"key\":\"readKey\",\"o..."
884
+ }
885
+ ],
886
+ "lastSignature": "signature_z43oEAUNQuyk9UjzdCBPCkuZhHL8vRfMBKRw29NnQxCPocP6pq9VC3pBmLEocfn62KszCmh4HN2B3s6aUP7HkmMmh"
887
+ }
888
+ }
889
+ }
890
+ peer2 -> peer1 {
891
+ "action": "known",
892
+ "id": "co_zJDdBJr6t1zo3jk3mzYpYk5TrdD",
893
+ "header": true,
894
+ "sessions": {
895
+ "sealer_zBRNwbAMYbgmoSZNbr7B3vyGsJfeZG8j2uHkAEf6Mn7qK/signer_z5YWN82fdGFeYyE44cMYLgXDAJbsP5y98o5H5JTmZTDoV_session_zD97kioSfAgC": 3
896
+ }
897
+ }
898
+ peer1 -> peer2 {
899
+ "action": "content",
900
+ "id": "co_zji1byAKQ9pkwHeMJzbGD2bVr6d",
901
+ "header": {
902
+ "type": "comap",
903
+ "ruleset": {
904
+ "type": "ownedByGroup",
905
+ "group": "co_zJDdBJr6t1zo3jk3mzYpYk5TrdD"
906
+ },
907
+ "meta": null,
908
+ "createdAt": "2024-09-05T17:35:38.465Z",
909
+ "uniqueness": "z3ohJhAsrNpkttBx4x"
910
+ },
911
+ "new": {
912
+ "sealer_zBRNwbAMYbgmoSZNbr7B3vyGsJfeZG8j2uHkAEf6Mn7qK/signer_z5YWN82fdGFeYyE44cMYLgXDAJbsP5y98o5H5JTmZTDoV_session_zD97kioSfAgC": {
913
+ "after": 0,
914
+ "newTransactions": [
915
+ {
916
+ "privacy": "trusting",
917
+ "madeAt": 1725557738465,
918
+ "changes": "[{\"key\":\"hello\",\"op\"..."
919
+ }
920
+ ],
921
+ "lastSignature": "signature_z4dymQziiLgz5oeuVjmodDS3tEGkVhb3GUuuXaSdsWN8Gptx4t8QNTirZ3QVRCWJPgqWfL8KBYtLEpvHF7n63HSaC"
922
+ }
923
+ }
924
+ }
925
+ peer2 -> peer1 {
926
+ "action": "known",
927
+ "id": "co_zji1byAKQ9pkwHeMJzbGD2bVr6d",
928
+ "header": true,
929
+ "sessions": {
930
+ "sealer_zBRNwbAMYbgmoSZNbr7B3vyGsJfeZG8j2uHkAEf6Mn7qK/signer_z5YWN82fdGFeYyE44cMYLgXDAJbsP5y98o5H5JTmZTDoV_session_zD97kioSfAgC": 1
931
+ }
932
+ }
933
+
934
+ ✓ src/tests/sync.test.ts (19 tests | 8 skipped) 176ms
935
+ stderr | src/tests/permissions.test.ts > Admins can't demote other admins in a group
936
+ Admins can only demote themselves.
937
+ Admins can only demote themselves.
938
+ Admins can only demote themselves.
939
+ Admins can only demote themselves.
940
+ Admins can only demote themselves.
941
+
942
+ stderr | src/tests/permissions.test.ts > Admins can't demote other admins in a group (high level)
943
+ Admins can only demote themselves.
944
+
945
+ stderr | src/tests/permissions.test.ts > Admins an add writers to a group, who can't add admins, writers, or readers
946
+ Group transaction must be made by current admin or invite
947
+ Group transaction must be made by current admin or invite
948
+ Group transaction must be made by current admin or invite
949
+ Group transaction must be made by current admin or invite
950
+ Group transaction must be made by current admin or invite
951
+ Group transaction must be made by current admin or invite
952
+
953
+ stderr | src/tests/permissions.test.ts > Admins an add writers to a group, who can't add admins, writers, or readers (high level)
954
+ Group transaction must be made by current admin or invite
955
+ Group transaction must be made by current admin or invite
956
+ Group transaction must be made by current admin or invite
957
+ Group transaction must be made by current admin or invite
958
+ Group transaction must be made by current admin or invite
959
+ Group transaction must be made by current admin or invite
960
+ Group transaction must be made by current admin or invite
961
+ Group transaction must be made by current admin or invite
962
+ Group transaction must be made by current admin or invite
963
+
964
+ stderr | src/tests/permissions.test.ts > Admins can add readers to a group, who can't add admins, writers, or readers
965
+ Group transaction must be made by current admin or invite
966
+ Group transaction must be made by current admin or invite
967
+ Group transaction must be made by current admin or invite
968
+ Group transaction must be made by current admin or invite
969
+ Group transaction must be made by current admin or invite
970
+ Group transaction must be made by current admin or invite
971
+
972
+ stderr | src/tests/permissions.test.ts > Admins can add readers to a group, who can't add admins, writers, or readers (high level)
973
+ Group transaction must be made by current admin or invite
974
+ Group transaction must be made by current admin or invite
975
+ Group transaction must be made by current admin or invite
976
+ Group transaction must be made by current admin or invite
977
+ Group transaction must be made by current admin or invite
978
+ Group transaction must be made by current admin or invite
979
+ Group transaction must be made by current admin or invite
980
+ Group transaction must be made by current admin or invite
981
+ Group transaction must be made by current admin or invite
982
+
983
+ stderr | src/tests/permissions.test.ts > WriterInvites can not invite admins
984
+ WriterInvites can only create writers.
985
+
986
+ stderr | src/tests/permissions.test.ts > ReaderInvites can not invite admins
987
+ ReaderInvites can only create reader.
988
+
989
+ stderr | src/tests/permissions.test.ts > ReaderInvites can not invite writers
990
+ ReaderInvites can only create reader.
991
+
992
+ stdout | src/tests/permissions.test.ts > Can give write permissions to 'everyone' (high-level)
993
+ Before anon set
994
+
995
+ ✓ src/tests/permissions.test.ts (44 tests) 542ms
996
+
997
+ Test Files 11 passed (11)
998
+ Tests 112 passed | 5 skipped | 3 todo (120)
999
+ Start at 18:35:37
1000
+ Duration 1.03s (transform 530ms, setup 1ms, collect 2.82s, tests 1.45s, environment 1ms, prepare 670ms)
1001
+