@ibgib/core-gib 0.1.25 → 0.1.26
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 +1 -1
- package/dist/common/other/ibgib-helper.d.mts.map +1 -1
- package/dist/common/other/ibgib-helper.mjs.map +1 -1
- package/dist/sync/sync-constants.d.mts +1 -0
- package/dist/sync/sync-constants.d.mts.map +1 -1
- package/dist/sync/sync-constants.mjs +1 -0
- package/dist/sync/sync-constants.mjs.map +1 -1
- package/dist/sync/sync-helpers.d.mts +5 -0
- package/dist/sync/sync-helpers.d.mts.map +1 -1
- package/dist/sync/sync-helpers.mjs +37 -1
- package/dist/sync/sync-helpers.mjs.map +1 -1
- package/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.d.mts +0 -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 +148 -62
- package/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mjs.map +1 -1
- package/dist/sync/sync-peer/sync-peer-v1.d.mts +13 -29
- package/dist/sync/sync-peer/sync-peer-v1.d.mts.map +1 -1
- package/dist/sync/sync-peer/sync-peer-v1.mjs +17 -57
- package/dist/sync/sync-peer/sync-peer-v1.mjs.map +1 -1
- package/dist/sync/sync-saga-context/sync-saga-context-helpers.d.mts +15 -1
- 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 +60 -4
- package/dist/sync/sync-saga-context/sync-saga-context-helpers.mjs.map +1 -1
- package/dist/sync/sync-saga-coordinator.d.mts +49 -3
- package/dist/sync/sync-saga-coordinator.d.mts.map +1 -1
- package/dist/sync/sync-saga-coordinator.mjs +180 -101
- package/dist/sync/sync-saga-coordinator.mjs.map +1 -1
- package/dist/sync/sync-types.d.mts +1 -3
- package/dist/sync/sync-types.d.mts.map +1 -1
- package/package.json +1 -1
- package/src/common/other/ibgib-helper.mts +1 -1
- package/src/sync/sync-constants.mts +1 -0
- package/src/sync/sync-helpers.mts +41 -1
- package/src/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mts +147 -47
- package/src/sync/sync-peer/sync-peer-v1.mts +31 -74
- package/src/sync/sync-saga-context/sync-saga-context-helpers.mts +55 -7
- package/src/sync/sync-saga-coordinator.mts +232 -110
- package/src/sync/sync-types.mts +2 -2
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
* You are expected to implement concrete peer classes for concrete architecture.
|
|
5
5
|
*/
|
|
6
6
|
import { IbGib_V1 } from '@ibgib/ts-gib/dist/V1/types.mjs';
|
|
7
|
-
import { IbGibAddr } from '@ibgib/ts-gib/dist/types.mjs';
|
|
8
7
|
import { SubjectWitness } from '../../common/pubsub/subject/subject-types.mjs';
|
|
9
8
|
import { SyncSagaContextIbGib_V1 } from '../sync-saga-context/sync-saga-context-types.mjs';
|
|
10
9
|
import { InitializeSyncPeerOpts, SyncPeerData_V1, SyncPeerRel8ns_V1, SyncPeerWitness } from './sync-peer-types.mjs';
|
|
@@ -49,45 +48,30 @@ export declare abstract class SyncPeer_V1<TInitializeOpts extends InitializeSync
|
|
|
49
48
|
*/
|
|
50
49
|
witness(context: SyncSagaContextIbGib_V1): Promise<SyncSagaContextIbGib_V1 | undefined>;
|
|
51
50
|
/**
|
|
51
|
+
* At this point, this is a validated, authenticated and authorized context
|
|
52
|
+
* to send.
|
|
53
|
+
*
|
|
52
54
|
* This is responsible for:
|
|
53
55
|
*
|
|
54
|
-
* * sending outgoing {@link context}, the sync saga frame and msg
|
|
55
|
-
* and identities...
|
|
56
|
+
* * physical sending outgoing {@link context}, the sync saga frame and msg
|
|
57
|
+
* stone(s), and identities...
|
|
56
58
|
* * AND sending OUTGOING domain ibgibs
|
|
57
59
|
* {@link SyncSagaContextIbGib_V1.payloadIbGibsDomain}
|
|
58
60
|
* * getting back the other end's resultant context ibgib, sync saga frame
|
|
59
61
|
* and msg stone(s), and identities in their entirety...
|
|
60
62
|
* * AND stream/receiving the RESPONSE payload domain ibgibs, publishing
|
|
61
63
|
* these to this.payloadIbGibsDomainReceived$.
|
|
64
|
+
* * BUT this should return as soon as the resultant context ibgib comes
|
|
65
|
+
* back.
|
|
62
66
|
*
|
|
63
|
-
* So this returns the RESPONSE context, possibly BEFORE the
|
|
64
|
-
* ibgibs have been completely received/streamed. The coordinator is
|
|
65
|
-
|
|
66
|
-
protected abstract sendContextRequest(context: SyncSagaContextIbGib_V1): Promise<SyncSagaContextIbGib_V1 | undefined>;
|
|
67
|
-
/**
|
|
68
|
-
* Pushes specific IbGib(s) (by address) from Local to Remote.
|
|
67
|
+
* So this returns the RESPONSE context, possibly BEFORE the response DOMAIN
|
|
68
|
+
* ibgibs have been completely received/streamed. The coordinator is
|
|
69
|
+
* responsible for awaiting this stream.
|
|
69
70
|
*
|
|
70
|
-
*
|
|
71
|
-
* (
|
|
72
|
-
* its diffing algorithm.
|
|
73
|
-
*/
|
|
74
|
-
protected abstract push(addrs: IbGibAddr[]): Promise<void>;
|
|
75
|
-
/**
|
|
76
|
-
* Primitive: Pulls specific IbGib(s) (by address) from Remote to Local.
|
|
71
|
+
* @returns next sync saga context if another round, or undefined if we're
|
|
72
|
+
* done. (might throw if there's an error?)
|
|
77
73
|
*/
|
|
78
|
-
protected abstract
|
|
79
|
-
/**
|
|
80
|
-
* move to sync-peer-helpers.mts as a pure function?
|
|
81
|
-
*/
|
|
82
|
-
protected authenticateContext({ context }: {
|
|
83
|
-
context: SyncSagaContextIbGib_V1;
|
|
84
|
-
}): Promise<string[]>;
|
|
85
|
-
/**
|
|
86
|
-
* move to sync-peer-helpers.mts as a pure function?
|
|
87
|
-
*/
|
|
88
|
-
protected authorizeContext({ context }: {
|
|
89
|
-
context: SyncSagaContextIbGib_V1;
|
|
90
|
-
}): Promise<string[]>;
|
|
74
|
+
protected abstract sendContextRequest(context: SyncSagaContextIbGib_V1): Promise<SyncSagaContextIbGib_V1 | undefined>;
|
|
91
75
|
/**
|
|
92
76
|
* Abstract accessor to get an IbGib from the Local space/store.
|
|
93
77
|
* Needed for inspecting rela8ns during the graph walk.
|
|
@@ -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;
|
|
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;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAStE;;;;;;;;;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,gBAAgB,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAa5D,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI;IAoC3D,SAAS,CAAC,QAAQ,CAAC,uBAAuB,IAAI,OAAO,CAAC,aAAa,CAAC;IAEpE;;;;;;;;OAQG;IACY,OAAO,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,GAAG,SAAS,CAAC;IA0FtG;;;;;;;;;;;;;;;;;;;;;;;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"}
|
|
@@ -7,7 +7,7 @@ import { extractErrorMsg } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs
|
|
|
7
7
|
import { GLOBAL_LOG_A_LOT } from '../../core-constants.mjs';
|
|
8
8
|
import { LightWitnessBase_V1 } from '../../witness/light-witness-base-v1.mjs';
|
|
9
9
|
import { newupSubject } from '../../common/pubsub/subject/subject-helper.mjs';
|
|
10
|
-
import { validateContextAndSagaFrame } from '../sync-saga-context/sync-saga-context-helpers.mjs';
|
|
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
12
|
const logalot = GLOBAL_LOG_A_LOT || true;
|
|
13
13
|
const logalotControlDomain = true;
|
|
@@ -152,74 +152,34 @@ export class SyncPeer_V1 extends LightWitnessBase_V1 {
|
|
|
152
152
|
if (validationErrors.length > 0) {
|
|
153
153
|
throw new Error(`invalid context received. validationErrors: ${validationErrors} (E: 8b34c875c968af29bc433138e57a7826)`);
|
|
154
154
|
}
|
|
155
|
-
const authenticationErrors = await
|
|
155
|
+
const authenticationErrors = await authenticateContext({ context });
|
|
156
156
|
if (authenticationErrors.length > 0) {
|
|
157
157
|
throw new Error(`invalid context authentication. authenticationErrors: ${authenticationErrors} (E: da89da5ee1269aeb78952d475d607526)`);
|
|
158
158
|
}
|
|
159
|
-
const authorizationErrors = await
|
|
159
|
+
const authorizationErrors = await authorizeContext({ context });
|
|
160
160
|
if (authorizationErrors.length > 0) {
|
|
161
161
|
throw new Error(`invalid context authorization. authorizationErrors: ${authorizationErrors} (E: 8ddc284a758cf10ba829334c1babb826)`);
|
|
162
162
|
}
|
|
163
163
|
// at this point, we have a valid, authenticated, authorized context
|
|
164
|
-
//
|
|
164
|
+
// execute the transfer of control domain ibgibs & outgoing payload
|
|
165
|
+
// ibgibs...
|
|
165
166
|
const response = await this.sendContextRequest(context);
|
|
166
|
-
if (
|
|
167
|
+
if (response) {
|
|
168
|
+
// at this point, all outgoing payload domain ibgibs have been sent.
|
|
169
|
+
// we have received the response context, wherein the sync saga
|
|
170
|
+
// frame/msg stone(s) and any keystones should be evolved. Depending
|
|
171
|
+
// on the concrete implementation, if there are domain ibgibs to
|
|
172
|
+
// receive, they may still be transferring. These will be published
|
|
173
|
+
// to this.payloadIbGibsDomainReceived$
|
|
174
|
+
return response;
|
|
175
|
+
}
|
|
176
|
+
else {
|
|
177
|
+
// response falsy. we could be done, or this could be an error.
|
|
167
178
|
if (logalot) {
|
|
168
|
-
console.log(`${lc} No response from peer
|
|
179
|
+
console.log(`${lc} No response from peer. this may be normal if we just sent the very last commit frame. (I: 1855b7728c8898e1f9c001f8170ba826)`);
|
|
169
180
|
}
|
|
170
181
|
return undefined;
|
|
171
182
|
}
|
|
172
|
-
// at this point, all outgoing payload domain ibgibs have been sent.
|
|
173
|
-
// we have received the response context, wherein the sync saga
|
|
174
|
-
// frame/msg stone(s) and any keystones should be evolved. Depending
|
|
175
|
-
// on the concrete implementation, if there are domain ibgibs to
|
|
176
|
-
// receive, they may still be transferring. These will be published
|
|
177
|
-
// to this.payloadIbGibsDomainReceived$
|
|
178
|
-
return response;
|
|
179
|
-
}
|
|
180
|
-
catch (error) {
|
|
181
|
-
console.error(`${lc} ${extractErrorMsg(error)}`);
|
|
182
|
-
throw error;
|
|
183
|
-
}
|
|
184
|
-
finally {
|
|
185
|
-
if (logalot) {
|
|
186
|
-
console.log(`${lc} complete.`);
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
/**
|
|
191
|
-
* move to sync-peer-helpers.mts as a pure function?
|
|
192
|
-
*/
|
|
193
|
-
async authenticateContext({ context }) {
|
|
194
|
-
const lc = `${this.lc}[${this.authenticateContext.name}]`;
|
|
195
|
-
try {
|
|
196
|
-
if (logalot) {
|
|
197
|
-
console.log(`${lc} starting... (I: 2677a482dfa873dcd1aa04a3031ff826)`);
|
|
198
|
-
}
|
|
199
|
-
console.error(`${lc} NAG ERROR (NOT THROWN): not implemented. // todo: authenticate (v1 must have this after we get merge logic workflow going) (E: bc3a78f2dab18ab64c36d055a4b50526)`);
|
|
200
|
-
return [];
|
|
201
|
-
}
|
|
202
|
-
catch (error) {
|
|
203
|
-
console.error(`${lc} ${extractErrorMsg(error)}`);
|
|
204
|
-
throw error;
|
|
205
|
-
}
|
|
206
|
-
finally {
|
|
207
|
-
if (logalot) {
|
|
208
|
-
console.log(`${lc} complete.`);
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
/**
|
|
213
|
-
* move to sync-peer-helpers.mts as a pure function?
|
|
214
|
-
*/
|
|
215
|
-
async authorizeContext({ context }) {
|
|
216
|
-
const lc = `${this.lc}[${this.authorizeContext.name}]`;
|
|
217
|
-
try {
|
|
218
|
-
if (logalot) {
|
|
219
|
-
console.log(`${lc} starting... (I: 48c918b41ceec0cd489ca3b8819e6826)`);
|
|
220
|
-
}
|
|
221
|
-
console.error(`${lc} NAG ERROR (NOT THROWN): not implemented. authorize business logic (v1 must have this, but later when we are working on admin vs. student)(E: bc3a78f2dab18ab64c36d055a4b50526)`);
|
|
222
|
-
return [];
|
|
223
183
|
}
|
|
224
184
|
catch (error) {
|
|
225
185
|
console.error(`${lc} ${extractErrorMsg(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,2BAA2B,EAAE,MAAM,oDAAoD,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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"}
|
|
@@ -69,11 +69,25 @@ export declare function validateContextAndSagaFrame({ context }: {
|
|
|
69
69
|
context: SyncSagaContextIbGib_V1;
|
|
70
70
|
}): Promise<string[]>;
|
|
71
71
|
/**
|
|
72
|
-
* validates
|
|
72
|
+
* validates {@link SyncSagaContextIbGib_V1.payloadIbGibsDomain} intrinsically,
|
|
73
|
+
* and ensures that these payloadIbGibs also match the expected addrs in
|
|
74
|
+
* {@link SyncSagaContextData_V1}[{@link SYNC_SAGA_PAYLOAD_ADDRS_DOMAIN}].
|
|
73
75
|
*
|
|
74
76
|
* @returns empty array if valid, else validation errors
|
|
75
77
|
*/
|
|
76
78
|
export declare function validateContextDomainPayloadIbGibs({ context }: {
|
|
77
79
|
context: SyncSagaContextIbGib_V1;
|
|
78
80
|
}): Promise<string[]>;
|
|
81
|
+
/**
|
|
82
|
+
* move to sync-peer-helpers.mts as a pure function?
|
|
83
|
+
*/
|
|
84
|
+
export declare function authenticateContext({ context }: {
|
|
85
|
+
context: SyncSagaContextIbGib_V1;
|
|
86
|
+
}): Promise<string[]>;
|
|
87
|
+
/**
|
|
88
|
+
* move to sync-peer-helpers.mts as a pure function?
|
|
89
|
+
*/
|
|
90
|
+
export declare function authorizeContext({ context }: {
|
|
91
|
+
context: SyncSagaContextIbGib_V1;
|
|
92
|
+
}): Promise<string[]>;
|
|
79
93
|
//# 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;AAKH,OAAO,EAAE,QAAQ,EAAG,MAAM,iCAAiC,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,8BAA8B,CAAC;AAMlD,OAAO,EACH,sBAAsB,EAAE,uBAAuB,EAAE,oBAAoB,EAExE,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAEtE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,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;AAKH,OAAO,EAAE,QAAQ,EAAG,MAAM,iCAAiC,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,8BAA8B,CAAC;AAMlD,OAAO,EACH,sBAAsB,EAAE,uBAAuB,EAAE,oBAAoB,EAExE,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAEtE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAKjD;;GAEG;AACH,MAAM,WAAW,4BAA4B;IACzC;;OAEG;IACH,SAAS,EAAE,YAAY,CAAC;IACxB;;OAEG;IACH,gBAAgB,CAAC,EAAE,QAAQ,EAAE,CAAC;IAC9B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,QAAQ,EAAE,CAAC;IACjC;;;OAGG;IACH,UAAU,EAAE,aAAa,CAAC;CAC7B;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,EACvC,IAAI,GACP,EAAE;IACC,IAAI,EAAE,sBAAsB,CAAC;CAChC,GAAG,OAAO,CAAC,EAAE,CAAC,CAiBd;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAAC,EACzC,EAAE,GACL,EAAE;IACC,EAAE,EAAE,EAAE,CAAC;CACV,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA2BhC;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,qBAAqB,CAAC,EACxC,SAAS,EACT,gBAAgB,EAChB,mBAAmB,EACnB,UAAU,GACb,EAAE,4BAA4B,GAAG,OAAO,CAAC,uBAAuB,CAAC,CA8DjE;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,2BAA2B,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,uBAAuB,CAAA;CAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CA0CtH;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,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,uBAAuB,CAAA;CAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAc9G;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,uBAAuB,CAAA;CAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAc3G"}
|
|
@@ -9,6 +9,7 @@ import { GLOBAL_LOG_A_LOT } from '../../core-constants.mjs';
|
|
|
9
9
|
import { SYNC_SAGA_CONTEXT_ATOM } from './sync-saga-context-constants.mjs';
|
|
10
10
|
import { SYNC_SAGA_PAYLOAD_ADDRS_DOMAIN } from '../sync-constants.mjs';
|
|
11
11
|
import { putInSpace, registerNewIbGib } from '../../witness/space/space-helper.mjs';
|
|
12
|
+
import { validateSyncSagaFrame } from '../sync-helpers.mjs';
|
|
12
13
|
const logalot = GLOBAL_LOG_A_LOT;
|
|
13
14
|
/**
|
|
14
15
|
* Constructs the standard 'ib' string for a Sync Saga Context stone.
|
|
@@ -157,15 +158,24 @@ export async function validateContextAndSagaFrame({ context }) {
|
|
|
157
158
|
return errors; /* <<<< returns early */
|
|
158
159
|
}
|
|
159
160
|
if (context.sagaFrame) {
|
|
161
|
+
const sagaFrameErrors = await validateSyncSagaFrame({ sagaIbGib: context.sagaFrame });
|
|
162
|
+
sagaFrameErrors.forEach(x => errors.push(x));
|
|
160
163
|
}
|
|
161
164
|
else {
|
|
162
165
|
errors.push(`context.sagaFrame is falsy. (E: b4edd88f4963f493789f83b29ba2df26)`);
|
|
163
166
|
}
|
|
167
|
+
// if this is already invalid, we could have intrinsic validation errors, which are a non-starter.
|
|
168
|
+
if (errors.length > 0) {
|
|
169
|
+
return errors; /* <<<< returns early */
|
|
170
|
+
}
|
|
164
171
|
// validate the entire context graph intrinsically, including saga frame, stones, identity(s) (if applicable but not authentication, that will be done in a separate step)
|
|
165
|
-
// ensure the non-dto properties on the context object (i.e. props
|
|
172
|
+
// ~~ensure the non-dto properties on the context object (i.e. props
|
|
166
173
|
// that are not ib, gib, data, or rel8ns) match the data in the
|
|
167
|
-
// context object
|
|
168
|
-
|
|
174
|
+
// context object~~ NO. THIS WILL BE IN A SEPARATE FUNCTION.
|
|
175
|
+
// See `validateContextDomainPayloadIbGibs`
|
|
176
|
+
// throw new Error(`not implemented (E: cb639658e1183fa6c8a4ebca023ba926)`);
|
|
177
|
+
console.error(`${lc} NAG ERROR MSG (NOT THROWN): not fully implemented yet (E: d574d85cb578637648ed403857f7a826)`);
|
|
178
|
+
return [];
|
|
169
179
|
}
|
|
170
180
|
catch (error) {
|
|
171
181
|
console.error(`${lc} ${extractErrorMsg(error)}`);
|
|
@@ -178,7 +188,9 @@ export async function validateContextAndSagaFrame({ context }) {
|
|
|
178
188
|
}
|
|
179
189
|
}
|
|
180
190
|
/**
|
|
181
|
-
* validates
|
|
191
|
+
* validates {@link SyncSagaContextIbGib_V1.payloadIbGibsDomain} intrinsically,
|
|
192
|
+
* and ensures that these payloadIbGibs also match the expected addrs in
|
|
193
|
+
* {@link SyncSagaContextData_V1}[{@link SYNC_SAGA_PAYLOAD_ADDRS_DOMAIN}].
|
|
182
194
|
*
|
|
183
195
|
* @returns empty array if valid, else validation errors
|
|
184
196
|
*/
|
|
@@ -201,4 +213,48 @@ export async function validateContextDomainPayloadIbGibs({ context }) {
|
|
|
201
213
|
}
|
|
202
214
|
}
|
|
203
215
|
}
|
|
216
|
+
/**
|
|
217
|
+
* move to sync-peer-helpers.mts as a pure function?
|
|
218
|
+
*/
|
|
219
|
+
export async function authenticateContext({ context }) {
|
|
220
|
+
const lc = `[${authenticateContext.name}]`;
|
|
221
|
+
try {
|
|
222
|
+
if (logalot) {
|
|
223
|
+
console.log(`${lc} starting... (I: 2677a482dfa873dcd1aa04a3031ff826)`);
|
|
224
|
+
}
|
|
225
|
+
console.error(`${lc} NAG ERROR (NOT THROWN): not implemented. // todo: authenticate (v1 must have this after we get merge logic workflow going) (E: bc3a78f2dab18ab64c36d055a4b50526)`);
|
|
226
|
+
return [];
|
|
227
|
+
}
|
|
228
|
+
catch (error) {
|
|
229
|
+
console.error(`${lc} ${extractErrorMsg(error)}`);
|
|
230
|
+
throw error;
|
|
231
|
+
}
|
|
232
|
+
finally {
|
|
233
|
+
if (logalot) {
|
|
234
|
+
console.log(`${lc} complete.`);
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* move to sync-peer-helpers.mts as a pure function?
|
|
240
|
+
*/
|
|
241
|
+
export async function authorizeContext({ context }) {
|
|
242
|
+
const lc = `[${authorizeContext.name}]`;
|
|
243
|
+
try {
|
|
244
|
+
if (logalot) {
|
|
245
|
+
console.log(`${lc} starting... (I: 48c918b41ceec0cd489ca3b8819e6826)`);
|
|
246
|
+
}
|
|
247
|
+
console.error(`${lc} NAG ERROR (NOT THROWN): not implemented. authorize business logic (v1 must have this, but later when we are working on admin vs. student)(E: bc3a78f2dab18ab64c36d055a4b50526)`);
|
|
248
|
+
return [];
|
|
249
|
+
}
|
|
250
|
+
catch (error) {
|
|
251
|
+
console.error(`${lc} ${extractErrorMsg(error)}`);
|
|
252
|
+
throw error;
|
|
253
|
+
}
|
|
254
|
+
finally {
|
|
255
|
+
if (logalot) {
|
|
256
|
+
console.log(`${lc} complete.`);
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
}
|
|
204
260
|
//# sourceMappingURL=sync-saga-context-helpers.mjs.map
|
|
@@ -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,EAAE,YAAY,EAAE,MAAM,iDAAiD,CAAC;AAChG,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AAEvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AAMvE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,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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"}
|
|
@@ -42,6 +42,31 @@ export declare class SyncSagaCoordinator {
|
|
|
42
42
|
* @param opts.useSessionIdentity - (Optional) Whether to create an ephemeral session identity. Default: true.
|
|
43
43
|
*/
|
|
44
44
|
sync({ peer, domainIbGibs, conflictStrategy, useSessionIdentity, metaspace, localSpace, }: SyncOptions): Promise<SyncSagaInfo>;
|
|
45
|
+
/**
|
|
46
|
+
* This is what the receiving side of the sync calls to drive the FSM to the
|
|
47
|
+
* next stage.
|
|
48
|
+
*
|
|
49
|
+
* So whereas the sender executes a saga loop and drives the entire process,
|
|
50
|
+
* this is a reactive one-off that drives just the single step that the
|
|
51
|
+
* receiver does in that saga.
|
|
52
|
+
*
|
|
53
|
+
* @returns next context result if another round, else if commit returns
|
|
54
|
+
* null
|
|
55
|
+
*/
|
|
56
|
+
receiverContinueSync({ sagaContext, mySpace, myTempSpace, identity, identitySecret, metaspace, }: {
|
|
57
|
+
sagaContext: SyncSagaContextIbGib_V1;
|
|
58
|
+
/**
|
|
59
|
+
* Local space relative to the execution context's POV
|
|
60
|
+
*/
|
|
61
|
+
mySpace: IbGibSpaceAny;
|
|
62
|
+
/**
|
|
63
|
+
* Local temp space relative to the execution context's POV
|
|
64
|
+
*/
|
|
65
|
+
myTempSpace: IbGibSpaceAny;
|
|
66
|
+
identity?: KeystoneIbGib_V1;
|
|
67
|
+
identitySecret?: string;
|
|
68
|
+
metaspace: MetaspaceService;
|
|
69
|
+
}): Promise<SyncSagaContextIbGib_V1 | null>;
|
|
45
70
|
protected getSessionIdentity({ sagaId, metaspace, tempSpace, }: {
|
|
46
71
|
sagaId: string;
|
|
47
72
|
metaspace: MetaspaceService;
|
|
@@ -64,6 +89,12 @@ export declare class SyncSagaCoordinator {
|
|
|
64
89
|
*/
|
|
65
90
|
protected executeSagaLoop({ initFrame, initDomainGraph, peer, sessionIdentity, updates$, localSpace, tempSpace, metaspace }: {
|
|
66
91
|
initFrame: SyncIbGib_V1;
|
|
92
|
+
/**
|
|
93
|
+
* This is the initial dependency graph of all domain ibgibs passed in
|
|
94
|
+
* to the original {@link sync} call.
|
|
95
|
+
*
|
|
96
|
+
* if we're executing on the sender, this will be populated
|
|
97
|
+
*/
|
|
67
98
|
initDomainGraph: FlatIbGibGraph;
|
|
68
99
|
peer: SyncPeerWitness;
|
|
69
100
|
sessionIdentity?: KeystoneIbGib_V1;
|
|
@@ -125,6 +156,7 @@ export declare class SyncSagaCoordinator {
|
|
|
125
156
|
}): Promise<IbGib_V1[]>;
|
|
126
157
|
/**
|
|
127
158
|
* This is the heart of the "ping pong" transaction, where we send a context
|
|
159
|
+
*
|
|
128
160
|
* and receive a context. IOW, this drives the FSM of the sync saga ibgib as
|
|
129
161
|
* a whole.
|
|
130
162
|
*
|
|
@@ -143,8 +175,15 @@ export declare class SyncSagaCoordinator {
|
|
|
143
175
|
*
|
|
144
176
|
* This is a one-off on the receiver.
|
|
145
177
|
*/
|
|
146
|
-
handleResponseSagaContext({ sagaContext, mySpace, myTempSpace, identity, identitySecret, metaspace, }: {
|
|
178
|
+
handleResponseSagaContext({ sagaContext, initDomainGraph, mySpace, myTempSpace, identity, identitySecret, metaspace, }: {
|
|
147
179
|
sagaContext: SyncSagaContextIbGib_V1;
|
|
180
|
+
/**
|
|
181
|
+
* This is the initial dependency graph of all domain ibgibs passed in
|
|
182
|
+
* to the original {@link sync} call.
|
|
183
|
+
*
|
|
184
|
+
* if we're executing on the sender, this will be populated
|
|
185
|
+
*/
|
|
186
|
+
initDomainGraph?: FlatIbGibGraph;
|
|
148
187
|
/**
|
|
149
188
|
* Local space relative to the execution context's POV
|
|
150
189
|
*/
|
|
@@ -156,7 +195,7 @@ export declare class SyncSagaCoordinator {
|
|
|
156
195
|
identity?: KeystoneIbGib_V1;
|
|
157
196
|
identitySecret?: string;
|
|
158
197
|
metaspace: MetaspaceService;
|
|
159
|
-
}): Promise<HandleSagaResponseContextResult
|
|
198
|
+
}): Promise<HandleSagaResponseContextResult>;
|
|
160
199
|
/**
|
|
161
200
|
* Handles the `Init` frame.
|
|
162
201
|
*
|
|
@@ -199,11 +238,18 @@ export declare class SyncSagaCoordinator {
|
|
|
199
238
|
*
|
|
200
239
|
* Returns a `Delta` frame.
|
|
201
240
|
*/
|
|
202
|
-
protected handleAckFrame({ sagaIbGib, srcGraph, destSpace, tempSpace, metaspace, identity, }: {
|
|
241
|
+
protected handleAckFrame({ sagaIbGib, srcGraph, initDomainGraph, destSpace, tempSpace, metaspace, identity, }: {
|
|
203
242
|
sagaIbGib: SyncIbGib_V1;
|
|
204
243
|
srcGraph: {
|
|
205
244
|
[addr: string]: IbGib_V1;
|
|
206
245
|
};
|
|
246
|
+
/**
|
|
247
|
+
* This is the initial dependency graph of all domain ibgibs passed in
|
|
248
|
+
* to the original {@link sync} call.
|
|
249
|
+
*
|
|
250
|
+
* if we're executing on the sender, this will be populated
|
|
251
|
+
*/
|
|
252
|
+
initDomainGraph: FlatIbGibGraph;
|
|
207
253
|
destSpace: IbGibSpaceAny;
|
|
208
254
|
tempSpace: IbGibSpaceAny;
|
|
209
255
|
metaspace: MetaspaceService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-saga-coordinator.d.mts","sourceRoot":"","sources":["../../src/sync/sync-saga-coordinator.mts"],"names":[],"mappings":"AAYA,OAAO,EAAE,QAAQ,EAAG,MAAM,iCAAiC,CAAC;AAI5D,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAEnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AAClF,OAAO,EAAE,SAAS,EAAkE,MAAM,sBAAsB,CAAC;AAEjH,OAAO,EACU,YAAY,EAAE,oBAAoB,EAAY,WAAW,EACvD,uBAAuB,EAAE,iBAAiB,EAEzD,+BAA+B,EAClC,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACH,sBAAsB,EAAE,0BAA0B,EAKrD,MAAM,iDAAiD,CAAC;AAGzD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAG,MAAM,iDAAiD,CAAC;AAG3F,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAQ5E,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAQjE;;;;;;;;;;;;GAYG;AACH,qBAAa,mBAAmB;IAIxB,SAAS,CAAC,QAAQ,EAAE,kBAAkB;IAH1C,SAAS,CAAC,EAAE,EAAE,MAAM,CAAmC;gBAGzC,QAAQ,EAAE,kBAAkB;IAK1C;;;;;;;;;;;;OAYG;
|
|
1
|
+
{"version":3,"file":"sync-saga-coordinator.d.mts","sourceRoot":"","sources":["../../src/sync/sync-saga-coordinator.mts"],"names":[],"mappings":"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"}
|