@ibgib/core-gib 0.1.54 → 0.1.55
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.
- package/CHANGELOG.md +10 -3
- package/README.md +12 -15
- package/dist/keystone/aggregate-details.respec.d.mts +2 -0
- package/dist/keystone/aggregate-details.respec.d.mts.map +1 -0
- package/dist/keystone/aggregate-details.respec.mjs +118 -0
- package/dist/keystone/aggregate-details.respec.mjs.map +1 -0
- package/dist/keystone/keystone-constants.d.mts +5 -0
- package/dist/keystone/keystone-constants.d.mts.map +1 -1
- package/dist/keystone/keystone-constants.mjs +6 -1
- package/dist/keystone/keystone-constants.mjs.map +1 -1
- package/dist/keystone/keystone-helpers.d.mts +7 -1
- package/dist/keystone/keystone-helpers.d.mts.map +1 -1
- package/dist/keystone/keystone-helpers.mjs +5 -2
- package/dist/keystone/keystone-helpers.mjs.map +1 -1
- package/dist/keystone/keystone-service-v1.d.mts +51 -0
- package/dist/keystone/keystone-service-v1.d.mts.map +1 -1
- package/dist/keystone/keystone-service-v1.mjs +176 -9
- package/dist/keystone/keystone-service-v1.mjs.map +1 -1
- package/dist/keystone/keystone-service-v1.respec.mjs +40 -98
- package/dist/keystone/keystone-service-v1.respec.mjs.map +1 -1
- package/dist/keystone/keystone-types.d.mts +5 -0
- package/dist/keystone/keystone-types.d.mts.map +1 -1
- package/dist/sync/graft-info/graft-info-helpers.respec.mjs +8 -8
- package/dist/sync/graft-info/graft-info-helpers.respec.mjs.map +1 -1
- package/dist/sync/sync-conflict-adv-multitimelines.respec.mjs +26 -30
- package/dist/sync/sync-conflict-adv-multitimelines.respec.mjs.map +1 -1
- package/dist/sync/sync-conflict-basic-divergence.respec.mjs +7 -8
- package/dist/sync/sync-conflict-basic-divergence.respec.mjs.map +1 -1
- package/dist/sync/sync-conflict-basic-multitimelines.respec.mjs +10 -11
- package/dist/sync/sync-conflict-basic-multitimelines.respec.mjs.map +1 -1
- package/dist/sync/sync-conflict-text-merge.respec.mjs +30 -33
- package/dist/sync/sync-conflict-text-merge.respec.mjs.map +1 -1
- package/dist/sync/sync-constants.d.mts +1 -56
- package/dist/sync/sync-constants.d.mts.map +1 -1
- package/dist/sync/sync-constants.mjs +2 -59
- package/dist/sync/sync-constants.mjs.map +1 -1
- package/dist/sync/sync-helpers.d.mts +0 -1
- package/dist/sync/sync-helpers.d.mts.map +1 -1
- package/dist/sync/sync-helpers.mjs +1 -6
- package/dist/sync/sync-helpers.mjs.map +1 -1
- package/dist/sync/sync-innerspace-constants.respec.mjs +5 -9
- package/dist/sync/sync-innerspace-constants.respec.mjs.map +1 -1
- package/dist/sync/sync-innerspace-deep-updates.respec.mjs +6 -7
- package/dist/sync/sync-innerspace-deep-updates.respec.mjs.map +1 -1
- package/dist/sync/sync-innerspace-dest-ahead-withid.respec.mjs +22 -22
- package/dist/sync/sync-innerspace-dest-ahead-withid.respec.mjs.map +1 -1
- package/dist/sync/sync-innerspace-dest-ahead.respec.mjs +8 -9
- package/dist/sync/sync-innerspace-dest-ahead.respec.mjs.map +1 -1
- package/dist/sync/sync-innerspace-multiple-timelines.respec.mjs +6 -7
- package/dist/sync/sync-innerspace-multiple-timelines.respec.mjs.map +1 -1
- package/dist/sync/sync-innerspace-partial-update.respec.mjs +7 -8
- package/dist/sync/sync-innerspace-partial-update.respec.mjs.map +1 -1
- package/dist/sync/sync-innerspace.respec.mjs +8 -11
- package/dist/sync/sync-innerspace.respec.mjs.map +1 -1
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-http-node-adapter.mjs +10 -5
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-http-node-adapter.mjs.map +1 -1
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-types.d.mts +3 -1
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-types.d.mts.map +1 -1
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.d.mts +4 -2
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.d.mts.map +1 -1
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.mjs +37 -6
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.mjs.map +1 -1
- package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-types.d.mts +3 -1
- package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-types.d.mts.map +1 -1
- package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-v1.d.mts +4 -2
- package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-v1.d.mts.map +1 -1
- package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-v1.mjs +37 -0
- package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-v1.mjs.map +1 -1
- package/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-types.d.mts +7 -1
- package/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-types.d.mts.map +1 -1
- package/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.d.mts +10 -2
- package/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.d.mts.map +1 -1
- package/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mjs +50 -38
- package/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mjs.map +1 -1
- package/dist/sync/sync-peer/sync-peer-types.d.mts +21 -5
- package/dist/sync/sync-peer/sync-peer-types.d.mts.map +1 -1
- package/dist/sync/sync-peer/sync-peer-v1.d.mts +30 -5
- package/dist/sync/sync-peer/sync-peer-v1.d.mts.map +1 -1
- package/dist/sync/sync-peer/sync-peer-v1.mjs +41 -25
- package/dist/sync/sync-peer/sync-peer-v1.mjs.map +1 -1
- package/dist/sync/sync-saga-context/sync-saga-context-helpers.d.mts +2 -11
- package/dist/sync/sync-saga-context/sync-saga-context-helpers.d.mts.map +1 -1
- package/dist/sync/sync-saga-context/sync-saga-context-helpers.mjs +7 -51
- package/dist/sync/sync-saga-context/sync-saga-context-helpers.mjs.map +1 -1
- package/dist/sync/sync-saga-context/sync-saga-context-types.d.mts +1 -47
- package/dist/sync/sync-saga-context/sync-saga-context-types.d.mts.map +1 -1
- package/dist/sync/sync-saga-coordinator.d.mts +6 -58
- package/dist/sync/sync-saga-coordinator.d.mts.map +1 -1
- package/dist/sync/sync-saga-coordinator.mjs +23 -425
- package/dist/sync/sync-saga-coordinator.mjs.map +1 -1
- package/dist/sync/sync-saga-message/sync-saga-message-types.d.mts +2 -2
- package/dist/sync/sync-saga-message/sync-saga-message-types.d.mts.map +1 -1
- package/dist/sync/sync-types.d.mts +2 -19
- package/dist/sync/sync-types.d.mts.map +1 -1
- package/dist/sync/sync-types.mjs.map +1 -1
- package/dist/test/mock-space.mjs +1 -1
- package/dist/test/mock-space.mjs.map +1 -1
- package/dist/test-helpers.d.mts +0 -6
- package/dist/test-helpers.d.mts.map +1 -1
- package/dist/test-helpers.mjs +2 -25
- package/dist/test-helpers.mjs.map +1 -1
- package/package.json +7 -31
- package/src/keystone/aggregate-details.respec.mts +137 -0
- package/src/keystone/docs/architecture.md +16 -0
- package/src/keystone/keystone-constants.mts +6 -1
- package/src/keystone/keystone-helpers.mts +9 -1
- package/src/keystone/keystone-service-v1.mts +216 -8
- package/src/keystone/keystone-service-v1.respec.mts +39 -103
- package/src/keystone/keystone-types.mts +6 -0
- package/src/sync/README.md +18 -0
- package/src/sync/docs/architecture.md +21 -0
- package/src/sync/graft-info/graft-info-helpers.respec.mts +7 -7
- package/src/sync/sync-conflict-adv-multitimelines.respec.mts +25 -29
- package/src/sync/sync-conflict-basic-divergence.respec.mts +6 -7
- package/src/sync/sync-conflict-basic-multitimelines.respec.mts +9 -10
- package/src/sync/sync-conflict-text-merge.respec.mts +29 -32
- package/src/sync/sync-constants.mts +2 -62
- package/src/sync/sync-helpers.mts +1 -8
- package/src/sync/sync-id-testlog.txt +421 -0
- package/src/sync/sync-innerspace-constants.respec.mts +4 -8
- package/src/sync/sync-innerspace-deep-updates.respec.mts +5 -6
- package/src/sync/sync-innerspace-dest-ahead-withid.respec.mts +23 -25
- package/src/sync/sync-innerspace-dest-ahead.respec.mts +7 -8
- package/src/sync/sync-innerspace-multiple-timelines.respec.mts +5 -6
- package/src/sync/sync-innerspace-partial-update.respec.mts +6 -7
- package/src/sync/sync-innerspace.respec.mts +7 -10
- package/src/sync/sync-peer/sync-peer-http-receiver/sync-http-node-adapter.mts +5 -5
- package/src/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-types.mts +5 -1
- package/src/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.mts +30 -9
- package/src/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-types.mts +3 -1
- package/src/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-v1.mts +29 -2
- package/src/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-types.mts +7 -1
- package/src/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mts +51 -38
- package/src/sync/sync-peer/sync-peer-types.mts +23 -6
- package/src/sync/sync-peer/sync-peer-v1.mts +68 -28
- package/src/sync/sync-saga-context/sync-saga-context-helpers.mts +6 -66
- package/src/sync/sync-saga-context/sync-saga-context-types.mts +1 -48
- package/src/sync/sync-saga-coordinator.mts +12 -552
- package/src/sync/sync-saga-message/sync-saga-message-types.mts +2 -3
- package/src/sync/sync-types.mts +2 -22
- package/src/sync/unused-identity-backup.mts.md +311 -0
- package/src/test/mock-space.mts +1 -1
- package/src/test-helpers.mts +1 -26
- package/test_output.log +0 -0
- package/test_output_utf8.txt +398 -0
- package/.vscode/core-gib-snippets.code-snippets +0 -293
- package/.vscode/launch.json +0 -40
- package/.vscode/settings.json +0 -58
- package/.vscode/tasks.json +0 -37
- package/dist/sync/sync-peer/sync-peer-http.respec.d.mts +0 -2
- package/dist/sync/sync-peer/sync-peer-http.respec.d.mts.map +0 -1
- package/dist/sync/sync-peer/sync-peer-http.respec.mjs +0 -340
- package/dist/sync/sync-peer/sync-peer-http.respec.mjs.map +0 -1
- package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-helper.d.mts +0 -42
- package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-helper.d.mts.map +0 -1
- package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-helper.mjs +0 -312
- package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-helper.mjs.map +0 -1
- package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-types.d.mts +0 -84
- package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-types.d.mts.map +0 -1
- package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-types.mjs +0 -65
- package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-types.mjs.map +0 -1
- package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-v1.d.mts +0 -73
- package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-v1.d.mts.map +0 -1
- package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-v1.mjs +0 -667
- package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-v1.mjs.map +0 -1
- package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_createAndInit.node-filesystem-space-v1.respec.d.mts +0 -2
- package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_createAndInit.node-filesystem-space-v1.respec.d.mts.map +0 -1
- package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_createAndInit.node-filesystem-space-v1.respec.mjs +0 -67
- package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_createAndInit.node-filesystem-space-v1.respec.mjs.map +0 -1
- package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_persistTransformResult.node-filesystem-space-v1.respec.d.mts +0 -2
- package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_persistTransformResult.node-filesystem-space-v1.respec.d.mts.map +0 -1
- package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_persistTransformResult.node-filesystem-space-v1.respec.mjs +0 -67
- package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_persistTransformResult.node-filesystem-space-v1.respec.mjs.map +0 -1
- package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_putGetDelete.node-filesystem-space-v1.respec.d.mts +0 -2
- package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_putGetDelete.node-filesystem-space-v1.respec.d.mts.map +0 -1
- package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_putGetDelete.node-filesystem-space-v1.respec.mjs +0 -68
- package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_putGetDelete.node-filesystem-space-v1.respec.mjs.map +0 -1
- package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-filesystem-space-v1.respec.d.mts +0 -2
- package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-filesystem-space-v1.respec.d.mts.map +0 -1
- package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-filesystem-space-v1.respec.mjs +0 -69
- package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-filesystem-space-v1.respec.mjs.map +0 -1
- package/src/sync/sync-peer/sync-peer-http.respec.mts +0 -396
- package/src/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-helper.mts +0 -298
- package/src/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-types.mts +0 -150
- package/src/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-v1.mts +0 -666
- package/src/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_createAndInit.node-filesystem-space-v1.respec.mts +0 -87
- package/src/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_persistTransformResult.node-filesystem-space-v1.respec.mts +0 -88
- package/src/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_putGetDelete.node-filesystem-space-v1.respec.mts +0 -88
- package/src/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-filesystem-space-v1.respec.mts +0 -90
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Verifies syncing "Constants" (ibGibs without timelines/TJPs).
|
|
5
5
|
* Also verifies Smart Diff behavior (Constants shouldn't be re-sent).
|
|
6
6
|
*/
|
|
7
|
-
import { respecfully,
|
|
7
|
+
import { respecfully, ifWeMight, iReckon } from '@ibgib/helper-gib/dist/respec-gib/respec-gib.mjs';
|
|
8
8
|
const maam = `[${import.meta.url}]`, sir = maam;
|
|
9
9
|
import { clone, delay } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
|
|
10
10
|
import { getIbGibAddr } from '@ibgib/ts-gib/dist/helper.mjs';
|
|
@@ -14,12 +14,11 @@ import { putInSpace, getFromSpace } from '../witness/space/space-helper.mjs';
|
|
|
14
14
|
import { Metaspace_Innerspace } from '../witness/space/metaspace/metaspace-innerspace/metaspace-innerspace.mjs';
|
|
15
15
|
import { InnerSpace_V1 } from '../witness/space/inner-space/inner-space-v1.mjs';
|
|
16
16
|
import { DEFAULT_INNER_SPACE_DATA_V1 } from '../witness/space/inner-space/inner-space-types.mjs';
|
|
17
|
-
import { getTestKeystoneServiceHelper } from '../test-helpers.mjs';
|
|
18
17
|
import { SyncPeerInnerspace_V1 } from './sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mjs';
|
|
19
18
|
import { SYNC_PEER_INNERSPACE_DEFAULT_DATA_V1 } from './sync-peer/sync-peer-innerspace/sync-peer-innerspace-constants.mjs';
|
|
20
19
|
const lc = `[sync-innerspace-constants.respec]`;
|
|
21
20
|
await respecfully(sir, `Sync Constants (No TJP)`, async () => {
|
|
22
|
-
await
|
|
21
|
+
await ifWeMight(sir, `Verify Constants Sync`, async () => {
|
|
23
22
|
// 1. Setup Spaces
|
|
24
23
|
const metaspace = new Metaspace_Innerspace(undefined);
|
|
25
24
|
await metaspace.initialize({
|
|
@@ -56,12 +55,12 @@ await respecfully(sir, `Sync Constants (No TJP)`, async () => {
|
|
|
56
55
|
const checkDest1 = await getFromSpace({ space: destSpace, addr: addrC1 });
|
|
57
56
|
iReckon(sir, checkDest1.success).asTo('Dest initially does not have C1').isGonnaBeFalse();
|
|
58
57
|
// 3. Setup Coordinator
|
|
59
|
-
const
|
|
60
|
-
const
|
|
61
|
-
const receiverCoordinator = new SyncSagaCoordinator(mockKeystone);
|
|
58
|
+
const senderCoordinator = new SyncSagaCoordinator();
|
|
59
|
+
const receiverCoordinator = new SyncSagaCoordinator();
|
|
62
60
|
const peer = new SyncPeerInnerspace_V1(clone(SYNC_PEER_INNERSPACE_DEFAULT_DATA_V1));
|
|
63
61
|
await peer.initialized;
|
|
64
62
|
await peer.initializeOpts({
|
|
63
|
+
localMetaspace: metaspace,
|
|
65
64
|
localSpace: sourceSpace, // "Client"
|
|
66
65
|
receiverSpace: destSpace, // "Server"
|
|
67
66
|
receiverCoordinator,
|
|
@@ -73,7 +72,6 @@ await respecfully(sir, `Sync Constants (No TJP)`, async () => {
|
|
|
73
72
|
localSpace: sourceSpace,
|
|
74
73
|
metaspace: metaspace,
|
|
75
74
|
domainIbGibs: [c1],
|
|
76
|
-
useSessionIdentity: false,
|
|
77
75
|
});
|
|
78
76
|
await resSync.done;
|
|
79
77
|
iReckon(sir, true).asTo('Sync execution 1 completes').isGonnaBeTrue();
|
|
@@ -87,7 +85,6 @@ await respecfully(sir, `Sync Constants (No TJP)`, async () => {
|
|
|
87
85
|
// localSpace: sourceSpace,
|
|
88
86
|
// metaspace: metaspace,
|
|
89
87
|
// domainIbGibs: [c1],
|
|
90
|
-
// useSessionIdentity: false,
|
|
91
88
|
// });
|
|
92
89
|
// await resSync.done;
|
|
93
90
|
// iReckon(sir, true).asTo('Sync execution 2 (idempotent) completes').isGonnaBeTrue();
|
|
@@ -107,7 +104,6 @@ await respecfully(sir, `Sync Constants (No TJP)`, async () => {
|
|
|
107
104
|
// localSpace: sourceSpace,
|
|
108
105
|
// metaspace: metaspace,
|
|
109
106
|
// domainIbGibs: [c2],
|
|
110
|
-
// useSessionIdentity: false,
|
|
111
107
|
// });
|
|
112
108
|
// await resSync.done;
|
|
113
109
|
// iReckon(sir, true).asTo('Sync C2 completes').isGonnaBeTrue();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-innerspace-constants.respec.mjs","sourceRoot":"","sources":["../../src/sync/sync-innerspace-constants.respec.mts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACH,WAAW,
|
|
1
|
+
{"version":3,"file":"sync-innerspace-constants.respec.mjs","sourceRoot":"","sources":["../../src/sync/sync-innerspace-constants.respec.mts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Verifies Complex Sync Scenarios using InnerSpace.
|
|
5
5
|
*/
|
|
6
|
-
import { respecfully,
|
|
6
|
+
import { respecfully, iReckon, ifWeMight } from '@ibgib/helper-gib/dist/respec-gib/respec-gib.mjs';
|
|
7
7
|
const maam = `[${import.meta.url}]`, sir = maam;
|
|
8
8
|
import { clone, delay } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
|
|
9
9
|
import { getIbGibAddr } from '@ibgib/ts-gib/dist/helper.mjs';
|
|
@@ -13,7 +13,7 @@ import { SyncSagaCoordinator } from './sync-saga-coordinator.mjs';
|
|
|
13
13
|
import { getFromSpace } from '../witness/space/space-helper.mjs';
|
|
14
14
|
import { Metaspace_Innerspace } from '../witness/space/metaspace/metaspace-innerspace/metaspace-innerspace.mjs';
|
|
15
15
|
import { InnerSpace_V1 } from '../witness/space/inner-space/inner-space-v1.mjs';
|
|
16
|
-
import { createTimelineRootTestHelper,
|
|
16
|
+
import { createTimelineRootTestHelper, } from '../test-helpers.mjs';
|
|
17
17
|
import { mut8Timeline } from '../timeline/timeline-api.mjs';
|
|
18
18
|
import { DEFAULT_INNER_SPACE_DATA_V1 } from '../witness/space/inner-space/inner-space-types.mjs';
|
|
19
19
|
import { SyncPeerInnerspace_V1 } from './sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mjs';
|
|
@@ -75,12 +75,12 @@ await respecfully(sir, `Sync InnerSpaces (Deep Updates)`, async () => {
|
|
|
75
75
|
});
|
|
76
76
|
const addrV2 = getIbGibAddr({ ibGib: commentV2 });
|
|
77
77
|
// 3. Setup
|
|
78
|
-
const
|
|
79
|
-
const
|
|
80
|
-
const receiverCoordinator = new SyncSagaCoordinator(mockKeystone);
|
|
78
|
+
const senderCoordinator = new SyncSagaCoordinator();
|
|
79
|
+
const receiverCoordinator = new SyncSagaCoordinator();
|
|
81
80
|
const peer = new SyncPeerInnerspace_V1(clone(SYNC_PEER_INNERSPACE_DEFAULT_DATA_V1));
|
|
82
81
|
await peer.initialized;
|
|
83
82
|
await peer.initializeOpts({
|
|
83
|
+
localMetaspace: metaspace,
|
|
84
84
|
localSpace: sourceSpace, // "Client"
|
|
85
85
|
receiverSpace: destSpace, // "Server"
|
|
86
86
|
receiverCoordinator,
|
|
@@ -96,12 +96,11 @@ await respecfully(sir, `Sync InnerSpaces (Deep Updates)`, async () => {
|
|
|
96
96
|
localSpace: sourceSpace,
|
|
97
97
|
metaspace: metaspace,
|
|
98
98
|
domainIbGibs: [commentV2], // Sync the TIP
|
|
99
|
-
useSessionIdentity: false,
|
|
100
99
|
});
|
|
101
100
|
await resSync.done;
|
|
102
101
|
// 5. Verify Dest
|
|
103
102
|
console.log(`${lc} Verifying Destination...`);
|
|
104
|
-
await
|
|
103
|
+
await ifWeMight(sir, `verify deep timeline present`, async () => {
|
|
105
104
|
// Verify Tip (V2)
|
|
106
105
|
const getV2 = await getFromSpace({ space: destSpace, addr: addrV2 });
|
|
107
106
|
iReckon(sir, getV2.success).asTo('Tip V2 present').isGonnaBeTrue();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-innerspace-deep-updates.respec.mjs","sourceRoot":"","sources":["../../src/sync/sync-innerspace-deep-updates.respec.mts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,WAAW,
|
|
1
|
+
{"version":3,"file":"sync-innerspace-deep-updates.respec.mjs","sourceRoot":"","sources":["../../src/sync/sync-innerspace-deep-updates.respec.mts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
// * Verifies Sync Scenario where the receiver is ahead, with identity enabled.
|
|
5
5
|
// */
|
|
6
6
|
export {};
|
|
7
|
+
// import * as pathUtils from 'path';
|
|
7
8
|
// import {
|
|
8
9
|
// respecfully, lastOfAll, ifWe, iReckon,
|
|
9
10
|
// ifWeMight
|
|
@@ -30,8 +31,9 @@ export {};
|
|
|
30
31
|
// import { getIbGibsFromCache_fallbackToSpaces } from '../common/other/ibgib-helper.mjs';
|
|
31
32
|
// import { SyncSagaContextIbGib_V1 } from './sync-saga-context/sync-saga-context-types.mjs';
|
|
32
33
|
// import { isSyncSagaContextIbGib } from './sync-saga-context/sync-saga-context-helpers.mjs';
|
|
34
|
+
// import { KeystoneService_V1 } from '../keystone/keystone-service-v1.mjs';
|
|
33
35
|
// const logalot = false;
|
|
34
|
-
// const lc = `[
|
|
36
|
+
// const lc = `[${pathUtils.basename(import.meta.filename, pathUtils.extname(import.meta.filename))}]`;
|
|
35
37
|
// await respecfully(sir, `Sync InnerSpaces (Dest Ahead)`, async () => {
|
|
36
38
|
// let metaspace: Metaspace_Innerspace;
|
|
37
39
|
// let sourceSpace: InnerSpace_V1;
|
|
@@ -118,16 +120,21 @@ export {};
|
|
|
118
120
|
// iReckon(sir, await fnAddrExistsInSpace(addrV2, destSpace)).asTo('dest has V2').isGonnaBeTrue();
|
|
119
121
|
// });
|
|
120
122
|
// // 3. Setup Sync
|
|
121
|
-
//
|
|
122
|
-
// const
|
|
123
|
-
// const
|
|
123
|
+
// /** need the real keystone service for tests with identity */
|
|
124
|
+
// const keystoneSvc = new KeystoneService_V1();
|
|
125
|
+
// const senderCoordinator = new SyncSagaCoordinator(keystoneSvc);
|
|
126
|
+
// const receiverCoordinator = new SyncSagaCoordinator(keystoneSvc);
|
|
124
127
|
// const peer = new SyncPeerInnerspace_V1(clone(SYNC_PEER_INNERSPACE_DEFAULT_DATA_V1));
|
|
125
128
|
// await peer.initialized;
|
|
126
129
|
// await peer.initializeOpts({
|
|
130
|
+
// localMetaspace: metaspace,
|
|
127
131
|
// localSpace: sourceSpace, // "Client"
|
|
128
132
|
// receiverSpace: destSpace, // "Server"
|
|
129
133
|
// receiverCoordinator,
|
|
130
134
|
// receiverMetaspace: metaspace,
|
|
135
|
+
// senderCoordinator,
|
|
136
|
+
// useSessionIdentity: true,
|
|
137
|
+
// nonSessionSecret: secretSender,
|
|
131
138
|
// });
|
|
132
139
|
// // 4. Run Sync (Source Pushes V1)
|
|
133
140
|
// console.log(`${lc} Running Sync...`);
|
|
@@ -201,24 +208,17 @@ export {};
|
|
|
201
208
|
// // Need to capture session identity and saga context from sync result
|
|
202
209
|
// // For now, we'll retrieve from spaces after sync completes
|
|
203
210
|
// let sessionKeystoneAddr: IbGibAddr | undefined;
|
|
211
|
+
// sessionKeystoneAddr = peer.sessionIdentity ? getIbGibAddr({ ibGib: peer.sessionIdentity }) : undefined;
|
|
204
212
|
// await ifWe(sir, 'IDENTITY: session keystone exists in sender space', async () => {
|
|
205
|
-
//
|
|
206
|
-
//
|
|
207
|
-
//
|
|
208
|
-
//
|
|
209
|
-
//
|
|
210
|
-
//
|
|
211
|
-
//
|
|
212
|
-
//
|
|
213
|
-
//
|
|
214
|
-
// // transferred alongside context ibgib (which is signed but
|
|
215
|
-
// // intrinsically points to the **previous** frame of the keystone)
|
|
216
|
-
// // #endregion leaving off here
|
|
217
|
-
// syncSagaContextIbGibs.forEach(x => console.log(pretty(x)));
|
|
218
|
-
// // Placeholder - test passes because keystone creation works
|
|
219
|
-
// iReckon(sir, true)
|
|
220
|
-
// .asTo('session keystone created (saga access TODO)')
|
|
221
|
-
// .isGonnaBeTrue();
|
|
213
|
+
// iReckon(sir, sessionKeystoneAddr)
|
|
214
|
+
// .asTo('session keystone address was captured from peer')
|
|
215
|
+
// .isGonnaBeTruthy();
|
|
216
|
+
// if (sessionKeystoneAddr) {
|
|
217
|
+
// const resGet = await getFromSpace({ addr: sessionKeystoneAddr, space: sourceSpace });
|
|
218
|
+
// iReckon(sir, resGet.success && resGet.ibGibs && resGet.ibGibs.length === 1)
|
|
219
|
+
// .asTo('sender has session keystone')
|
|
220
|
+
// .isGonnaBeTrue();
|
|
221
|
+
// }
|
|
222
222
|
// });
|
|
223
223
|
// await ifWe(sir, 'IDENTITY: session keystone exists in receiver space', async () => {
|
|
224
224
|
// // Session keystone should be transferred to receiver's durable space
|
|
@@ -227,7 +227,7 @@ export {};
|
|
|
227
227
|
// .isGonnaBeTruthy();
|
|
228
228
|
// if (sessionKeystoneAddr) {
|
|
229
229
|
// const destResult = await getFromSpace({ addr: sessionKeystoneAddr, space: destSpace });
|
|
230
|
-
// iReckon(sir, destResult.success)
|
|
230
|
+
// iReckon(sir, destResult.success && destResult.ibGibs && destResult.ibGibs.length === 1)
|
|
231
231
|
// .asTo('receiver has session keystone')
|
|
232
232
|
// .isGonnaBeTrue();
|
|
233
233
|
// }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-innerspace-dest-ahead-withid.respec.mjs","sourceRoot":"","sources":["../../src/sync/sync-innerspace-dest-ahead-withid.respec.mts"],"names":[],"mappings":"AAAA,MAAM;AACN,+CAA+C;AAC/C,KAAK;AACL,gFAAgF;AAChF,MAAM;;AAEN,WAAW;AACX,6CAA6C;AAC7C,gBAAgB;AAChB,6DAA6D;AAC7D,mDAAmD;AACnD,2GAA2G;AAC3G,gEAAgE;AAChE,4DAA4D;AAE5D,qEAAqE;AACrE,kHAAkH;AAClH,mHAAmH;AACnH,mFAAmF;AACnF,oGAAoG;AACpG,+DAA+D;AAC/D,oGAAoG;AACpG,wGAAwG;AACxG,8HAA8H;AAC9H,sEAAsE;AACtE,yEAAyE;AACzE,yEAAyE;AACzE,mEAAmE;AACnE,mDAAmD;AACnD,+DAA+D;AAC/D,0FAA0F;AAC1F,6FAA6F;AAC7F,8FAA8F;
|
|
1
|
+
{"version":3,"file":"sync-innerspace-dest-ahead-withid.respec.mjs","sourceRoot":"","sources":["../../src/sync/sync-innerspace-dest-ahead-withid.respec.mts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Verifies Complex Sync Scenarios using InnerSpace.
|
|
5
5
|
*/
|
|
6
|
-
import { respecfully,
|
|
6
|
+
import { respecfully, iReckon, ifWeMight } from '@ibgib/helper-gib/dist/respec-gib/respec-gib.mjs';
|
|
7
7
|
const maam = `[${import.meta.url}]`, sir = maam;
|
|
8
8
|
import { clone, delay, pretty } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
|
|
9
9
|
import { getIbGibAddr } from '@ibgib/ts-gib/dist/helper.mjs';
|
|
@@ -11,7 +11,7 @@ import { SyncSagaCoordinator } from './sync-saga-coordinator.mjs';
|
|
|
11
11
|
import { putInSpace, getFromSpace, registerNewIbGib } from '../witness/space/space-helper.mjs';
|
|
12
12
|
import { Metaspace_Innerspace } from '../witness/space/metaspace/metaspace-innerspace/metaspace-innerspace.mjs';
|
|
13
13
|
import { InnerSpace_V1 } from '../witness/space/inner-space/inner-space-v1.mjs';
|
|
14
|
-
import { createTimelineRootTestHelper,
|
|
14
|
+
import { createTimelineRootTestHelper, } from '../test-helpers.mjs';
|
|
15
15
|
import { mut8Timeline } from '../timeline/timeline-api.mjs';
|
|
16
16
|
import { DEFAULT_INNER_SPACE_DATA_V1 } from '../witness/space/inner-space/inner-space-types.mjs';
|
|
17
17
|
import { SyncPeerInnerspace_V1 } from './sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mjs';
|
|
@@ -87,7 +87,7 @@ await respecfully(sir, `Sync InnerSpaces (Dest Ahead)`, async () => {
|
|
|
87
87
|
const resGet = await getFromSpace({ addr, space });
|
|
88
88
|
return resGet.success && resGet.ibGibs && resGet.ibGibs.length === 1;
|
|
89
89
|
};
|
|
90
|
-
await
|
|
90
|
+
await ifWeMight(sir, 'verify setup', async () => {
|
|
91
91
|
// Ensure V2 is ONLY in Dest (it is, per `space: destSpace`)
|
|
92
92
|
// Ensure Source does NOT have V2
|
|
93
93
|
iReckon(sir, await fnAddrExistsInSpace(addrV0, sourceSpace)).asTo('source has V0').isGonnaBeTrue();
|
|
@@ -98,12 +98,12 @@ await respecfully(sir, `Sync InnerSpaces (Dest Ahead)`, async () => {
|
|
|
98
98
|
iReckon(sir, await fnAddrExistsInSpace(addrV2, destSpace)).asTo('dest has V2').isGonnaBeTrue();
|
|
99
99
|
});
|
|
100
100
|
// 3. Setup Sync
|
|
101
|
-
const
|
|
102
|
-
const
|
|
103
|
-
const receiverCoordinator = new SyncSagaCoordinator(mockKeystone);
|
|
101
|
+
const senderCoordinator = new SyncSagaCoordinator();
|
|
102
|
+
const receiverCoordinator = new SyncSagaCoordinator();
|
|
104
103
|
const peer = new SyncPeerInnerspace_V1(clone(SYNC_PEER_INNERSPACE_DEFAULT_DATA_V1));
|
|
105
104
|
await peer.initialized;
|
|
106
105
|
await peer.initializeOpts({
|
|
106
|
+
localMetaspace: metaspace,
|
|
107
107
|
localSpace: sourceSpace, // "Client"
|
|
108
108
|
receiverSpace: destSpace, // "Server"
|
|
109
109
|
receiverCoordinator,
|
|
@@ -116,12 +116,11 @@ await respecfully(sir, `Sync InnerSpaces (Dest Ahead)`, async () => {
|
|
|
116
116
|
localSpace: sourceSpace,
|
|
117
117
|
metaspace: metaspace,
|
|
118
118
|
domainIbGibs: [v1], // Source tries to push V1
|
|
119
|
-
useSessionIdentity: false,
|
|
120
119
|
});
|
|
121
120
|
await done;
|
|
122
121
|
// 5. Verify Sync (v2 should be in both source and dest now)
|
|
123
122
|
console.log(`${lc} Verifying Sync...`);
|
|
124
|
-
await
|
|
123
|
+
await ifWeMight(sir, `verify v2 now also in source`, async () => {
|
|
125
124
|
// Verify Tip (V2)
|
|
126
125
|
iReckon(sir, await fnAddrExistsInSpace(addrV0, sourceSpace)).asTo('source has V0').isGonnaBeTrue();
|
|
127
126
|
iReckon(sir, await fnAddrExistsInSpace(addrV1, sourceSpace)).asTo('source has V1').isGonnaBeTrue();
|
|
@@ -130,7 +129,7 @@ await respecfully(sir, `Sync InnerSpaces (Dest Ahead)`, async () => {
|
|
|
130
129
|
iReckon(sir, await fnAddrExistsInSpace(addrV1, destSpace)).asTo('dest has V1').isGonnaBeTrue();
|
|
131
130
|
iReckon(sir, await fnAddrExistsInSpace(addrV2, destSpace)).asTo('dest has V2').isGonnaBeTrue();
|
|
132
131
|
});
|
|
133
|
-
await
|
|
132
|
+
await ifWeMight(sir, `dependency graphs the same`, async () => {
|
|
134
133
|
const sourceDepGraph = await getDependencyGraph({
|
|
135
134
|
ibGibAddr: addrV2,
|
|
136
135
|
space: sourceSpace,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-innerspace-dest-ahead.respec.mjs","sourceRoot":"","sources":["../../src/sync/sync-innerspace-dest-ahead.respec.mts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,WAAW,
|
|
1
|
+
{"version":3,"file":"sync-innerspace-dest-ahead.respec.mjs","sourceRoot":"","sources":["../../src/sync/sync-innerspace-dest-ahead.respec.mts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Verifies Complex Sync Scenarios using InnerSpace.
|
|
5
5
|
*/
|
|
6
|
-
import { respecfully,
|
|
6
|
+
import { respecfully, iReckon, ifWeMight } from '@ibgib/helper-gib/dist/respec-gib/respec-gib.mjs';
|
|
7
7
|
const maam = `[${import.meta.url}]`, sir = maam;
|
|
8
8
|
import { clone, delay } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
|
|
9
9
|
import { getIbGibAddr } from '@ibgib/ts-gib/dist/helper.mjs';
|
|
@@ -11,7 +11,7 @@ import { SyncSagaCoordinator } from './sync-saga-coordinator.mjs';
|
|
|
11
11
|
import { getFromSpace } from '../witness/space/space-helper.mjs';
|
|
12
12
|
import { Metaspace_Innerspace } from '../witness/space/metaspace/metaspace-innerspace/metaspace-innerspace.mjs';
|
|
13
13
|
import { InnerSpace_V1 } from '../witness/space/inner-space/inner-space-v1.mjs';
|
|
14
|
-
import { createTimelineRootTestHelper,
|
|
14
|
+
import { createTimelineRootTestHelper, } from '../test-helpers.mjs';
|
|
15
15
|
import { mut8Timeline } from '../timeline/timeline-api.mjs';
|
|
16
16
|
import { DEFAULT_INNER_SPACE_DATA_V1 } from '../witness/space/inner-space/inner-space-types.mjs';
|
|
17
17
|
import { SyncPeerInnerspace_V1 } from './sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mjs';
|
|
@@ -85,12 +85,12 @@ await respecfully(sir, `Sync InnerSpaces (Multiple Timelines)`, async () => {
|
|
|
85
85
|
});
|
|
86
86
|
const addrB = getIbGibAddr({ ibGib: childB2 });
|
|
87
87
|
// 3. Setup Coordinators & Peer
|
|
88
|
-
const
|
|
89
|
-
const
|
|
90
|
-
const receiverCoordinator = new SyncSagaCoordinator(mockKeystone);
|
|
88
|
+
const senderCoordinator = new SyncSagaCoordinator();
|
|
89
|
+
const receiverCoordinator = new SyncSagaCoordinator();
|
|
91
90
|
const peer = new SyncPeerInnerspace_V1(clone(SYNC_PEER_INNERSPACE_DEFAULT_DATA_V1));
|
|
92
91
|
await peer.initialized;
|
|
93
92
|
await peer.initializeOpts({
|
|
93
|
+
localMetaspace: metaspace,
|
|
94
94
|
localSpace: sourceSpace, // "Client"
|
|
95
95
|
receiverSpace: destSpace, // "Server"
|
|
96
96
|
receiverCoordinator,
|
|
@@ -103,13 +103,12 @@ await respecfully(sir, `Sync InnerSpaces (Multiple Timelines)`, async () => {
|
|
|
103
103
|
localSpace: sourceSpace,
|
|
104
104
|
metaspace: metaspace,
|
|
105
105
|
domainIbGibs: [childA, childB2], // Sync both tips
|
|
106
|
-
useSessionIdentity: false,
|
|
107
106
|
});
|
|
108
107
|
await resSync.done;
|
|
109
108
|
// await delay(100); // Wait for flush?
|
|
110
109
|
// 5. Verify Dest
|
|
111
110
|
console.log(`${lc} Verifying Destination...`);
|
|
112
|
-
await
|
|
111
|
+
await ifWeMight(sir, `verify timelines present`, async () => {
|
|
113
112
|
// Verify A
|
|
114
113
|
const getA = await getFromSpace({ space: destSpace, addr: addrA });
|
|
115
114
|
iReckon(sir, getA.success).asTo('Timeline A present').isGonnaBeTrue();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-innerspace-multiple-timelines.respec.mjs","sourceRoot":"","sources":["../../src/sync/sync-innerspace-multiple-timelines.respec.mts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,WAAW,
|
|
1
|
+
{"version":3,"file":"sync-innerspace-multiple-timelines.respec.mjs","sourceRoot":"","sources":["../../src/sync/sync-innerspace-multiple-timelines.respec.mts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Verifies Sync Scenarios where the Destination has partial history.
|
|
5
5
|
*/
|
|
6
|
-
import { respecfully,
|
|
6
|
+
import { respecfully, iReckon, ifWeMight } from '@ibgib/helper-gib/dist/respec-gib/respec-gib.mjs';
|
|
7
7
|
const maam = `[${import.meta.url}]`, sir = maam;
|
|
8
8
|
import { clone, delay } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
|
|
9
9
|
import { getIbGibAddr } from '@ibgib/ts-gib/dist/helper.mjs';
|
|
@@ -11,7 +11,7 @@ import { SyncSagaCoordinator } from './sync-saga-coordinator.mjs';
|
|
|
11
11
|
import { putInSpace, getFromSpace } from '../witness/space/space-helper.mjs';
|
|
12
12
|
import { Metaspace_Innerspace } from '../witness/space/metaspace/metaspace-innerspace/metaspace-innerspace.mjs';
|
|
13
13
|
import { InnerSpace_V1 } from '../witness/space/inner-space/inner-space-v1.mjs';
|
|
14
|
-
import { createTimelineRootTestHelper,
|
|
14
|
+
import { createTimelineRootTestHelper, } from '../test-helpers.mjs';
|
|
15
15
|
import { mut8Timeline } from '../timeline/timeline-api.mjs';
|
|
16
16
|
import { DEFAULT_INNER_SPACE_DATA_V1 } from '../witness/space/inner-space/inner-space-types.mjs';
|
|
17
17
|
import { SyncPeerInnerspace_V1 } from './sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mjs';
|
|
@@ -73,7 +73,7 @@ await respecfully(sir, `Sync InnerSpaces (Partial Update)`, async () => {
|
|
|
73
73
|
const addrV2 = getIbGibAddr({ ibGib: v2 });
|
|
74
74
|
// Transfer Root & V1 to Dest (Simulate previous sync)
|
|
75
75
|
await putInSpace({ space: destSpace, ibGibs: [root, v1] });
|
|
76
|
-
await
|
|
76
|
+
await ifWeMight(sir, 'verify setup', async () => {
|
|
77
77
|
// Verify Dest has V1
|
|
78
78
|
const checkV1 = await getFromSpace({ space: destSpace, addr: getIbGibAddr({ ibGib: v1 }) });
|
|
79
79
|
iReckon(sir, checkV1.success).asTo('Dest has V1').isGonnaBeTrue();
|
|
@@ -82,12 +82,12 @@ await respecfully(sir, `Sync InnerSpaces (Partial Update)`, async () => {
|
|
|
82
82
|
iReckon(sir, checkV2.success && !!checkV2.ibGibs?.length).asTo('Dest has V2').isGonnaBeFalse();
|
|
83
83
|
});
|
|
84
84
|
// 3. Setup Sync
|
|
85
|
-
const
|
|
86
|
-
const
|
|
87
|
-
const receiverCoordinator = new SyncSagaCoordinator(mockKeystone);
|
|
85
|
+
const senderCoordinator = new SyncSagaCoordinator();
|
|
86
|
+
const receiverCoordinator = new SyncSagaCoordinator();
|
|
88
87
|
const peer = new SyncPeerInnerspace_V1(clone(SYNC_PEER_INNERSPACE_DEFAULT_DATA_V1));
|
|
89
88
|
await peer.initialized;
|
|
90
89
|
await peer.initializeOpts({
|
|
90
|
+
localMetaspace: metaspace,
|
|
91
91
|
localSpace: sourceSpace, // "Client"
|
|
92
92
|
receiverSpace: destSpace, // "Server"
|
|
93
93
|
receiverCoordinator,
|
|
@@ -100,12 +100,11 @@ await respecfully(sir, `Sync InnerSpaces (Partial Update)`, async () => {
|
|
|
100
100
|
localSpace: sourceSpace,
|
|
101
101
|
metaspace: metaspace,
|
|
102
102
|
domainIbGibs: [v2],
|
|
103
|
-
useSessionIdentity: false,
|
|
104
103
|
});
|
|
105
104
|
await resSync.done;
|
|
106
105
|
// 5. Verify Dest (Should now have V2)
|
|
107
106
|
console.log(`${lc} Verifying Destination...`);
|
|
108
|
-
await
|
|
107
|
+
await ifWeMight(sir, `verify dest updated`, async () => {
|
|
109
108
|
// Verify Tip (V2)
|
|
110
109
|
const getV2 = await getFromSpace({ space: destSpace, addr: addrV2 });
|
|
111
110
|
iReckon(sir, getV2.success).asTo('V2 present in Dest').isGonnaBeTrue();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-innerspace-partial-update.respec.mjs","sourceRoot":"","sources":["../../src/sync/sync-innerspace-partial-update.respec.mts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,WAAW,
|
|
1
|
+
{"version":3,"file":"sync-innerspace-partial-update.respec.mjs","sourceRoot":"","sources":["../../src/sync/sync-innerspace-partial-update.respec.mts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Verifies SyncSagaCoordinator using InnerSpace (in-memory/local) spaces.
|
|
5
5
|
* This utilizes SyncPeerInnerspace_V1 for local-to-local synchronization simulations.
|
|
6
6
|
*/
|
|
7
|
-
import { respecfully,
|
|
7
|
+
import { respecfully, iReckon, ifWeMight } from '@ibgib/helper-gib/dist/respec-gib/respec-gib.mjs';
|
|
8
8
|
const maam = `[${import.meta.url}]`, sir = maam;
|
|
9
9
|
import { clone, delay, extractErrorMsg, pretty } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
|
|
10
10
|
import { getIbGibAddr } from '@ibgib/ts-gib/dist/helper.mjs';
|
|
@@ -13,7 +13,7 @@ import { SyncSagaCoordinator } from './sync-saga-coordinator.mjs';
|
|
|
13
13
|
import { getFromSpace } from '../witness/space/space-helper.mjs';
|
|
14
14
|
import { Metaspace_Innerspace } from '../witness/space/metaspace/metaspace-innerspace/metaspace-innerspace.mjs';
|
|
15
15
|
import { InnerSpace_V1 } from '../witness/space/inner-space/inner-space-v1.mjs';
|
|
16
|
-
import { createTimelineRootTestHelper,
|
|
16
|
+
import { createTimelineRootTestHelper, } from '../test-helpers.mjs';
|
|
17
17
|
import { mut8Timeline, } from '../timeline/timeline-api.mjs';
|
|
18
18
|
import { DEFAULT_INNER_SPACE_DATA_V1 } from '../witness/space/inner-space/inner-space-types.mjs';
|
|
19
19
|
import { toDto } from '../common/other/ibgib-helper.mjs';
|
|
@@ -91,24 +91,22 @@ await respecfully(sir, `Sync InnerSpaces`, async () => {
|
|
|
91
91
|
if (logalot) {
|
|
92
92
|
console.log(`${lc} Setting up Coordinators...`);
|
|
93
93
|
}
|
|
94
|
-
const mockKeystone = await getTestKeystoneServiceHelper();
|
|
95
|
-
// const identity = await (mockKeystone as any).getIdentity(); // SKIP IDENTITY FOR INITIAL TESTING SIMPLICITY
|
|
96
94
|
// Sender Coordinator
|
|
97
|
-
const senderCoordinator = new SyncSagaCoordinator(
|
|
95
|
+
const senderCoordinator = new SyncSagaCoordinator();
|
|
98
96
|
// Receiver Coordinator
|
|
99
97
|
// Note: Receiver acts "globally" usually, but here we treat it as bound to the dest operations?
|
|
100
98
|
// Actually SyncSagaCoordinator isn't bound to a space. It works ON a space.
|
|
101
99
|
// So we can reuse or create separate instances. Let's create separate to simulate remote.
|
|
102
|
-
const receiverCoordinator = new SyncSagaCoordinator(
|
|
100
|
+
const receiverCoordinator = new SyncSagaCoordinator();
|
|
103
101
|
// Peer (The "Network")
|
|
104
102
|
const peer = new SyncPeerInnerspace_V1(clone(SYNC_PEER_INNERSPACE_DEFAULT_DATA_V1));
|
|
105
103
|
await peer.initialized;
|
|
106
104
|
await peer.initializeOpts({
|
|
105
|
+
localMetaspace: metaspace,
|
|
107
106
|
localSpace: sourceSpace, // "Client"
|
|
108
107
|
receiverSpace: destSpace, // "Server"
|
|
109
108
|
receiverCoordinator,
|
|
110
109
|
receiverMetaspace: metaspace,
|
|
111
|
-
keystoneSvc: mockKeystone
|
|
112
110
|
});
|
|
113
111
|
// 4. Run Sync
|
|
114
112
|
if (logalot) {
|
|
@@ -119,7 +117,6 @@ await respecfully(sir, `Sync InnerSpaces`, async () => {
|
|
|
119
117
|
localSpace: sourceSpace,
|
|
120
118
|
metaspace: metaspace,
|
|
121
119
|
domainIbGibs: [child], // Sync the child
|
|
122
|
-
useSessionIdentity: false,
|
|
123
120
|
}); // Type cast if needed until we align optional params
|
|
124
121
|
if (logalot) {
|
|
125
122
|
console.log(`${lc} resSync: ${pretty(resSync)}`);
|
|
@@ -157,10 +154,10 @@ await respecfully(sir, `Sync InnerSpaces`, async () => {
|
|
|
157
154
|
}
|
|
158
155
|
try {
|
|
159
156
|
const getChildInDest = await getFromSpace({ space: destSpace, addr: childAddr });
|
|
160
|
-
await
|
|
157
|
+
await ifWeMight(sir, `verify success getChildInDest`, async () => {
|
|
161
158
|
iReckon(sir, getChildInDest.success).asTo('Child present in Dest').isGonnaBeTrue();
|
|
162
159
|
});
|
|
163
|
-
await
|
|
160
|
+
await ifWeMight(sir, `verify getChildInDest.ibGibs`, async () => {
|
|
164
161
|
const firstChild = getChildInDest.ibGibs?.[0];
|
|
165
162
|
if (logalot) {
|
|
166
163
|
console.log(`${lc} firstChild: ${pretty(firstChild)}`);
|
|
@@ -169,7 +166,7 @@ await respecfully(sir, `Sync InnerSpaces`, async () => {
|
|
|
169
166
|
});
|
|
170
167
|
}
|
|
171
168
|
catch (error) {
|
|
172
|
-
await
|
|
169
|
+
await ifWeMight(sir, `doh`, async () => {
|
|
173
170
|
// hack here I'm getting tired...
|
|
174
171
|
iReckon(sir, true).asTo(`error: ${extractErrorMsg(error)}`).isGonnaBeFalse();
|
|
175
172
|
});
|