@ibgib/core-gib 0.1.57 → 0.1.59
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/dist/keystone/keystone-config-builder.d.mts +12 -1
- package/dist/keystone/keystone-config-builder.d.mts.map +1 -1
- package/dist/keystone/keystone-config-builder.mjs +58 -4
- package/dist/keystone/keystone-config-builder.mjs.map +1 -1
- package/dist/keystone/keystone-constants.d.mts +40 -5
- package/dist/keystone/keystone-constants.d.mts.map +1 -1
- package/dist/keystone/keystone-constants.mjs +39 -5
- package/dist/keystone/keystone-constants.mjs.map +1 -1
- package/dist/keystone/keystone-helpers.d.mts +11 -1
- package/dist/keystone/keystone-helpers.d.mts.map +1 -1
- package/dist/keystone/keystone-helpers.mjs +37 -1
- package/dist/keystone/keystone-helpers.mjs.map +1 -1
- package/dist/keystone/keystone-policy-types.d.mts +23 -0
- package/dist/keystone/keystone-policy-types.d.mts.map +1 -0
- package/dist/keystone/keystone-policy-types.mjs +2 -0
- package/dist/keystone/keystone-policy-types.mjs.map +1 -0
- 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 +22 -22
- package/dist/sync/sync-conflict-adv-multitimelines.respec.mjs.map +1 -1
- package/dist/sync/sync-conflict-basic-divergence.respec.mjs +3 -3
- package/dist/sync/sync-conflict-basic-divergence.respec.mjs.map +1 -1
- package/dist/sync/sync-conflict-basic-multitimelines.respec.mjs +6 -6
- package/dist/sync/sync-conflict-basic-multitimelines.respec.mjs.map +1 -1
- package/dist/sync/sync-conflict-text-merge.respec.mjs +26 -26
- package/dist/sync/sync-conflict-text-merge.respec.mjs.map +1 -1
- package/dist/sync/sync-helpers.d.mts +19 -0
- package/dist/sync/sync-helpers.d.mts.map +1 -1
- package/dist/sync/sync-helpers.mjs +51 -1
- package/dist/sync/sync-helpers.mjs.map +1 -1
- package/dist/sync/sync-innerspace-constants.respec.mjs +2 -2
- package/dist/sync/sync-innerspace-constants.respec.mjs.map +1 -1
- package/dist/sync/sync-innerspace-deep-updates.respec.mjs +2 -2
- package/dist/sync/sync-innerspace-deep-updates.respec.mjs.map +1 -1
- package/dist/sync/sync-innerspace-dest-ahead.respec.mjs +4 -4
- package/dist/sync/sync-innerspace-dest-ahead.respec.mjs.map +1 -1
- package/dist/sync/sync-innerspace-multiple-timelines.respec.mjs +2 -2
- package/dist/sync/sync-innerspace-multiple-timelines.respec.mjs.map +1 -1
- package/dist/sync/sync-innerspace-partial-update.respec.mjs +3 -3
- package/dist/sync/sync-innerspace-partial-update.respec.mjs.map +1 -1
- package/dist/sync/sync-innerspace.respec.mjs +4 -4
- package/dist/sync/sync-innerspace.respec.mjs.map +1 -1
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.d.mts +5 -0
- 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 +24 -2
- 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-v1.d.mts +5 -0
- 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 +21 -3
- 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 +1 -1
- package/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.d.mts +13 -1
- 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 +40 -10
- 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 +81 -1
- package/dist/sync/sync-peer/sync-peer-types.d.mts.map +1 -1
- package/dist/sync/sync-peer/sync-peer-v1.d.mts +37 -3
- package/dist/sync/sync-peer/sync-peer-v1.d.mts.map +1 -1
- package/dist/sync/sync-peer/sync-peer-v1.mjs +163 -23
- package/dist/sync/sync-peer/sync-peer-v1.mjs.map +1 -1
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-constants.d.mts +46 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-constants.d.mts.map +1 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-constants.mjs +45 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-constants.mjs.map +1 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-receiver/sync-peer-websocket-receiver-types.d.mts +30 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-receiver/sync-peer-websocket-receiver-types.d.mts.map +1 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-receiver/sync-peer-websocket-receiver-types.mjs +2 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-receiver/sync-peer-websocket-receiver-types.mjs.map +1 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-receiver/sync-peer-websocket-receiver-v1.d.mts +68 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-receiver/sync-peer-websocket-receiver-v1.d.mts.map +1 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-receiver/sync-peer-websocket-receiver-v1.mjs +324 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-receiver/sync-peer-websocket-receiver-v1.mjs.map +1 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-receiver/sync-websocket-peer-helpers.d.mts +85 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-receiver/sync-websocket-peer-helpers.d.mts.map +1 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-receiver/sync-websocket-peer-helpers.mjs +332 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-receiver/sync-websocket-peer-helpers.mjs.map +1 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-sender/sync-peer-websocket-sender-types.d.mts +29 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-sender/sync-peer-websocket-sender-types.d.mts.map +1 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-sender/sync-peer-websocket-sender-types.mjs +2 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-sender/sync-peer-websocket-sender-types.mjs.map +1 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-sender/sync-peer-websocket-sender-v1.d.mts +44 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-sender/sync-peer-websocket-sender-v1.d.mts.map +1 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-sender/sync-peer-websocket-sender-v1.mjs +303 -0
- package/dist/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-sender/sync-peer-websocket-sender-v1.mjs.map +1 -0
- package/dist/sync/sync-saga-context/sync-saga-context-helpers.d.mts +22 -5
- 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 +223 -27
- 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 +9 -0
- package/dist/sync/sync-saga-context/sync-saga-context-types.d.mts.map +1 -1
- package/dist/sync/sync-saga-coordinator.d.mts +41 -2
- package/dist/sync/sync-saga-coordinator.d.mts.map +1 -1
- package/dist/sync/sync-saga-coordinator.mjs +110 -11
- package/dist/sync/sync-saga-coordinator.mjs.map +1 -1
- package/dist/sync/sync-types.d.mts +24 -0
- package/dist/sync/sync-types.d.mts.map +1 -1
- package/dist/sync/sync-types.mjs +0 -1
- package/dist/sync/sync-types.mjs.map +1 -1
- package/dist/sync/sync-withid.connect.respec.d.mts +12 -0
- package/dist/sync/sync-withid.connect.respec.d.mts.map +1 -0
- package/dist/sync/sync-withid.connect.respec.mjs +205 -0
- package/dist/sync/sync-withid.connect.respec.mjs.map +1 -0
- package/dist/sync/sync-withid.establish.respec.d.mts +19 -0
- package/dist/sync/sync-withid.establish.respec.d.mts.map +1 -0
- package/dist/sync/sync-withid.establish.respec.mjs +322 -0
- package/dist/sync/sync-withid.establish.respec.mjs.map +1 -0
- package/dist/sync/sync-withid.pingpong.respec.d.mts +11 -0
- package/dist/sync/sync-withid.pingpong.respec.d.mts.map +1 -0
- package/dist/sync/sync-withid.pingpong.respec.mjs +131 -0
- package/dist/sync/sync-withid.pingpong.respec.mjs.map +1 -0
- package/dist/witness/space/inner-space/inner-space-v1.d.mts.map +1 -1
- package/dist/witness/space/inner-space/inner-space-v1.mjs +1 -1
- package/dist/witness/space/inner-space/inner-space-v1.mjs.map +1 -1
- package/package.json +4 -4
- package/src/keystone/keystone-config-builder.mts +73 -4
- package/src/keystone/keystone-constants.mts +42 -6
- package/src/keystone/keystone-helpers.mts +44 -2
- package/src/keystone/keystone-policy-types.mts +25 -0
- package/src/keystone/keystone-policy.schema.json +51 -0
- package/src/keystone/keystone-service-v1.mts +3 -3
- package/src/sync/docs/architecture.md +20 -0
- package/src/sync/docs/ping_pong_plan.md +147 -0
- package/src/sync/docs/security.md +207 -3
- package/src/sync/graft-info/graft-info-helpers.respec.mts +7 -7
- package/src/sync/sync-conflict-adv-multitimelines.respec.mts +21 -21
- package/src/sync/sync-conflict-basic-divergence.respec.mts +2 -2
- package/src/sync/sync-conflict-basic-multitimelines.respec.mts +5 -5
- package/src/sync/sync-conflict-text-merge.respec.mts +25 -25
- package/src/sync/sync-helpers.mts +51 -1
- package/src/sync/sync-innerspace-constants.respec.mts +1 -1
- package/src/sync/sync-innerspace-deep-updates.respec.mts +1 -1
- package/src/sync/sync-innerspace-dest-ahead.respec.mts +3 -3
- package/src/sync/sync-innerspace-multiple-timelines.respec.mts +1 -1
- package/src/sync/sync-innerspace-partial-update.respec.mts +2 -2
- package/src/sync/sync-innerspace.respec.mts +3 -3
- package/src/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.mts +26 -2
- package/src/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-v1.mts +23 -3
- package/src/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-types.mts +1 -1
- package/src/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mts +47 -13
- package/src/sync/sync-peer/sync-peer-types.mts +87 -1
- package/src/sync/sync-peer/sync-peer-v1.mts +171 -32
- package/src/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-constants.mts +68 -0
- package/src/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-receiver/sync-peer-websocket-receiver-types.mts +36 -0
- package/src/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-receiver/sync-peer-websocket-receiver-v1.mts +385 -0
- package/src/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-receiver/sync-websocket-peer-helpers.mts +388 -0
- package/src/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-sender/sync-peer-websocket-sender-types.mts +35 -0
- package/src/sync/sync-peer/sync-peer-websocket/sync-peer-websocket-sender/sync-peer-websocket-sender-v1.mts +345 -0
- package/src/sync/sync-saga-context/sync-saga-context-helpers.mts +223 -34
- package/src/sync/sync-saga-context/sync-saga-context-types.mts +9 -0
- package/src/sync/sync-saga-coordinator.mts +162 -6
- package/src/sync/sync-types.mts +28 -4
- package/src/sync/sync-withid.connect.respec.mts +243 -0
- package/src/sync/sync-withid.establish.respec.mts +361 -0
- package/src/sync/sync-withid.pingpong.respec.mts +161 -0
- package/src/sync/unused-identity-backup.mts.md +1 -1
- package/src/witness/space/inner-space/inner-space-v1.mts +4 -5
- package/dist/sync/sync-innerspace-dest-ahead-withid.respec.d.mts +0 -2
- package/dist/sync/sync-innerspace-dest-ahead-withid.respec.d.mts.map +0 -1
- package/dist/sync/sync-innerspace-dest-ahead-withid.respec.mjs +0 -310
- package/dist/sync/sync-innerspace-dest-ahead-withid.respec.mjs.map +0 -1
- package/src/sync/sync-innerspace-dest-ahead-withid.respec.mts +0 -364
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-withid.connect.respec.mjs","sourceRoot":"","sources":["../../src/sync/sync-withid.connect.respec.mts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module sync-withid.establish.respec
|
|
3
|
+
*
|
|
4
|
+
* Phase 1 — `establishSessionIdentity` (Pre-Connect)
|
|
5
|
+
*
|
|
6
|
+
* Goal: Get `I^Itjp` onto the domain provider, generate `S^Stjp` locally,
|
|
7
|
+
* evolve `I → I1` with a `sync` claim targeting `S^Stjp`, and post both
|
|
8
|
+
* `I1` and `S` to the provider. Verify both keystones are in the appropriate
|
|
9
|
+
* durable spaces at the right times.
|
|
10
|
+
*
|
|
11
|
+
* `senderCoordinator.sync(...)` IS called — we are not mocking. We expect it
|
|
12
|
+
* may throw at first. We examine side-effects (keystone presence in durable
|
|
13
|
+
* spaces) rather than end-to-end correctness. As phases succeed and sync no
|
|
14
|
+
* longer throws, assertions will be adjusted accordingly.
|
|
15
|
+
*
|
|
16
|
+
* @see libs/core-gib/src/sync/docs/security.md — Implementation Plan, Phase 1A
|
|
17
|
+
*/
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=sync-withid.establish.respec.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-withid.establish.respec.d.mts","sourceRoot":"","sources":["../../src/sync/sync-withid.establish.respec.mts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG"}
|
|
@@ -0,0 +1,322 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module sync-withid.establish.respec
|
|
3
|
+
*
|
|
4
|
+
* Phase 1 — `establishSessionIdentity` (Pre-Connect)
|
|
5
|
+
*
|
|
6
|
+
* Goal: Get `I^Itjp` onto the domain provider, generate `S^Stjp` locally,
|
|
7
|
+
* evolve `I → I1` with a `sync` claim targeting `S^Stjp`, and post both
|
|
8
|
+
* `I1` and `S` to the provider. Verify both keystones are in the appropriate
|
|
9
|
+
* durable spaces at the right times.
|
|
10
|
+
*
|
|
11
|
+
* `senderCoordinator.sync(...)` IS called — we are not mocking. We expect it
|
|
12
|
+
* may throw at first. We examine side-effects (keystone presence in durable
|
|
13
|
+
* spaces) rather than end-to-end correctness. As phases succeed and sync no
|
|
14
|
+
* longer throws, assertions will be adjusted accordingly.
|
|
15
|
+
*
|
|
16
|
+
* @see libs/core-gib/src/sync/docs/security.md — Implementation Plan, Phase 1A
|
|
17
|
+
*/
|
|
18
|
+
import { respecfully, iReckon, ifWe } from '@ibgib/helper-gib/dist/respec-gib/respec-gib.mjs';
|
|
19
|
+
const maam = `[${import.meta.url}]`, sir = maam;
|
|
20
|
+
import { clone, delay, extractErrorMsg } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
|
|
21
|
+
import { getIbGibAddr } from '@ibgib/ts-gib/dist/helper.mjs';
|
|
22
|
+
import { GLOBAL_LOG_A_LOT } from '../core-constants.mjs';
|
|
23
|
+
import { SyncSagaCoordinator } from './sync-saga-coordinator.mjs';
|
|
24
|
+
import { Metaspace_Innerspace } from '../witness/space/metaspace/metaspace-innerspace/metaspace-innerspace.mjs';
|
|
25
|
+
import { InnerSpace_V1 } from '../witness/space/inner-space/inner-space-v1.mjs';
|
|
26
|
+
import { SyncPeerInnerspace_V1 } from './sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mjs';
|
|
27
|
+
import { DEFAULT_INNER_SPACE_DATA_V1 } from '../witness/space/inner-space/inner-space-types.mjs';
|
|
28
|
+
import { SYNC_PEER_INNERSPACE_DEFAULT_DATA_V1 } from './sync-peer/sync-peer-innerspace/sync-peer-innerspace-constants.mjs';
|
|
29
|
+
import { KeystoneService_V1 } from '../keystone/keystone-service-v1.mjs';
|
|
30
|
+
import { KEYSTONE_VERB_SYNC, POOL_ID_SYNC, POOL_ID_CONNECT, KEYSTONE_VERB_CONNECT, } from '../keystone/keystone-constants.mjs';
|
|
31
|
+
import { createStandardPoolConfig } from '../keystone/keystone-config-builder.mjs';
|
|
32
|
+
import { KeystoneReplenishStrategy } from '../keystone/keystone-types.mjs';
|
|
33
|
+
import { SyncConflictStrategy } from './sync-constants.mjs';
|
|
34
|
+
import { getIdentity_throwIfUndefined } from '../keystone/keystone-helpers.mjs';
|
|
35
|
+
import { Factory_V1 } from '@ibgib/ts-gib/dist/V1/factory.mjs';
|
|
36
|
+
import { ROOT } from '@ibgib/ts-gib/dist/V1/constants.mjs';
|
|
37
|
+
import { fork } from '@ibgib/ts-gib/dist/V1/transforms/fork.mjs';
|
|
38
|
+
const logalot = GLOBAL_LOG_A_LOT;
|
|
39
|
+
const lc = sir;
|
|
40
|
+
// ---------------------------------------------------------------------------
|
|
41
|
+
// Test-only identity constants
|
|
42
|
+
// ---------------------------------------------------------------------------
|
|
43
|
+
/**
|
|
44
|
+
* Plaintext secret for the senderIdentity keystone (I).
|
|
45
|
+
* Test-only — never use plaintext secrets in production.
|
|
46
|
+
*/
|
|
47
|
+
const SENDER_SECRET = 'test-sender-secret-phase1';
|
|
48
|
+
// ---------------------------------------------------------------------------
|
|
49
|
+
// Session keystone pool configs
|
|
50
|
+
// ---------------------------------------------------------------------------
|
|
51
|
+
/**
|
|
52
|
+
* `connect` pool — used once during `peer.connect()` transport handshake.
|
|
53
|
+
* Small pool; fully consumed in one handshake.
|
|
54
|
+
*/
|
|
55
|
+
const SESSION_CONNECT_POOL_CONFIG = createStandardPoolConfig({
|
|
56
|
+
id: POOL_ID_CONNECT,
|
|
57
|
+
salt: 'session-connect-salt-phase1',
|
|
58
|
+
verbs: [KEYSTONE_VERB_CONNECT],
|
|
59
|
+
// Small size: fully consumed in a single connect handshake
|
|
60
|
+
size: 10,
|
|
61
|
+
sequential: 1,
|
|
62
|
+
random: 1,
|
|
63
|
+
targetBinding: 2,
|
|
64
|
+
replenishStrategy: KeystoneReplenishStrategy.deleteAll,
|
|
65
|
+
});
|
|
66
|
+
/**
|
|
67
|
+
* `sync` pool — used per outgoing context frame (Init, Delta, Commit).
|
|
68
|
+
* Replenishes via topUp to stay active throughout the saga.
|
|
69
|
+
*/
|
|
70
|
+
const SESSION_SYNC_POOL_CONFIG = createStandardPoolConfig({
|
|
71
|
+
id: POOL_ID_SYNC,
|
|
72
|
+
salt: 'session-sync-salt-phase1',
|
|
73
|
+
verbs: [KEYSTONE_VERB_SYNC],
|
|
74
|
+
size: 200,
|
|
75
|
+
sequential: 1,
|
|
76
|
+
random: 1,
|
|
77
|
+
targetBinding: 2,
|
|
78
|
+
replenishStrategy: KeystoneReplenishStrategy.topUp,
|
|
79
|
+
});
|
|
80
|
+
// ---------------------------------------------------------------------------
|
|
81
|
+
// Top-level senderIdentity (I) pool config
|
|
82
|
+
// ---------------------------------------------------------------------------
|
|
83
|
+
/**
|
|
84
|
+
* The senderIdentity needs a `sync` pool so it can evolve itself (I → I1)
|
|
85
|
+
* with a claim targeting the session keystone genesis (S^Stjp).
|
|
86
|
+
*/
|
|
87
|
+
const SENDER_IDENTITY_SYNC_POOL_CONFIG = createStandardPoolConfig({
|
|
88
|
+
id: POOL_ID_SYNC,
|
|
89
|
+
salt: 'senderidentitysyncsaltphase1', // dashes not allowed in regex
|
|
90
|
+
verbs: [KEYSTONE_VERB_SYNC],
|
|
91
|
+
size: 200,
|
|
92
|
+
sequential: 1,
|
|
93
|
+
random: 1,
|
|
94
|
+
targetBinding: 2,
|
|
95
|
+
replenishStrategy: KeystoneReplenishStrategy.topUp,
|
|
96
|
+
});
|
|
97
|
+
// ---------------------------------------------------------------------------
|
|
98
|
+
// Main test suite
|
|
99
|
+
// ---------------------------------------------------------------------------
|
|
100
|
+
await respecfully(sir, `Test Phase 1: establishSessionIdentity`, async () => {
|
|
101
|
+
// #region Init/Setup
|
|
102
|
+
const metaspace = new Metaspace_Innerspace(undefined);
|
|
103
|
+
await metaspace.initialize({
|
|
104
|
+
getFnAlert: () => async ({ title, msg }) => { console.log(`[Alert] ${title}: ${msg}`); },
|
|
105
|
+
getFnPrompt: () => async ({ title, msg }) => { console.log(`[Prompt] ${title}: ${msg}`); return ''; },
|
|
106
|
+
getFnPromptPassword: () => async (title, msg) => { console.log(`[PromptPwd] ${title}: ${msg}`); return null; },
|
|
107
|
+
});
|
|
108
|
+
while (!metaspace.initialized) {
|
|
109
|
+
await delay(10);
|
|
110
|
+
}
|
|
111
|
+
const defaultLocalUserSpace = await metaspace.getLocalUserSpace({ lock: false });
|
|
112
|
+
await defaultLocalUserSpace.initialized;
|
|
113
|
+
/** Sender's durable space — where the sender originates ibgibs. */
|
|
114
|
+
const sourceSpace = new InnerSpace_V1({
|
|
115
|
+
...DEFAULT_INNER_SPACE_DATA_V1,
|
|
116
|
+
name: 'source',
|
|
117
|
+
uuid: 'source_uuid',
|
|
118
|
+
description: 'sender durable space',
|
|
119
|
+
});
|
|
120
|
+
await sourceSpace.initialized;
|
|
121
|
+
/** Receiver's durable space — the domain provider in the innerspace simulation. */
|
|
122
|
+
const destSpace = new InnerSpace_V1({
|
|
123
|
+
...DEFAULT_INNER_SPACE_DATA_V1,
|
|
124
|
+
name: 'dest',
|
|
125
|
+
uuid: 'dest_uuid',
|
|
126
|
+
description: 'receiver (domain provider) durable space',
|
|
127
|
+
});
|
|
128
|
+
await destSpace.initialized;
|
|
129
|
+
const senderCoordinator = new SyncSagaCoordinator();
|
|
130
|
+
const receiverCoordinator = new SyncSagaCoordinator();
|
|
131
|
+
async function newTestIbGib_stone({ ib = 'test', data }) {
|
|
132
|
+
const stone = await Factory_V1.stone({
|
|
133
|
+
parentPrimitiveIb: ib.split(' ').at(0) ?? 'test',
|
|
134
|
+
ib,
|
|
135
|
+
data,
|
|
136
|
+
uuid: true,
|
|
137
|
+
});
|
|
138
|
+
return stone;
|
|
139
|
+
}
|
|
140
|
+
async function newTestIbGib({ ib = 'test' }) {
|
|
141
|
+
let resFork = await fork({
|
|
142
|
+
src: ROOT,
|
|
143
|
+
destIb: ib,
|
|
144
|
+
tjp: { timestamp: true, uuid: true },
|
|
145
|
+
dna: true,
|
|
146
|
+
nCounter: true,
|
|
147
|
+
});
|
|
148
|
+
return resFork;
|
|
149
|
+
}
|
|
150
|
+
async function newTestPeer() {
|
|
151
|
+
const peer = new SyncPeerInnerspace_V1(clone(SYNC_PEER_INNERSPACE_DEFAULT_DATA_V1));
|
|
152
|
+
await peer.initialized;
|
|
153
|
+
await peer.initializeOpts({
|
|
154
|
+
sagaId: '', // coordinator will override this via setOptionalOpts before establishSessionIdentity
|
|
155
|
+
localMetaspace: metaspace,
|
|
156
|
+
localSpace: sourceSpace,
|
|
157
|
+
receiverSpace: destSpace,
|
|
158
|
+
receiverCoordinator,
|
|
159
|
+
receiverMetaspace: metaspace,
|
|
160
|
+
});
|
|
161
|
+
return peer;
|
|
162
|
+
}
|
|
163
|
+
// KeystoneService_V1 is stateless — new it inline wherever needed.
|
|
164
|
+
const keystoneSvc = new KeystoneService_V1();
|
|
165
|
+
// #endregion Init/Setup
|
|
166
|
+
/**
|
|
167
|
+
* senderIdentity (I): Alice's long-lived Domain Keystone.
|
|
168
|
+
* Created fresh for this test with a `sync` pool so it can evolve (I → I1).
|
|
169
|
+
*/
|
|
170
|
+
let senderIdentity;
|
|
171
|
+
// #region Step 1: Prepare identity
|
|
172
|
+
// Create senderIdentity genesis (I^Itjp) in sourceSpace
|
|
173
|
+
senderIdentity = await keystoneSvc.genesis({
|
|
174
|
+
masterSecret: SENDER_SECRET,
|
|
175
|
+
configs: [SENDER_IDENTITY_SYNC_POOL_CONFIG],
|
|
176
|
+
metaspace,
|
|
177
|
+
space: sourceSpace,
|
|
178
|
+
});
|
|
179
|
+
if (logalot) {
|
|
180
|
+
console.log(`${lc} senderIdentity genesis addr: ${getIbGibAddr({ ibGib: senderIdentity })}`);
|
|
181
|
+
}
|
|
182
|
+
// post the senderIdentity to receiver (like "create account")
|
|
183
|
+
await metaspace.put({ ibGib: senderIdentity, space: destSpace });
|
|
184
|
+
await metaspace.registerNewIbGib({ ibGib: senderIdentity, space: destSpace });
|
|
185
|
+
// #endregion Step 1: Prepare identity
|
|
186
|
+
// at this point, we have mimicked a user who already has an identity via a
|
|
187
|
+
// create account button.
|
|
188
|
+
// #region Step 2: Execute
|
|
189
|
+
let xStone;
|
|
190
|
+
let xStoneAddr;
|
|
191
|
+
try {
|
|
192
|
+
if (logalot) {
|
|
193
|
+
console.log(`${lc}[Step 2] starting... (I: 1aa5643dd8d46fcdd87d48b8be550826)`);
|
|
194
|
+
}
|
|
195
|
+
// setup/call sync
|
|
196
|
+
// Sync call — sync itself is responsible for establishSessionIdentity
|
|
197
|
+
// internally.
|
|
198
|
+
/**
|
|
199
|
+
* doesn't really matter intrinsically for this test, but we need a
|
|
200
|
+
* domain ibgib to sync
|
|
201
|
+
*/
|
|
202
|
+
xStone = await newTestIbGib_stone({ ib: 'test' });
|
|
203
|
+
xStoneAddr = getIbGibAddr({ ibGib: xStone });
|
|
204
|
+
await metaspace.put({ ibGib: xStone, space: sourceSpace });
|
|
205
|
+
await metaspace.registerNewIbGib({ ibGib: xStone, space: sourceSpace });
|
|
206
|
+
const syncSaga = await senderCoordinator.sync({
|
|
207
|
+
domainIbGibs: [xStone],
|
|
208
|
+
senderIdentity,
|
|
209
|
+
fnSenderSecret: async () => { return SENDER_SECRET; },
|
|
210
|
+
peer: await newTestPeer(),
|
|
211
|
+
localSpace: sourceSpace,
|
|
212
|
+
metaspace,
|
|
213
|
+
conflictStrategy: SyncConflictStrategy.optimisticWithLCS,
|
|
214
|
+
});
|
|
215
|
+
await syncSaga.done;
|
|
216
|
+
}
|
|
217
|
+
catch (error) {
|
|
218
|
+
// error is fine/expected right now. later perhaps we will throw, or
|
|
219
|
+
// perhaps we always just swallow any exceptions since this is close to
|
|
220
|
+
// a unit test
|
|
221
|
+
console.error(`${lc} ${extractErrorMsg(error)}`);
|
|
222
|
+
}
|
|
223
|
+
finally {
|
|
224
|
+
if (logalot) {
|
|
225
|
+
console.log(`${lc}[Step 2] complete.`);
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
// #endregion Step 2: Execute
|
|
229
|
+
// #region Step 3: Check states
|
|
230
|
+
// check state of sender/receiver spaces WRT sender identity, new sender
|
|
231
|
+
// identity, and session identity.
|
|
232
|
+
// get newSenderIdentity address via metaspace.getLatestAddr
|
|
233
|
+
// Resolve the latest senderIdentity frame (I1) from the sender's space.
|
|
234
|
+
// After sync, the coordinator should have evolved I → I1 and stored it.
|
|
235
|
+
let newSenderIdentityAddr;
|
|
236
|
+
/**
|
|
237
|
+
* The session keystone addr should be embedded in I1's proof claim target.
|
|
238
|
+
*/
|
|
239
|
+
let newSenderIdentity;
|
|
240
|
+
await ifWe(sir, 'newSenderIdentity created and stored in source space', async () => {
|
|
241
|
+
newSenderIdentityAddr = await metaspace.getLatestAddr({
|
|
242
|
+
ibGib: senderIdentity,
|
|
243
|
+
space: sourceSpace,
|
|
244
|
+
});
|
|
245
|
+
if (!newSenderIdentityAddr) {
|
|
246
|
+
throw new Error(`newSenderIdentity not found in space (${sourceSpace.ib}). this should have been evolved and stored during sync (E: a5a798bf8ba467cbc87595dcc2b36726)`);
|
|
247
|
+
}
|
|
248
|
+
newSenderIdentity = await getIdentity_throwIfUndefined({
|
|
249
|
+
addr: newSenderIdentityAddr,
|
|
250
|
+
metaspace,
|
|
251
|
+
space: sourceSpace,
|
|
252
|
+
});
|
|
253
|
+
// todo: add iReckon statements for expectations like claim verb, claim target, etc., of newSenderIdentity
|
|
254
|
+
iReckon(sir, newSenderIdentity).asTo('newSenderIdentity is truthy').isGonnaBeTruthy();
|
|
255
|
+
const syncProof = newSenderIdentity?.data?.proofs?.find(p => p.claim?.verb === KEYSTONE_VERB_SYNC);
|
|
256
|
+
iReckon(sir, syncProof).asTo('I1 has a sync-verb proof/claim').isGonnaBeTruthy();
|
|
257
|
+
iReckon(sir, syncProof?.claim?.target).asTo('sync claim has a target (S^Stjp)').isGonnaBeTruthy();
|
|
258
|
+
});
|
|
259
|
+
if (!newSenderIdentity) {
|
|
260
|
+
throw new Error(`(UNEXPECTED) newSenderIdentity falsy? should have thrown before this if falsy. (E: 7a3d92e6160409de149eaf6802365126)`);
|
|
261
|
+
}
|
|
262
|
+
const sessionIdentityTjpAddr = newSenderIdentity.data.proofs
|
|
263
|
+
.find(p => p.claim.verb === KEYSTONE_VERB_SYNC)?.claim.target;
|
|
264
|
+
if (!sessionIdentityTjpAddr) {
|
|
265
|
+
throw new Error(`(UNEXPECTED) sessionIdentityTjpAddr falsy? (E: c53583b07a78837de84a59388b6ff826)`);
|
|
266
|
+
}
|
|
267
|
+
let sessionIdentity;
|
|
268
|
+
await ifWe(sir, 'creates sessionIdentity genesis (S) locally — exists in sourceSpace', async () => {
|
|
269
|
+
sessionIdentity = await getIdentity_throwIfUndefined({
|
|
270
|
+
addr: sessionIdentityTjpAddr,
|
|
271
|
+
metaspace,
|
|
272
|
+
space: sourceSpace,
|
|
273
|
+
});
|
|
274
|
+
iReckon(sir, sessionIdentity).asTo('sessionIdentity is truthy').isGonnaBeTruthy();
|
|
275
|
+
});
|
|
276
|
+
if (!sessionIdentity) {
|
|
277
|
+
throw new Error(`(UNEXPECTED) sessionIdentity falsy? (E: e1fa06009df535f3c848e6ca8b0bd326)`);
|
|
278
|
+
}
|
|
279
|
+
await ifWe(sir, 'Session identity S has expected state', async () => {
|
|
280
|
+
// #region sanity/compile
|
|
281
|
+
if (!sessionIdentity) {
|
|
282
|
+
throw new Error(`(UNEXPECTED) sessionIdentity falsy? (E: dd229f4e44489a54488768157a393926)`);
|
|
283
|
+
}
|
|
284
|
+
if (!sessionIdentity.data) {
|
|
285
|
+
throw new Error(`(UNEXPECTED) sessionIdentity.data falsy? (E: 56f10c9f9c18c6147ea19281dcbaf826)`);
|
|
286
|
+
}
|
|
287
|
+
// #endregion sanity/compile
|
|
288
|
+
// Verify S has both pool ids: connect and sync
|
|
289
|
+
const sPools = sessionIdentity.data.challengePools;
|
|
290
|
+
iReckon(sir, sPools).asTo('S has challengePools').isGonnaBeTruthy();
|
|
291
|
+
const hasConnectPool = sPools?.some(p => p.id === POOL_ID_CONNECT);
|
|
292
|
+
const hasSyncPool = sPools?.some(p => p.id === POOL_ID_SYNC);
|
|
293
|
+
iReckon(sir, hasConnectPool).asTo('S has connect pool').isGonnaBeTrue();
|
|
294
|
+
iReckon(sir, hasSyncPool).asTo('S has sync pool').isGonnaBeTrue();
|
|
295
|
+
const sProofs = sessionIdentity.data.proofs;
|
|
296
|
+
iReckon(sir, sProofs).asTo('S has proofs array').isGonnaBeTruthy();
|
|
297
|
+
iReckon(sir, sProofs.length === 0).asTo('S has 0 proofs on genesis').isGonnaBeTrue();
|
|
298
|
+
// Verify S is bound to target domain (xStone) via frameDetails
|
|
299
|
+
const targetAddrs = sessionIdentity.data.frameDetails?.targetAddrs;
|
|
300
|
+
iReckon(sir, targetAddrs).asTo('S has targetAddrs array in frameDetails').isGonnaBeTruthy();
|
|
301
|
+
iReckon(sir, targetAddrs?.includes(xStoneAddr)).asTo('S targetAddrs contains the domain being synced (xStoneAddr)').isGonnaBeTrue();
|
|
302
|
+
});
|
|
303
|
+
await ifWe(sir, 'I, I1 and S all exist in destSpace (receiver)', async () => {
|
|
304
|
+
// todo: use getIdentity_throwIfUndefined for all three identities but in destSpace
|
|
305
|
+
const senderIdentityAddr = getIbGibAddr({ ibGib: senderIdentity });
|
|
306
|
+
await getIdentity_throwIfUndefined({
|
|
307
|
+
addr: senderIdentityAddr,
|
|
308
|
+
metaspace,
|
|
309
|
+
space: destSpace
|
|
310
|
+
});
|
|
311
|
+
iReckon(sir, true).asTo('I (original) exists in destSpace').isGonnaBeTrue();
|
|
312
|
+
if (!newSenderIdentityAddr) {
|
|
313
|
+
throw new Error(`newSenderIdentity not found in space (${sourceSpace.ib}). this should have been evolved and stored during sync (E: b626885071885b38d87853189f25c826)`);
|
|
314
|
+
}
|
|
315
|
+
await getIdentity_throwIfUndefined({ addr: newSenderIdentityAddr, metaspace, space: destSpace });
|
|
316
|
+
iReckon(sir, true).asTo('I1 (evolved) exists in destSpace').isGonnaBeTrue();
|
|
317
|
+
await getIdentity_throwIfUndefined({ addr: sessionIdentityTjpAddr, metaspace, space: destSpace });
|
|
318
|
+
iReckon(sir, true).asTo('S (sessionIdentity) exists in destSpace').isGonnaBeTrue();
|
|
319
|
+
});
|
|
320
|
+
// #endregion Step 3: Check states
|
|
321
|
+
});
|
|
322
|
+
//# sourceMappingURL=sync-withid.establish.respec.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-withid.establish.respec.mjs","sourceRoot":"","sources":["../../src/sync/sync-withid.establish.respec.mts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module sync-withid.pingpong.respec
|
|
3
|
+
*
|
|
4
|
+
* Phase 3A — Basic Single-Timeline Sync with Identity
|
|
5
|
+
*
|
|
6
|
+
* Goal: Verify that the ping pong sync process completes successfully with identity.
|
|
7
|
+
*
|
|
8
|
+
* @see libs/core-gib/src/sync/docs/ping_pong_plan.md
|
|
9
|
+
*/
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=sync-withid.pingpong.respec.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-withid.pingpong.respec.d.mts","sourceRoot":"","sources":["../../src/sync/sync-withid.pingpong.respec.mts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module sync-withid.pingpong.respec
|
|
3
|
+
*
|
|
4
|
+
* Phase 3A — Basic Single-Timeline Sync with Identity
|
|
5
|
+
*
|
|
6
|
+
* Goal: Verify that the ping pong sync process completes successfully with identity.
|
|
7
|
+
*
|
|
8
|
+
* @see libs/core-gib/src/sync/docs/ping_pong_plan.md
|
|
9
|
+
*/
|
|
10
|
+
import { respecfully, ifWeMight, iReckon, } from '@ibgib/helper-gib/dist/respec-gib/respec-gib.mjs';
|
|
11
|
+
const maam = `[${import.meta.url}]`, sir = maam;
|
|
12
|
+
import { clone, delay, extractErrorMsg } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
|
|
13
|
+
import { getIbGibAddr } from '@ibgib/ts-gib/dist/helper.mjs';
|
|
14
|
+
import { GLOBAL_LOG_A_LOT } from '../core-constants.mjs';
|
|
15
|
+
import { SyncSagaCoordinator } from './sync-saga-coordinator.mjs';
|
|
16
|
+
import { Metaspace_Innerspace } from '../witness/space/metaspace/metaspace-innerspace/metaspace-innerspace.mjs';
|
|
17
|
+
import { InnerSpace_V1 } from '../witness/space/inner-space/inner-space-v1.mjs';
|
|
18
|
+
import { SyncPeerInnerspace_V1 } from './sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mjs';
|
|
19
|
+
import { DEFAULT_INNER_SPACE_DATA_V1 } from '../witness/space/inner-space/inner-space-types.mjs';
|
|
20
|
+
import { SYNC_PEER_INNERSPACE_DEFAULT_DATA_V1 } from './sync-peer/sync-peer-innerspace/sync-peer-innerspace-constants.mjs';
|
|
21
|
+
import { KeystoneService_V1 } from '../keystone/keystone-service-v1.mjs';
|
|
22
|
+
import { KEYSTONE_VERB_SYNC, POOL_ID_SYNC, } from '../keystone/keystone-constants.mjs';
|
|
23
|
+
import { createStandardPoolConfig } from '../keystone/keystone-config-builder.mjs';
|
|
24
|
+
import { KeystoneReplenishStrategy } from '../keystone/keystone-types.mjs';
|
|
25
|
+
import { SyncConflictStrategy } from './sync-constants.mjs';
|
|
26
|
+
import { Factory_V1 } from '@ibgib/ts-gib/dist/V1/factory.mjs';
|
|
27
|
+
const logalot = GLOBAL_LOG_A_LOT;
|
|
28
|
+
const lc = sir;
|
|
29
|
+
const SENDER_SECRET = 'test-sender-secret-phase1';
|
|
30
|
+
const SENDER_IDENTITY_SYNC_POOL_CONFIG = createStandardPoolConfig({
|
|
31
|
+
id: POOL_ID_SYNC,
|
|
32
|
+
salt: 'senderidentitysyncsaltphase1',
|
|
33
|
+
verbs: [KEYSTONE_VERB_SYNC],
|
|
34
|
+
size: 200,
|
|
35
|
+
sequential: 1,
|
|
36
|
+
random: 1,
|
|
37
|
+
targetBinding: 2,
|
|
38
|
+
replenishStrategy: KeystoneReplenishStrategy.topUp,
|
|
39
|
+
});
|
|
40
|
+
await respecfully(sir, `Test Phase 3A: Ping Pong Sync with Identity`, async () => {
|
|
41
|
+
// #region Init/Setup
|
|
42
|
+
const metaspace = new Metaspace_Innerspace(undefined);
|
|
43
|
+
await metaspace.initialize({
|
|
44
|
+
getFnAlert: () => async ({ title, msg }) => { console.log(`[Alert] ${title}: ${msg}`); },
|
|
45
|
+
getFnPrompt: () => async ({ title, msg }) => { console.log(`[Prompt] ${title}: ${msg}`); return ''; },
|
|
46
|
+
getFnPromptPassword: () => async (title, msg) => { console.log(`[PromptPwd] ${title}: ${msg}`); return null; },
|
|
47
|
+
});
|
|
48
|
+
while (!metaspace.initialized) {
|
|
49
|
+
await delay(10);
|
|
50
|
+
}
|
|
51
|
+
const defaultLocalUserSpace = await metaspace.getLocalUserSpace({ lock: false });
|
|
52
|
+
await defaultLocalUserSpace.initialized;
|
|
53
|
+
const sourceSpace = new InnerSpace_V1({
|
|
54
|
+
...DEFAULT_INNER_SPACE_DATA_V1,
|
|
55
|
+
name: 'source',
|
|
56
|
+
uuid: 'source_uuid',
|
|
57
|
+
description: 'sender durable space',
|
|
58
|
+
});
|
|
59
|
+
await sourceSpace.initialized;
|
|
60
|
+
const destSpace = new InnerSpace_V1({
|
|
61
|
+
...DEFAULT_INNER_SPACE_DATA_V1,
|
|
62
|
+
name: 'dest',
|
|
63
|
+
uuid: 'dest_uuid',
|
|
64
|
+
description: 'receiver (domain provider) durable space',
|
|
65
|
+
});
|
|
66
|
+
await destSpace.initialized;
|
|
67
|
+
const senderCoordinator = new SyncSagaCoordinator();
|
|
68
|
+
const receiverCoordinator = new SyncSagaCoordinator();
|
|
69
|
+
async function newTestIbGib_stone({ ib = 'test', data }) {
|
|
70
|
+
const stone = await Factory_V1.stone({
|
|
71
|
+
parentPrimitiveIb: ib.split(' ').at(0) ?? 'test',
|
|
72
|
+
ib,
|
|
73
|
+
data,
|
|
74
|
+
uuid: true,
|
|
75
|
+
});
|
|
76
|
+
return stone;
|
|
77
|
+
}
|
|
78
|
+
async function newTestPeer() {
|
|
79
|
+
const peer = new SyncPeerInnerspace_V1(clone(SYNC_PEER_INNERSPACE_DEFAULT_DATA_V1));
|
|
80
|
+
await peer.initialized;
|
|
81
|
+
await peer.initializeOpts({
|
|
82
|
+
sagaId: '',
|
|
83
|
+
localMetaspace: metaspace,
|
|
84
|
+
localSpace: sourceSpace,
|
|
85
|
+
receiverSpace: destSpace,
|
|
86
|
+
receiverCoordinator,
|
|
87
|
+
receiverMetaspace: metaspace,
|
|
88
|
+
});
|
|
89
|
+
return peer;
|
|
90
|
+
}
|
|
91
|
+
const keystoneSvc = new KeystoneService_V1();
|
|
92
|
+
// #endregion Init/Setup
|
|
93
|
+
let senderIdentity = await keystoneSvc.genesis({
|
|
94
|
+
masterSecret: SENDER_SECRET,
|
|
95
|
+
configs: [SENDER_IDENTITY_SYNC_POOL_CONFIG],
|
|
96
|
+
metaspace,
|
|
97
|
+
space: sourceSpace,
|
|
98
|
+
});
|
|
99
|
+
// post the senderIdentity to receiver
|
|
100
|
+
await metaspace.put({ ibGib: senderIdentity, space: destSpace });
|
|
101
|
+
await metaspace.registerNewIbGib({ ibGib: senderIdentity, space: destSpace });
|
|
102
|
+
let syncError = null;
|
|
103
|
+
let xStone;
|
|
104
|
+
let xStoneAddr;
|
|
105
|
+
let peer;
|
|
106
|
+
try {
|
|
107
|
+
xStone = await newTestIbGib_stone({ ib: 'test-pingpong' });
|
|
108
|
+
xStoneAddr = getIbGibAddr({ ibGib: xStone });
|
|
109
|
+
await metaspace.put({ ibGib: xStone, space: sourceSpace });
|
|
110
|
+
await metaspace.registerNewIbGib({ ibGib: xStone, space: sourceSpace });
|
|
111
|
+
peer = await newTestPeer();
|
|
112
|
+
const syncSaga = await senderCoordinator.sync({
|
|
113
|
+
domainIbGibs: [xStone],
|
|
114
|
+
senderIdentity,
|
|
115
|
+
fnSenderSecret: async () => SENDER_SECRET,
|
|
116
|
+
peer,
|
|
117
|
+
localSpace: sourceSpace,
|
|
118
|
+
metaspace,
|
|
119
|
+
conflictStrategy: SyncConflictStrategy.optimisticWithLCS,
|
|
120
|
+
});
|
|
121
|
+
await syncSaga.done;
|
|
122
|
+
}
|
|
123
|
+
catch (error) {
|
|
124
|
+
syncError = error;
|
|
125
|
+
}
|
|
126
|
+
await ifWeMight(sir, 'completes the entire sync saga successfully', async () => {
|
|
127
|
+
const errorMsg = syncError ? extractErrorMsg(syncError) : '';
|
|
128
|
+
iReckon(sir, syncError).asTo(`syncError: ${errorMsg}`).isGonnaBeFalsy();
|
|
129
|
+
});
|
|
130
|
+
});
|
|
131
|
+
//# sourceMappingURL=sync-withid.pingpong.respec.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-withid.pingpong.respec.mjs","sourceRoot":"","sources":["../../src/sync/sync-withid.pingpong.respec.mts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inner-space-v1.d.mts","sourceRoot":"","sources":["../../../../src/witness/space/inner-space/inner-space-v1.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAKzD,OAAO,
|
|
1
|
+
{"version":3,"file":"inner-space-v1.d.mts","sourceRoot":"","sources":["../../../../src/witness/space/inner-space/inner-space-v1.mts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { validateIbGibIntrinsically } from '@ibgib/ts-gib/dist/V1/validate-helpe
|
|
|
4
4
|
import { GLOBAL_LOG_A_LOT } from '../../../core-constants.mjs';
|
|
5
5
|
import { getSpaceIb, } from '../space-helper.mjs';
|
|
6
6
|
import { getTjpAddr } from '../../../common/other/ibgib-helper.mjs';
|
|
7
|
-
import { ReconciliationSpaceBase } from '../reconciliation-space/reconciliation-space-base.mjs';
|
|
7
|
+
import { ReconciliationSpaceBase, } from '../reconciliation-space/reconciliation-space-base.mjs';
|
|
8
8
|
import { DEFAULT_INNER_SPACE_DATA_V1 } from './inner-space-types.mjs';
|
|
9
9
|
import { getGib } from '@ibgib/ts-gib/dist/V1/transforms/transform-helper.mjs';
|
|
10
10
|
import { isMetaStone, parseMetaStoneIb } from '../../../common/meta-stone/meta-stone-helper.mjs';
|