@ibgib/core-gib 0.1.47 → 0.1.49
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/common/other/ibgib-helper.d.mts +12 -0
- package/dist/common/other/ibgib-helper.d.mts.map +1 -1
- package/dist/common/other/ibgib-helper.mjs +39 -0
- package/dist/common/other/ibgib-helper.mjs.map +1 -1
- package/dist/keystone/kdf/kdf-helpers.mjs +2 -2
- package/dist/keystone/kdf/kdf-helpers.mjs.map +1 -1
- package/dist/keystone/keystone-config-builder.d.mts +2 -1
- package/dist/keystone/keystone-config-builder.d.mts.map +1 -1
- package/dist/keystone/keystone-config-builder.mjs +8 -2
- package/dist/keystone/keystone-config-builder.mjs.map +1 -1
- package/dist/keystone/keystone-constants.d.mts +24 -3
- package/dist/keystone/keystone-constants.d.mts.map +1 -1
- package/dist/keystone/keystone-constants.mjs +22 -1
- package/dist/keystone/keystone-constants.mjs.map +1 -1
- package/dist/keystone/keystone-helpers.d.mts.map +1 -1
- package/dist/keystone/keystone-helpers.mjs +7 -9
- package/dist/keystone/keystone-helpers.mjs.map +1 -1
- package/dist/keystone/keystone-service-v1.d.mts +4 -1
- package/dist/keystone/keystone-service-v1.d.mts.map +1 -1
- package/dist/keystone/keystone-service-v1.mjs +6 -1
- package/dist/keystone/keystone-service-v1.mjs.map +1 -1
- package/dist/keystone/keystone-service-v1.respec.mjs +26 -26
- package/dist/keystone/keystone-service-v1.respec.mjs.map +1 -1
- package/dist/keystone/keystone-types.d.mts +24 -5
- package/dist/keystone/keystone-types.d.mts.map +1 -1
- package/dist/keystone/keystone-types.mjs.map +1 -1
- package/dist/sync/sync-conflict-adv-multitimelines.respec.mjs +2 -2
- package/dist/sync/sync-conflict-adv-multitimelines.respec.mjs.map +1 -1
- package/dist/sync/sync-conflict-basic-divergence.respec.mjs +2 -2
- package/dist/sync/sync-conflict-basic-divergence.respec.mjs.map +1 -1
- package/dist/sync/sync-conflict-basic-multitimelines.respec.mjs +2 -2
- package/dist/sync/sync-conflict-basic-multitimelines.respec.mjs.map +1 -1
- package/dist/sync/sync-conflict-text-merge.respec.mjs +2 -2
- package/dist/sync/sync-conflict-text-merge.respec.mjs.map +1 -1
- package/dist/sync/sync-constants.d.mts +47 -1
- package/dist/sync/sync-constants.d.mts.map +1 -1
- package/dist/sync/sync-constants.mjs +49 -1
- package/dist/sync/sync-constants.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-withid.respec.mjs +22 -8
- package/dist/sync/sync-innerspace-dest-ahead-withid.respec.mjs.map +1 -1
- package/dist/sync/sync-innerspace-dest-ahead.respec.mjs +2 -2
- 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 +2 -2
- package/dist/sync/sync-innerspace-partial-update.respec.mjs.map +1 -1
- package/dist/sync/sync-innerspace.respec.mjs +2 -2
- package/dist/sync/sync-innerspace.respec.mjs.map +1 -1
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-http-node-adapter.d.mts +57 -0
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-http-node-adapter.d.mts.map +1 -0
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-http-node-adapter.mjs +310 -0
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-http-node-adapter.mjs.map +1 -0
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-types.d.mts +27 -0
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-types.d.mts.map +1 -0
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-types.mjs +2 -0
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-types.mjs.map +1 -0
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.d.mts +29 -0
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.d.mts.map +1 -0
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.mjs +122 -0
- package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.mjs.map +1 -0
- package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-types.d.mts +27 -0
- package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-types.d.mts.map +1 -0
- package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-types.mjs +2 -0
- package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-types.mjs.map +1 -0
- package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-v1.d.mts +24 -0
- package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-v1.d.mts.map +1 -0
- package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-v1.mjs +111 -0
- package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-v1.mjs.map +1 -0
- package/dist/sync/sync-peer/sync-peer-http.respec.d.mts +8 -0
- package/dist/sync/sync-peer/sync-peer-http.respec.d.mts.map +1 -0
- package/dist/sync/sync-peer/sync-peer-http.respec.mjs +333 -0
- package/dist/sync/sync-peer/sync-peer-http.respec.mjs.map +1 -0
- 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 +13 -7
- 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 +5 -5
- package/dist/sync/sync-peer/sync-peer-types.d.mts.map +1 -1
- package/dist/sync/sync-peer/sync-peer-v1.d.mts +6 -3
- package/dist/sync/sync-peer/sync-peer-v1.d.mts.map +1 -1
- package/dist/sync/sync-peer/sync-peer-v1.mjs +75 -26
- package/dist/sync/sync-peer/sync-peer-v1.mjs.map +1 -1
- package/dist/sync/sync-saga-context/sync-saga-context-helpers.d.mts +7 -3
- 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 +32 -3
- 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 +16 -0
- package/dist/sync/sync-saga-context/sync-saga-context-types.d.mts.map +1 -1
- package/dist/sync/sync-saga-coordinator.d.mts +18 -3
- package/dist/sync/sync-saga-coordinator.d.mts.map +1 -1
- package/dist/sync/sync-saga-coordinator.mjs +241 -56
- package/dist/sync/sync-saga-coordinator.mjs.map +1 -1
- package/dist/sync/sync-types.d.mts +1 -1
- package/dist/sync/sync-types.d.mts.map +1 -1
- package/ibgib-foundations.md +109 -89
- package/package.json +1 -1
- package/src/common/other/ibgib-helper.mts +39 -0
- package/src/keystone/kdf/kdf-helpers.mts +2 -2
- package/src/keystone/keystone-config-builder.mts +13 -2
- package/src/keystone/keystone-constants.mts +24 -2
- package/src/keystone/keystone-helpers.mts +5 -10
- package/src/keystone/keystone-service-v1.mts +5 -0
- package/src/keystone/keystone-service-v1.respec.mts +25 -25
- package/src/keystone/keystone-types.mts +27 -7
- package/src/sync/sync-conflict-adv-multitimelines.respec.mts +2 -2
- package/src/sync/sync-conflict-basic-divergence.respec.mts +2 -2
- package/src/sync/sync-conflict-basic-multitimelines.respec.mts +2 -2
- package/src/sync/sync-conflict-text-merge.respec.mts +2 -2
- package/src/sync/sync-constants.mts +51 -1
- package/src/sync/sync-innerspace-constants.respec.mts +2 -2
- package/src/sync/sync-innerspace-deep-updates.respec.mts +2 -2
- package/src/sync/sync-innerspace-dest-ahead-withid.respec.mts +26 -9
- package/src/sync/sync-innerspace-dest-ahead.respec.mts +2 -2
- package/src/sync/sync-innerspace-multiple-timelines.respec.mts +2 -2
- package/src/sync/sync-innerspace-partial-update.respec.mts +2 -2
- package/src/sync/sync-innerspace.respec.mts +2 -2
- package/src/sync/sync-peer/sync-peer-http-receiver/sync-http-node-adapter.mts +319 -0
- package/src/sync/sync-peer/sync-peer-http-receiver/sync-http-node-adapter.mts.metadata.md +72 -0
- package/src/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-types.mts +30 -0
- package/src/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.mts +146 -0
- package/src/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.mts.metadata.md +71 -0
- package/src/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-types.mts +32 -0
- package/src/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-v1.mts +129 -0
- package/src/sync/sync-peer/sync-peer-http.respec.mts +364 -0
- package/src/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-types.mts +8 -8
- package/src/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mts +15 -7
- package/src/sync/sync-peer/sync-peer-types.mts +11 -11
- package/src/sync/sync-peer/sync-peer-v1.mts +66 -30
- package/src/sync/sync-saga-context/sync-saga-context-helpers.mts +52 -4
- package/src/sync/sync-saga-context/sync-saga-context-types.mts +17 -0
- package/src/sync/sync-saga-coordinator.mts +296 -63
- package/src/sync/sync-types.mts +1 -1
- package/tmp-certs/server.pfx +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-peer-types.d.mts","sourceRoot":"","sources":["../../../src/sync/sync-peer/sync-peer-types.mts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAE/E,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,kDAAkD,CAAC;AAC7I,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACjD;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,cAAc;CACxD;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,QAAQ,CAAC,eAAe,EAAE,iBAAiB,CAAC;CAAI;AAE1F;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC;;;;;OAKG;IACH,
|
|
1
|
+
{"version":3,"file":"sync-peer-types.d.mts","sourceRoot":"","sources":["../../../src/sync/sync-peer/sync-peer-types.mts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAE/E,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,kDAAkD,CAAC;AAC7I,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACjD;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,cAAc;CACxD;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,QAAQ,CAAC,eAAe,EAAE,iBAAiB,CAAC;CAAI;AAE1F;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC;;;;;OAKG;IACH,UAAU,EAAE,aAAa,CAAC;IAC1B;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,aAAa,CAAC;CAClC;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe,CAAC,eAAe,SAAS,sBAAsB,GAAG,sBAAsB,CAAE,SAAQ,UAAU,CACxH,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EAAE,QAAQ;AACjC,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EAAE,SAAS;AAClC,eAAe,EACf,iBAAiB,CACpB;IACG,IAAI,SAAS,IAAI,MAAM,CAAC;IAExB;;;;;;;;OAQG;IACH,IAAI,EAAE,eAAe,GAAG,SAAS,CAAC;IAElC;;;;;OAKG;IACH,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC;IAErD;;;;;OAKG;IACH,4BAA4B,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;CAC1D"}
|
|
@@ -8,7 +8,7 @@ import { SubjectWitness } from '../../common/pubsub/subject/subject-types.mjs';
|
|
|
8
8
|
import { SyncSagaContextIbGib_V1 } from '../sync-saga-context/sync-saga-context-types.mjs';
|
|
9
9
|
import { InitializeSyncPeerOpts, SyncPeerData_V1, SyncPeerRel8ns_V1, SyncPeerWitness } from './sync-peer-types.mjs';
|
|
10
10
|
import { LightWitnessBase_V1 } from '../../witness/light-witness-base-v1.mjs';
|
|
11
|
-
import {
|
|
11
|
+
import { SyncSagaFrameDependencyGraph } from '../sync-types.mjs';
|
|
12
12
|
/**
|
|
13
13
|
* Abstract witness for talking to a Sync Peer (e.g. Remote Node or Local Simulator).
|
|
14
14
|
*
|
|
@@ -34,9 +34,12 @@ export declare abstract class SyncPeer_V1<TInitializeOpts extends InitializeSync
|
|
|
34
34
|
*
|
|
35
35
|
* @see {@link SyncPeerWitness.opts}
|
|
36
36
|
*/
|
|
37
|
-
|
|
37
|
+
initializeOpts(opts: TInitializeOpts): Promise<void>;
|
|
38
38
|
setOptionalOpts(arg: Partial<TInitializeOpts>): void;
|
|
39
|
-
protected
|
|
39
|
+
protected authenticateValidateAuthorize({ context, fullSagaHistory, }: {
|
|
40
|
+
context: SyncSagaContextIbGib_V1;
|
|
41
|
+
fullSagaHistory: SyncSagaFrameDependencyGraph[];
|
|
42
|
+
}): Promise<void>;
|
|
40
43
|
/**
|
|
41
44
|
* Witness the synchronization context (Send/Receive).
|
|
42
45
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-peer-v1.d.mts","sourceRoot":"","sources":["../../../src/sync/sync-peer/sync-peer-v1.mts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAM3D,OAAO,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAC3F,OAAO,EAAE,sBAAsB,EAAE,eAAe,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACpH,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"sync-peer-v1.d.mts","sourceRoot":"","sources":["../../../src/sync/sync-peer/sync-peer-v1.mts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAM3D,OAAO,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAC3F,OAAO,EAAE,sBAAsB,EAAE,eAAe,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACpH,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAM9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAC;AAOjE;;;;;;;;;GASG;AACH,8BAAsB,WAAW,CAAC,eAAe,SAAS,sBAAsB,GAAG,sBAAsB,CACrG,SAAQ,mBAAmB,CAAC,eAAe,EAAE,iBAAiB,CAC9D,YAAW,eAAe,CAAC,eAAe,CAAC;IAE3C,SAAS,CAAC,EAAE,EAAE,MAAM,CAA2B;IAExC,IAAI,EAAE,eAAe,GAAG,SAAS,CAAC;IAClC,4BAA4B,EAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;IAE/D,IAAI,SAAS,IAAI,MAAM,CAItB;gBAEW,WAAW,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,iBAAiB;IAI9D,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxC;;;;;;;OAOG;IACU,cAAc,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAa1D,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI;cAsC3C,6BAA6B,CAAC,EAC1C,OAAO,EACP,eAAe,GAClB,EAAE;QACC,OAAO,EAAE,uBAAuB,CAAC;QACjC,eAAe,EAAE,4BAA4B,EAAE,CAAC;KACnD,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BjB;;;;;;;;OAQG;IACY,OAAO,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,GAAG,SAAS,CAAC;IAmGtG;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,GAAG,SAAS,CAAC;IAErH;;;;;OAKG;cACa,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;CAuB7E"}
|
|
@@ -9,6 +9,7 @@ import { LightWitnessBase_V1 } from '../../witness/light-witness-base-v1.mjs';
|
|
|
9
9
|
import { newupSubject } from '../../common/pubsub/subject/subject-helper.mjs';
|
|
10
10
|
import { authenticateContext, authorizeContext, validateContextAndSagaFrame } from '../sync-saga-context/sync-saga-context-helpers.mjs';
|
|
11
11
|
import { getFromSpace } from '../../witness/space/space-helper.mjs';
|
|
12
|
+
import { getFullSyncSagaHistory } from '../sync-helpers.mjs';
|
|
12
13
|
const logalot = GLOBAL_LOG_A_LOT;
|
|
13
14
|
const logalotControlDomain = false;
|
|
14
15
|
const lcControlDomain = '[ControlDomain]';
|
|
@@ -49,8 +50,8 @@ export class SyncPeer_V1 extends LightWitnessBase_V1 {
|
|
|
49
50
|
*
|
|
50
51
|
* @see {@link SyncPeerWitness.opts}
|
|
51
52
|
*/
|
|
52
|
-
async
|
|
53
|
-
const lc = `${this.lc}[${this.
|
|
53
|
+
async initializeOpts(opts) {
|
|
54
|
+
const lc = `${this.lc}[${this.initializeOpts.name}]`;
|
|
54
55
|
try {
|
|
55
56
|
if (logalot) {
|
|
56
57
|
console.log(`${lc} starting... (I: 31bd5fda37c89fa37fbaf14daf5fe726)`);
|
|
@@ -91,6 +92,58 @@ export class SyncPeer_V1 extends LightWitnessBase_V1 {
|
|
|
91
92
|
}
|
|
92
93
|
}
|
|
93
94
|
}
|
|
95
|
+
// public setOptionalOpts({
|
|
96
|
+
// senderTempSpace,
|
|
97
|
+
// }: {
|
|
98
|
+
// senderTempSpace: IbGibSpaceAny,
|
|
99
|
+
// }): void {
|
|
100
|
+
// const lc = `${this.lc}[${this.setOptionalOpts.name}]`;
|
|
101
|
+
// try {
|
|
102
|
+
// if (logalot) { console.log(`${lc} starting... (I: a17188953e38f07b1884e498ac490b26)`); }
|
|
103
|
+
// if (!this.opts) { throw new Error(`(UNEXPECTED) this.opts falsy? (E: bdf00fe4b89b07ea78860d6ebe922e26)`); }
|
|
104
|
+
// this.opts.senderTempSpace = senderTempSpace;
|
|
105
|
+
// } catch (error) {
|
|
106
|
+
// console.error(`${lc} ${extractErrorMsg(error)}`);
|
|
107
|
+
// throw error;
|
|
108
|
+
// } finally {
|
|
109
|
+
// if (logalot) { console.log(`${lc} complete.`); }
|
|
110
|
+
// }
|
|
111
|
+
// }
|
|
112
|
+
async authenticateValidateAuthorize({ context, fullSagaHistory, }) {
|
|
113
|
+
const lc = `${this.lc}[${this.authenticateValidateAuthorize.name}]`;
|
|
114
|
+
try {
|
|
115
|
+
if (logalot) {
|
|
116
|
+
console.log(`${lc} starting... (I: add238055cd84a222c5b8c89913af526)`);
|
|
117
|
+
}
|
|
118
|
+
// first authenticate, because invalid identity is a non-starter
|
|
119
|
+
const authenticationErrors = await authenticateContext({ context, fullSagaHistory });
|
|
120
|
+
if (authenticationErrors.length > 0) {
|
|
121
|
+
throw new Error(`invalid context authentication. authenticationErrors: ${authenticationErrors} (E: da89da5ee1269aeb78952d475d607526)`);
|
|
122
|
+
}
|
|
123
|
+
// next, we have a valid keystone, which should point to the
|
|
124
|
+
// context. But is that context and the saga data it contains valid?
|
|
125
|
+
// Does the keystone actually point to this context?
|
|
126
|
+
const validationErrors = await validateContextAndSagaFrame({ context, });
|
|
127
|
+
if (validationErrors.length > 0) {
|
|
128
|
+
throw new Error(`invalid context received. validationErrors: ${validationErrors} (E: 8b34c875c968af29bc433138e57a7826)`);
|
|
129
|
+
}
|
|
130
|
+
// we have a valid keystone that points to a valid context, but what
|
|
131
|
+
// exactly does the keystone authorize?
|
|
132
|
+
const authorizationErrors = await authorizeContext({ context, fullSagaHistory });
|
|
133
|
+
if (authorizationErrors.length > 0) {
|
|
134
|
+
throw new Error(`invalid context authorization. authorizationErrors: ${authorizationErrors} (E: 8ddc284a758cf10ba829334c1babb826)`);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
catch (error) {
|
|
138
|
+
console.error(`${lc} ${extractErrorMsg(error)}`);
|
|
139
|
+
throw error;
|
|
140
|
+
}
|
|
141
|
+
finally {
|
|
142
|
+
if (logalot) {
|
|
143
|
+
console.log(`${lc} complete.`);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
}
|
|
94
147
|
/**
|
|
95
148
|
* Witness the synchronization context (Send/Receive).
|
|
96
149
|
*
|
|
@@ -109,15 +162,6 @@ export class SyncPeer_V1 extends LightWitnessBase_V1 {
|
|
|
109
162
|
if (!this.opts) {
|
|
110
163
|
throw new Error(`(UNEXPECTED) this.opts falsy? Concrete class should have initialized sender opts by now. (E: 0b9e28287318fdf8bf9f5a6886a24826)`);
|
|
111
164
|
}
|
|
112
|
-
// #region leaving off here
|
|
113
|
-
// NOTES: the context ibgib now has a reference to the signed
|
|
114
|
-
// keystone. the signed keystone targets the context ibgib, and the
|
|
115
|
-
// context ibgib itself points to the previous frame of the
|
|
116
|
-
// keystone. I've started on creating a validateKeystone function,
|
|
117
|
-
// whcih I need to at least add the validate transitions to. I
|
|
118
|
-
// _think_ I need to also fill in some authentication here in this
|
|
119
|
-
// peer at the very least, then I can move on to other layers.
|
|
120
|
-
// #endregion leaving off here
|
|
121
165
|
// NOTE: There are three basic types of peers:
|
|
122
166
|
// * local-only
|
|
123
167
|
// * this peer is both sender/receiver peer
|
|
@@ -156,21 +200,19 @@ export class SyncPeer_V1 extends LightWitnessBase_V1 {
|
|
|
156
200
|
// publish domain ibgibs to observable
|
|
157
201
|
// when all domain ibgibs are pulled, publish complete to the observable
|
|
158
202
|
// return resulting context ibgib (which the caller should get BEFORE the domain ibgibs observable completes)
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
if (validationErrors.length > 0) {
|
|
162
|
-
throw new Error(`invalid context received. validationErrors: ${validationErrors} (E: 8b34c875c968af29bc433138e57a7826)`);
|
|
163
|
-
}
|
|
164
|
-
const authenticationErrors = await authenticateContext({ context });
|
|
165
|
-
if (authenticationErrors.length > 0) {
|
|
166
|
-
throw new Error(`invalid context authentication. authenticationErrors: ${authenticationErrors} (E: da89da5ee1269aeb78952d475d607526)`);
|
|
167
|
-
}
|
|
168
|
-
const authorizationErrors = await authorizeContext({ context });
|
|
169
|
-
if (authorizationErrors.length > 0) {
|
|
170
|
-
throw new Error(`invalid context authorization. authorizationErrors: ${authorizationErrors} (E: 8ddc284a758cf10ba829334c1babb826)`);
|
|
203
|
+
if (!context.sagaFrame) {
|
|
204
|
+
throw new Error(`context.sagaFrame falsy. (E: a33dd88aa108e2bad9e885885731ce26)`);
|
|
171
205
|
}
|
|
206
|
+
// this is not just happening on the client, but this peer may be
|
|
207
|
+
// the one receiving the context as well.
|
|
208
|
+
const sagaHistory_beforeSend = await getFullSyncSagaHistory({
|
|
209
|
+
sagaIbGib: context.sagaFrame,
|
|
210
|
+
space: this.opts.localSpace
|
|
211
|
+
});
|
|
212
|
+
await this.authenticateValidateAuthorize({
|
|
213
|
+
context, fullSagaHistory: sagaHistory_beforeSend,
|
|
214
|
+
});
|
|
172
215
|
// at this point, we have a valid, authenticated, authorized context
|
|
173
|
-
await this.ensureReceiverTempSpace();
|
|
174
216
|
// execute the transfer of control domain ibgibs & outgoing payload
|
|
175
217
|
// ibgibs...
|
|
176
218
|
const response = await this.sendContextRequest(context);
|
|
@@ -181,6 +223,13 @@ export class SyncPeer_V1 extends LightWitnessBase_V1 {
|
|
|
181
223
|
// on the concrete implementation, if there are domain ibgibs to
|
|
182
224
|
// receive, they may still be transferring. These will be published
|
|
183
225
|
// to this.payloadIbGibsDomainReceived$
|
|
226
|
+
const sagaHistory_afterSend = await getFullSyncSagaHistory({
|
|
227
|
+
sagaIbGib: context.sagaFrame,
|
|
228
|
+
space: this.opts.localSpace
|
|
229
|
+
});
|
|
230
|
+
await this.authenticateValidateAuthorize({
|
|
231
|
+
context, fullSagaHistory: sagaHistory_afterSend,
|
|
232
|
+
});
|
|
184
233
|
return response;
|
|
185
234
|
}
|
|
186
235
|
else {
|
|
@@ -217,13 +266,13 @@ export class SyncPeer_V1 extends LightWitnessBase_V1 {
|
|
|
217
266
|
if (!this.opts) {
|
|
218
267
|
throw new Error(`(UNEXPECTED) this.opts falsy? (E: cfb9431f2fb851f24a6c88e80c3b3326)`);
|
|
219
268
|
}
|
|
220
|
-
const resGet = await getFromSpace({ space: this.opts.
|
|
269
|
+
const resGet = await getFromSpace({ space: this.opts.localSpace, addr });
|
|
221
270
|
if (resGet.success && resGet.ibGibs && resGet.ibGibs.length === 1) {
|
|
222
271
|
const ibGib = resGet.ibGibs[0];
|
|
223
272
|
return ibGib;
|
|
224
273
|
}
|
|
225
274
|
else {
|
|
226
|
-
throw new Error(`couldn't get addr (${addr}) from local space ${this.opts.
|
|
275
|
+
throw new Error(`couldn't get addr (${addr}) from local space ${this.opts.localSpace}. reason: ${resGet.errorMsg ?? 'unknown error (E: 926ef8bf4fcc299ab89dba34ea691a26)'} (E: d8a89807e471d3f8b938ab21df44cb26)`);
|
|
227
276
|
}
|
|
228
277
|
}
|
|
229
278
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-peer-v1.mjs","sourceRoot":"","sources":["../../../src/sync/sync-peer/sync-peer-v1.mts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAMlF,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAK5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAE9E,OAAO,EAAE,YAAY,EAAE,MAAM,gDAAgD,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,2BAA2B,EAAE,MAAM,oDAAoD,CAAC;AACxI,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"sync-peer-v1.mjs","sourceRoot":"","sources":["../../../src/sync/sync-peer/sync-peer-v1.mts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Ib } from '@ibgib/ts-gib/dist/types.mjs';
|
|
5
5
|
import { SyncSagaContextData_V1, SyncSagaContextIbGib_V1, SyncSagaContextIb_V1 } from './sync-saga-context-types.mjs';
|
|
6
|
+
import { SyncSagaFrameDependencyGraph } from '../sync-types.mjs';
|
|
6
7
|
/**
|
|
7
8
|
* Constructs the standard 'ib' string for a Sync Saga Context stone.
|
|
8
9
|
*/
|
|
@@ -15,6 +16,7 @@ export declare function getSyncSagaContextIb({ data, }: {
|
|
|
15
16
|
export declare function parseSyncSagaContextIb({ ib, }: {
|
|
16
17
|
ib: Ib;
|
|
17
18
|
}): Promise<SyncSagaContextIb_V1>;
|
|
19
|
+
export declare function isSyncSagaContextIbGib(x: any): x is SyncSagaContextIbGib_V1;
|
|
18
20
|
/**
|
|
19
21
|
* Validates ONLY the {@link context} ibgib itself and saga frame/msg stone(s)
|
|
20
22
|
* ({@link SyncSagaContextIbGib_V1.sagaFrame}).
|
|
@@ -27,7 +29,7 @@ export declare function parseSyncSagaContextIb({ ib, }: {
|
|
|
27
29
|
*
|
|
28
30
|
* @returns empty array if valid, else validation errors
|
|
29
31
|
*/
|
|
30
|
-
export declare function validateContextAndSagaFrame({ context }: {
|
|
32
|
+
export declare function validateContextAndSagaFrame({ context, }: {
|
|
31
33
|
context: SyncSagaContextIbGib_V1;
|
|
32
34
|
}): Promise<string[]>;
|
|
33
35
|
/**
|
|
@@ -43,13 +45,15 @@ export declare function validateContextDomainPayloadIbGibs({ context }: {
|
|
|
43
45
|
/**
|
|
44
46
|
* move to sync-peer-helpers.mts as a pure function?
|
|
45
47
|
*/
|
|
46
|
-
export declare function authenticateContext({ context }: {
|
|
48
|
+
export declare function authenticateContext({ context, fullSagaHistory }: {
|
|
47
49
|
context: SyncSagaContextIbGib_V1;
|
|
50
|
+
fullSagaHistory: SyncSagaFrameDependencyGraph[];
|
|
48
51
|
}): Promise<string[]>;
|
|
49
52
|
/**
|
|
50
53
|
* move to sync-peer-helpers.mts as a pure function?
|
|
51
54
|
*/
|
|
52
|
-
export declare function authorizeContext({ context }: {
|
|
55
|
+
export declare function authorizeContext({ context, fullSagaHistory }: {
|
|
53
56
|
context: SyncSagaContextIbGib_V1;
|
|
57
|
+
fullSagaHistory: SyncSagaFrameDependencyGraph[];
|
|
54
58
|
}): Promise<string[]>;
|
|
55
59
|
//# sourceMappingURL=sync-saga-context-helpers.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-saga-context-helpers.d.mts","sourceRoot":"","sources":["../../../src/sync/sync-saga-context/sync-saga-context-helpers.mts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EAAE,EAAE,EAAE,MAAM,8BAA8B,CAAC;AAMlD,OAAO,EACH,sBAAsB,EAAE,uBAAuB,EAAE,oBAAoB,EAExE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"sync-saga-context-helpers.d.mts","sourceRoot":"","sources":["../../../src/sync/sync-saga-context/sync-saga-context-helpers.mts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EAAE,EAAE,EAAE,MAAM,8BAA8B,CAAC;AAMlD,OAAO,EACH,sBAAsB,EAAE,uBAAuB,EAAE,oBAAoB,EAExE,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EAAgB,4BAA4B,EAAE,MAAM,mBAAmB,CAAC;AAS/E;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,EACvC,IAAI,GACP,EAAE;IACC,IAAI,EAAE,sBAAsB,CAAC;CAChC,GAAG,OAAO,CAAC,EAAE,CAAC,CAkBd;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAAC,EACzC,EAAE,GACL,EAAE;IACC,EAAE,EAAE,EAAE,CAAC;CACV,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAkChC;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,uBAAuB,CAgB3E;AAGD;;;;;;;;;;;GAWG;AACH,wBAAsB,2BAA2B,CAAC,EAC9C,OAAO,GACV,EAAE;IACC,OAAO,EAAE,uBAAuB,CAAC;CACpC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CA0CpB;AAGD;;;;;;GAMG;AACH,wBAAsB,kCAAkC,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,uBAAuB,CAAA;CAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAY7H;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,EACtC,OAAO,EACP,eAAe,EAClB,EAAE;IACC,OAAO,EAAE,uBAAuB,CAAC;IACjC,eAAe,EAAE,4BAA4B,EAAE,CAAC;CACnD,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CA2BpB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,EACnC,OAAO,EACP,eAAe,EAClB,EAAE;IACC,OAAO,EAAE,uBAAuB,CAAC;IACjC,eAAe,EAAE,4BAA4B,EAAE,CAAC;CACnD,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAcpB"}
|
|
@@ -6,6 +6,7 @@ import { validateIbGibIntrinsically } from '@ibgib/ts-gib/dist/V1/validate-helpe
|
|
|
6
6
|
import { GLOBAL_LOG_A_LOT } from '../../core-constants.mjs';
|
|
7
7
|
import { SYNC_SAGA_CONTEXT_ATOM } from './sync-saga-context-constants.mjs';
|
|
8
8
|
import { validateSyncSagaFrame } from '../sync-helpers.mjs';
|
|
9
|
+
import { isIbGibWithAtom } from '../../common/other/ibgib-helper.mjs';
|
|
9
10
|
const logalot = GLOBAL_LOG_A_LOT;
|
|
10
11
|
/**
|
|
11
12
|
* Constructs the standard 'ib' string for a Sync Saga Context stone.
|
|
@@ -64,6 +65,26 @@ export async function parseSyncSagaContextIb({ ib, }) {
|
|
|
64
65
|
throw error;
|
|
65
66
|
}
|
|
66
67
|
}
|
|
68
|
+
export function isSyncSagaContextIbGib(x) {
|
|
69
|
+
const lc = `[${isSyncSagaContextIbGib.name}]`;
|
|
70
|
+
try {
|
|
71
|
+
if (logalot) {
|
|
72
|
+
console.log(`${lc} starting... (I: 2bfa7f3cf5984b0c78aced881ce95226)`);
|
|
73
|
+
}
|
|
74
|
+
const hasAtom = isIbGibWithAtom(x, SYNC_SAGA_CONTEXT_ATOM);
|
|
75
|
+
// should be good enough in V1
|
|
76
|
+
return hasAtom;
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
console.error(`${lc} ${extractErrorMsg(error)}`);
|
|
80
|
+
throw error;
|
|
81
|
+
}
|
|
82
|
+
finally {
|
|
83
|
+
if (logalot) {
|
|
84
|
+
console.log(`${lc} complete.`);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
67
88
|
/**
|
|
68
89
|
* Validates ONLY the {@link context} ibgib itself and saga frame/msg stone(s)
|
|
69
90
|
* ({@link SyncSagaContextIbGib_V1.sagaFrame}).
|
|
@@ -76,7 +97,7 @@ export async function parseSyncSagaContextIb({ ib, }) {
|
|
|
76
97
|
*
|
|
77
98
|
* @returns empty array if valid, else validation errors
|
|
78
99
|
*/
|
|
79
|
-
export async function validateContextAndSagaFrame({ context }) {
|
|
100
|
+
export async function validateContextAndSagaFrame({ context, }) {
|
|
80
101
|
const lc = `[${validateContextAndSagaFrame.name}]`;
|
|
81
102
|
try {
|
|
82
103
|
if (logalot) {
|
|
@@ -148,13 +169,21 @@ export async function validateContextDomainPayloadIbGibs({ context }) {
|
|
|
148
169
|
/**
|
|
149
170
|
* move to sync-peer-helpers.mts as a pure function?
|
|
150
171
|
*/
|
|
151
|
-
export async function authenticateContext({ context }) {
|
|
172
|
+
export async function authenticateContext({ context, fullSagaHistory }) {
|
|
152
173
|
const lc = `[${authenticateContext.name}]`;
|
|
153
174
|
try {
|
|
154
175
|
if (logalot) {
|
|
155
176
|
console.log(`${lc} starting... (I: 2677a482dfa873dcd1aa04a3031ff826)`);
|
|
156
177
|
}
|
|
157
178
|
console.error(`${lc} NAG ERROR (NOT THROWN): not implemented. // todo: authenticate (v1 must have this after we get merge logic workflow going) (E: bc3a78f2dab18ab64c36d055a4b50526)`);
|
|
179
|
+
// ensure the same identity rel8n timeline is in the first saga ibgib.
|
|
180
|
+
for (const sagaFrameDepGraph of fullSagaHistory) {
|
|
181
|
+
sagaFrameDepGraph.identities;
|
|
182
|
+
}
|
|
183
|
+
// each saga ibgib should be updated with a new identity rel8n. each
|
|
184
|
+
// rel8n should correspond to each evolution of the keystone.
|
|
185
|
+
// if (context.sagaFrame.rel8ns?.sessionKeystone)
|
|
186
|
+
// context.signedSessionKeystone
|
|
158
187
|
return [];
|
|
159
188
|
}
|
|
160
189
|
catch (error) {
|
|
@@ -170,7 +199,7 @@ export async function authenticateContext({ context }) {
|
|
|
170
199
|
/**
|
|
171
200
|
* move to sync-peer-helpers.mts as a pure function?
|
|
172
201
|
*/
|
|
173
|
-
export async function authorizeContext({ context }) {
|
|
202
|
+
export async function authorizeContext({ context, fullSagaHistory }) {
|
|
174
203
|
const lc = `[${authorizeContext.name}]`;
|
|
175
204
|
try {
|
|
176
205
|
if (logalot) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-saga-context-helpers.mjs","sourceRoot":"","sources":["../../../src/sync/sync-saga-context/sync-saga-context-helpers.mts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAgB,MAAM,iDAAiD,CAAC;AAKhG,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AAEvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAS3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"sync-saga-context-helpers.mjs","sourceRoot":"","sources":["../../../src/sync/sync-saga-context/sync-saga-context-helpers.mts"],"names":[],"mappings":"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"}
|
|
@@ -91,5 +91,21 @@ export interface SyncSagaContextIbGib_V1 extends IbGib_V1<SyncSagaContextData_V1
|
|
|
91
91
|
* previous frame of the keystone.
|
|
92
92
|
*/
|
|
93
93
|
signedSessionKeystone?: KeystoneIbGib_V1;
|
|
94
|
+
/**
|
|
95
|
+
* If identity is used in the sync transaction, this should be provided. It
|
|
96
|
+
* will drive both primary identity keystone evolution (to create session
|
|
97
|
+
* keystone), as well as signing the session keystone itself.
|
|
98
|
+
*
|
|
99
|
+
* when a peer transmits the context ibgib, this does not need to be
|
|
100
|
+
* transmitted. Note, however, that if sync is occuring between two remote
|
|
101
|
+
* peers and the peer design is not a proxy-based one, then the receiver
|
|
102
|
+
* should assign this with their own provider function.
|
|
103
|
+
*
|
|
104
|
+
* @returns the identity secret when needed to sign/evolve keystone
|
|
105
|
+
*
|
|
106
|
+
* NOTE: Not 100% sure where I'm putting this so this may end up being
|
|
107
|
+
* unused and should thus be removed. Right now, I think this will work.
|
|
108
|
+
*/
|
|
109
|
+
fnIdentitySecret?: () => Promise<string>;
|
|
94
110
|
}
|
|
95
111
|
//# sourceMappingURL=sync-saga-context-types.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-saga-context-types.d.mts","sourceRoot":"","sources":["../../../src/sync/sync-saga-context/sync-saga-context-types.mts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAEzF,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAErE,MAAM,WAAW,oBAAoB;IACjC,IAAI,EAAE,OAAO,sBAAsB,CAAC;IACpC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,YAAY;IACxD;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,CAAC,8BAA8B,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC;CAClD;AAED;;;GAGG;AACH,MAAM,WAAW,wBAAyB,SAAQ,cAAc;IAC5D;;;;OAIG;IACH,SAAS,EAAE,SAAS,EAAE,CAAC;IAEvB;;;;;;;;;;;;;;;;OAgBG;IACH,eAAe,CAAC,EAAE,SAAS,EAAE,CAAC;CACjC;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAwB,SAAQ,QAAQ,CAAC,sBAAsB,EAAE,wBAAwB,CAAC;IACvG;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,QAAQ,EAAE,CAAC;IAEjC;;;;OAIG;IACH,SAAS,EAAE,YAAY,CAAC;IAExB;;;;;;;;;OASG;IACH,qBAAqB,CAAC,EAAE,gBAAgB,CAAC;CAC5C"}
|
|
1
|
+
{"version":3,"file":"sync-saga-context-types.d.mts","sourceRoot":"","sources":["../../../src/sync/sync-saga-context/sync-saga-context-types.mts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAEzF,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAErE,MAAM,WAAW,oBAAoB;IACjC,IAAI,EAAE,OAAO,sBAAsB,CAAC;IACpC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,YAAY;IACxD;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,CAAC,8BAA8B,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC;CAClD;AAED;;;GAGG;AACH,MAAM,WAAW,wBAAyB,SAAQ,cAAc;IAC5D;;;;OAIG;IACH,SAAS,EAAE,SAAS,EAAE,CAAC;IAEvB;;;;;;;;;;;;;;;;OAgBG;IACH,eAAe,CAAC,EAAE,SAAS,EAAE,CAAC;CACjC;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAwB,SAAQ,QAAQ,CAAC,sBAAsB,EAAE,wBAAwB,CAAC;IACvG;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,QAAQ,EAAE,CAAC;IAEjC;;;;OAIG;IACH,SAAS,EAAE,YAAY,CAAC;IAExB;;;;;;;;;OASG;IACH,qBAAqB,CAAC,EAAE,gBAAgB,CAAC;IAEzC;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;CAC5C"}
|
|
@@ -114,9 +114,24 @@ export declare class SyncSagaCoordinator {
|
|
|
114
114
|
identitySecret?: string;
|
|
115
115
|
metaspace: MetaspaceService;
|
|
116
116
|
}): Promise<SyncSagaContextIbGib_V1 | null>;
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
117
|
+
/**
|
|
118
|
+
* helper that KDFs the given identitySecret, using {@link sagaId} to do so.
|
|
119
|
+
*
|
|
120
|
+
* @returns deterministically derived session secret
|
|
121
|
+
*/
|
|
122
|
+
private deriveSessionSecret;
|
|
123
|
+
private getInitialWeakTransitionSessionSecret;
|
|
124
|
+
private getTransitionKeystonePool;
|
|
125
|
+
private getDelegateKeystonePool;
|
|
126
|
+
/**
|
|
127
|
+
* creates a session identity keystone based off of the given args.
|
|
128
|
+
*
|
|
129
|
+
* Then, if the {@link primaryIdentity} keystone is provided, this also
|
|
130
|
+
* **signs** this keystone pointing to the address of the sess
|
|
131
|
+
* @param param0
|
|
132
|
+
* @returns
|
|
133
|
+
*/
|
|
134
|
+
private createSessionIdentity;
|
|
120
135
|
/**
|
|
121
136
|
* Drives the FSM loop of the Saga.
|
|
122
137
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-saga-coordinator.d.mts","sourceRoot":"","sources":["../../src/sync/sync-saga-coordinator.mts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sync-saga-coordinator.d.mts","sourceRoot":"","sources":["../../src/sync/sync-saga-coordinator.mts"],"names":[],"mappings":"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"}
|