@ibgib/core-gib 0.1.19 → 0.1.20
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 +13 -0
- package/dist/common/other/ibgib-helper.d.mts.map +1 -1
- package/dist/common/other/ibgib-helper.mjs +44 -0
- package/dist/common/other/ibgib-helper.mjs.map +1 -1
- package/dist/sync/merge-info/merge-info-constants.d.mts +2 -0
- package/dist/sync/merge-info/merge-info-constants.d.mts.map +1 -0
- package/dist/sync/merge-info/merge-info-constants.mjs +2 -0
- package/dist/sync/merge-info/merge-info-constants.mjs.map +1 -0
- package/dist/sync/merge-info/merge-info-helpers.d.mts +51 -0
- package/dist/sync/merge-info/merge-info-helpers.d.mts.map +1 -0
- package/dist/sync/merge-info/merge-info-helpers.mjs +92 -0
- package/dist/sync/merge-info/merge-info-helpers.mjs.map +1 -0
- package/dist/sync/merge-info/merge-info-helpers.respec.d.mts +2 -0
- package/dist/sync/merge-info/merge-info-helpers.respec.d.mts.map +1 -0
- package/dist/sync/merge-info/merge-info-helpers.respec.mjs +32 -0
- package/dist/sync/merge-info/merge-info-helpers.respec.mjs.map +1 -0
- package/dist/sync/merge-info/merge-info-types.d.mts +26 -0
- package/dist/sync/merge-info/merge-info-types.d.mts.map +1 -0
- package/dist/sync/merge-info/merge-info-types.mjs +2 -0
- package/dist/sync/merge-info/merge-info-types.mjs.map +1 -0
- package/dist/sync/strategies/conflict-optimistic.d.mts +37 -0
- package/dist/sync/strategies/conflict-optimistic.d.mts.map +1 -0
- package/dist/sync/strategies/conflict-optimistic.mjs +162 -0
- package/dist/sync/strategies/conflict-optimistic.mjs.map +1 -0
- package/dist/sync/sync-conflict.respec.d.mts +8 -0
- package/dist/sync/sync-conflict.respec.d.mts.map +1 -0
- package/dist/sync/sync-conflict.respec.mjs +158 -0
- package/dist/sync/sync-conflict.respec.mjs.map +1 -0
- 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 +0 -1
- package/dist/sync/sync-innerspace-deep-updates.respec.mjs.map +1 -1
- package/dist/sync/sync-innerspace.respec.mjs +1 -1
- package/dist/sync/sync-innerspace.respec.mjs.map +1 -1
- package/dist/sync/sync-saga-coordinator.d.mts +23 -12
- package/dist/sync/sync-saga-coordinator.d.mts.map +1 -1
- package/dist/sync/sync-saga-coordinator.mjs +473 -107
- package/dist/sync/sync-saga-coordinator.mjs.map +1 -1
- package/dist/sync/sync-saga-message/sync-saga-message-helpers.d.mts +11 -0
- package/dist/sync/sync-saga-message/sync-saga-message-helpers.d.mts.map +1 -1
- package/dist/sync/sync-saga-message/sync-saga-message-helpers.mjs +24 -0
- package/dist/sync/sync-saga-message/sync-saga-message-helpers.mjs.map +1 -1
- package/dist/sync/sync-saga-message/sync-saga-message-types.d.mts +23 -0
- package/dist/sync/sync-saga-message/sync-saga-message-types.d.mts.map +1 -1
- package/dist/sync/sync-types.d.mts +31 -4
- package/dist/sync/sync-types.d.mts.map +1 -1
- package/dist/sync/sync-types.mjs.map +1 -1
- package/ibgib-foundations.md +129 -0
- package/package.json +1 -1
- package/roadmap.md +59 -0
- package/src/common/other/ibgib-helper.mts +52 -0
- package/src/keystone/README.md +13 -155
- package/src/keystone/docs/architecture.md +55 -0
- package/src/sync/README.md +37 -42
- package/src/sync/docs/architecture.md +69 -0
- package/src/sync/docs/verification.md +43 -0
- package/src/sync/merge-info/merge-info-constants.mts +1 -0
- package/src/sync/merge-info/merge-info-helpers.mts +134 -0
- package/src/sync/merge-info/merge-info-helpers.respec.mts +41 -0
- package/src/sync/merge-info/merge-info-types.mts +28 -0
- package/src/sync/strategies/conflict-optimistic.mts +208 -0
- package/src/sync/sync-conflict.respec.mts +194 -0
- package/src/sync/sync-innerspace-constants.respec.mts +1 -1
- package/src/sync/sync-innerspace-deep-updates.respec.mts +0 -1
- package/src/sync/sync-innerspace.respec.mts +1 -1
- package/src/sync/sync-saga-coordinator.mts +524 -118
- package/src/sync/sync-saga-message/sync-saga-message-helpers.mts +41 -0
- package/src/sync/sync-saga-message/sync-saga-message-types.mts +23 -0
- package/src/sync/sync-types.mts +33 -4
- package/tmp.md +2 -425
|
@@ -2,6 +2,19 @@ import { HashAlgorithm } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
|
|
|
2
2
|
import { Ib, IbGibAddr } from '@ibgib/ts-gib/dist/types.mjs';
|
|
3
3
|
import { IbGib_V1, IbGibData_V1, IbGibRel8ns_V1 } from '@ibgib/ts-gib/dist/V1/types.mjs';
|
|
4
4
|
import { SpecialIbGibType } from './other-types.mjs';
|
|
5
|
+
import { IbGibSpaceAny } from '../../witness/space/space-base-v1.mjs';
|
|
6
|
+
/**
|
|
7
|
+
* Gets ibgibs that are directly related to the given `ibGib` via `rel8nNames`.
|
|
8
|
+
*
|
|
9
|
+
* @returns map of rel8nName -> ibgibs that are related.
|
|
10
|
+
*/
|
|
11
|
+
export declare function getRel8dIbGibs({ ibGib, rel8nNames, space, }: {
|
|
12
|
+
ibGib: IbGib_V1;
|
|
13
|
+
rel8nNames?: string[];
|
|
14
|
+
space: IbGibSpaceAny;
|
|
15
|
+
}): Promise<{
|
|
16
|
+
[rel8nName: string]: IbGib_V1[];
|
|
17
|
+
}>;
|
|
5
18
|
/**
|
|
6
19
|
* Utility function to generate hard-coded ibgibs to use at runtime "on-chain" but
|
|
7
20
|
* written at compile-time in (for now) "off-chain" source code.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ibgib-helper.d.mts","sourceRoot":"","sources":["../../../src/common/other/ibgib-helper.mts"],"names":[],"mappings":"AAAA,OAAO,EACH,aAAa,EAChB,MAAM,iDAAiD,CAAA;AAExD,OAAO,EAAE,EAAE,EAAE,SAAS,EAAG,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAOzF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"ibgib-helper.d.mts","sourceRoot":"","sources":["../../../src/common/other/ibgib-helper.mts"],"names":[],"mappings":"AAAA,OAAO,EACH,aAAa,EAChB,MAAM,iDAAiD,CAAA;AAExD,OAAO,EAAE,EAAE,EAAE,SAAS,EAAG,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAOzF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAGrD,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAKtE;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,EACjC,KAAK,EACL,UAAU,EACV,KAAK,GACR,EAAE;IACC,KAAK,EAAE,QAAQ,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,KAAK,EAAE,aAAa,CAAC;CACxB,GAAG,OAAO,CAAC;IAAE,CAAC,SAAS,EAAE,MAAM,GAAG,QAAQ,EAAE,CAAA;CAAE,CAAC,CAmC/C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAsB,aAAa,CAC/B,KAAK,SAAS,YAAY,GAAG,GAAG,EAChC,OAAO,SAAS,cAAc,GAAG,cAAc,EACjD,EACE,iBAAiB,EACjB,EAAE,EACF,eAAe,EACf,IAAI,EACJ,MAAM,GACT,EAAE;IACC,iBAAiB,EAAE,EAAE,CAAC;IACtB,EAAE,EAAE,EAAE,CAAC;IACP;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAwDpC;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAQhI;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,CAEzH;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,CA6CnH;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,QAAQ,CAAC,EACrB,KAAK,EACL,IAAI,GACP,EAAE;IACC,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;CACpB,GAAG,OAAO,CAqDV;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,EAC5B,CAAC,EACD,SAAS,EACT,cAAc,EACd,oBAAoB,GACvB,EAAE;IACC;;OAEG;IACH,CAAC,EAAE,MAAM,CAAC;IACV;;OAEG;IACH,SAAS,EAAE,aAAa,CAAC;IACzB;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;CAChC,GAAG,OAAO,CAAC,MAAM,CAAC,CAqBlB;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,GAAG,EAAE,CAK1E;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,EAAE,EAAE;IAAE,EAAE,EAAE,EAAE,CAAA;CAAE,GAAG,gBAAgB,CAmBzE;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,GAAG,MAAM,CAGhF;AAED,wBAAgB,mBAAmB,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,GAAG,MAAM,CAEhF;AAED,wBAAgB,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE;IAAE,EAAE,CAAC,EAAE,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,QAAQ,CAAA;CAAE,GAAG,OAAO,CAG/E;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAIlD;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAInD;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,CAAC,EAChC,MAAM,EACN,gBAAgB,GACnB,EAAE;IACC,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG;IACA,mCAAmC;IACnC,iBAAiB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAA;KAAE,CAAC;IAC/C,iCAAiC;IACjC,gBAAgB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAA;KAAE,CAAC;IAC9C,sDAAsD;IACtD,cAAc,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAA;KAAE,CAAA;CAC9C,CA2BA;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CAAC,EACrC,MAAM,GACT,EAAE;IACC;;OAEG;IACH,MAAM,EAAE,QAAQ,EAAE,CAAC;CACtB,GAAG;IAAE,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,EAAE,CAAA;CAAE,CA4CpC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,QAAQ,CAAA;CAAE,GAAG,OAAO,CAoC9D;AAED,wBAAgB,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,QAAQ,CAAA;CAAE,GAAG,OAAO,CAS9D;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,EACvB,KAAK,EACL,aAA2B,GAC9B,EAAE;IACC,KAAK,EAAE,QAAQ,CAAC;IAChB,aAAa,CAAC,EAAE,cAAc,GAAG,WAAW,CAAC;CAChD,GAAG,SAAS,GAAG,SAAS,CASxB;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,EACxB,MAAM,EACN,aAA2B,GAC9B,EAAE;IACC,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,aAAa,CAAC,EAAE,cAAc,GAAG,WAAW,CAAC;CAChD,GAAG;IAAE,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAA;CAAE,CA0BpD;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,EAC9B,KAAK,EACL,KAAY,GACf,EAAE;IACC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,OAAO,CAAC,OAAO,CAAC,CAwBnB;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,OAAO,SAAS,cAAc,GAAG,cAAc,EAAE,EAC1E,KAAK,GACR,EAAE;IACC,KAAK,EAAE,QAAQ,CAAC;CACnB,GAAG,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAmB3B;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAYzC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,gBAAgB,CAAC,EAC7B,KAAK,EACL,IAAI,EACJ,SAAS,GACZ,EAAE;IAIC,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG;IACA,KAAK,EAAE,IAAI,CAAC;IACZ,IAAI,EAAE,IAAI,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACjB,GAAG;IACA,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CAChB,CA8FA"}
|
|
@@ -9,7 +9,51 @@ import { GLOBAL_LOG_A_LOT, IB_REGEXP_DEFAULT } from '../../core-constants.mjs';
|
|
|
9
9
|
import { SpecialIbGibType } from './other-types.mjs';
|
|
10
10
|
import { INVALID_DATE_STRING, SPECIAL_IBGIB_TYPE_REGEXP } from './other-constants.mjs';
|
|
11
11
|
import { CONFIG_KEY_ATOM } from './ibgib-constants.mjs';
|
|
12
|
+
import { getFromSpace } from '../../witness/space/space-helper.mjs';
|
|
12
13
|
const logalot = GLOBAL_LOG_A_LOT || false;
|
|
14
|
+
/**
|
|
15
|
+
* Gets ibgibs that are directly related to the given `ibGib` via `rel8nNames`.
|
|
16
|
+
*
|
|
17
|
+
* @returns map of rel8nName -> ibgibs that are related.
|
|
18
|
+
*/
|
|
19
|
+
export async function getRel8dIbGibs({ ibGib, rel8nNames, space, }) {
|
|
20
|
+
const lc = `[${getRel8dIbGibs.name}]`;
|
|
21
|
+
try {
|
|
22
|
+
if (!ibGib) {
|
|
23
|
+
throw new Error(`ibGib required (E: a3c1b2d4e5f6a7b8c9d0e1f2a3b4c5d6)`);
|
|
24
|
+
}
|
|
25
|
+
if (!space) {
|
|
26
|
+
throw new Error(`space required (E: b4d2c3e4f5a6b7c8d9e0f1a2b3c4d5e6)`);
|
|
27
|
+
}
|
|
28
|
+
// Default to all rel8n names if none provided
|
|
29
|
+
if (!rel8nNames) {
|
|
30
|
+
rel8nNames = Object.keys(ibGib.rel8ns || {});
|
|
31
|
+
}
|
|
32
|
+
const rel8dIbGibs = {};
|
|
33
|
+
for (const rel8nName of rel8nNames) {
|
|
34
|
+
const rel8dAddrs = ibGib.rel8ns?.[rel8nName] || [];
|
|
35
|
+
if (rel8dAddrs.length > 0) {
|
|
36
|
+
const resGet = await getFromSpace({ addrs: rel8dAddrs, space });
|
|
37
|
+
if (resGet.success && resGet.ibGibs?.length === rel8dAddrs.length) {
|
|
38
|
+
rel8dIbGibs[rel8nName] = resGet.ibGibs.concat();
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
// Start logging warnings instead of throwing immediately?
|
|
42
|
+
// For now, consistent with user request to adapt legacy code
|
|
43
|
+
throw new Error(`Problem getting rel8d ibgibs for rel8nName: ${rel8nName}. ${resGet.errorMsg || 'Unknown error'} (E: c5e3d4f5a6b7c8d9e0f1a2b3c4d5e6)`);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
rel8dIbGibs[rel8nName] = [];
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return rel8dIbGibs;
|
|
51
|
+
}
|
|
52
|
+
catch (error) {
|
|
53
|
+
console.error(`${lc} ${extractErrorMsg(error)}`);
|
|
54
|
+
throw error;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
13
57
|
/**
|
|
14
58
|
* Utility function to generate hard-coded ibgibs to use at runtime "on-chain" but
|
|
15
59
|
* written at compile-time in (for now) "off-chain" source code.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ibgib-helper.mjs","sourceRoot":"","sources":["../../../src/common/other/ibgib-helper.mts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ibgib-helper.mjs","sourceRoot":"","sources":["../../../src/common/other/ibgib-helper.mts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"merge-info-constants.d.mts","sourceRoot":"","sources":["../../../src/sync/merge-info/merge-info-constants.mts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"merge-info-constants.mjs","sourceRoot":"","sources":["../../../src/sync/merge-info/merge-info-constants.mts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,YAAY,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { IbGib_V1 } from "@ibgib/ts-gib/dist/V1/types.mjs";
|
|
2
|
+
import { MetaspaceService } from "../../witness/space/metaspace/metaspace-types.mjs";
|
|
3
|
+
import { MergeInfoData_V1, MergeInfoIbGib_V1, MergeInfoIb_V1 } from "./merge-info-types.mjs";
|
|
4
|
+
import { IbGibSpaceAny } from "../../witness/space/space-base-v1.mjs";
|
|
5
|
+
/**
|
|
6
|
+
* Validates and constructs the `ib` object for a Merge Info ibGib.
|
|
7
|
+
*/
|
|
8
|
+
export declare function getMergeInfoIb({ data }: {
|
|
9
|
+
data: MergeInfoData_V1;
|
|
10
|
+
}): Promise<string>;
|
|
11
|
+
/**
|
|
12
|
+
* Parses a standard Merge Info 'ib' string.
|
|
13
|
+
*/
|
|
14
|
+
export declare function parseMergeInfoIb({ ib }: {
|
|
15
|
+
ib: string;
|
|
16
|
+
}): Promise<MergeInfoIb_V1>;
|
|
17
|
+
/**
|
|
18
|
+
* Creates a new MergeInfo ibGib.
|
|
19
|
+
*/
|
|
20
|
+
export declare function createMergeInfo({ algo, ancestors, details, }: {
|
|
21
|
+
algo: string;
|
|
22
|
+
ancestors: IbGib_V1[];
|
|
23
|
+
details?: string;
|
|
24
|
+
}): Promise<MergeInfoIbGib_V1>;
|
|
25
|
+
/**
|
|
26
|
+
* Naive text merge.
|
|
27
|
+
* Strategies:
|
|
28
|
+
* 1. Concat (A + B)
|
|
29
|
+
* 2. structured diff (not impl)
|
|
30
|
+
*/
|
|
31
|
+
export declare function mergeText({ textA, textB, }: {
|
|
32
|
+
textA: string;
|
|
33
|
+
textB: string;
|
|
34
|
+
}): Promise<string>;
|
|
35
|
+
/**
|
|
36
|
+
* Combines two divergent timelines by applying missing DNA from one branch to another.
|
|
37
|
+
*
|
|
38
|
+
* Logic:
|
|
39
|
+
* 1. Identify missing DNA (transforms) in `targetTip` that exist in `sourceTip` (relative to LCA).
|
|
40
|
+
* 2. Replay those transforms onto `targetTip`.
|
|
41
|
+
* 3. Create a MergeInfo stone describing this operation.
|
|
42
|
+
* 4. Relate the new tip to the MergeInfo.
|
|
43
|
+
*/
|
|
44
|
+
export declare function combineDivergentTimelines({ targetTip, sourceTip, lca, space, metaspace, }: {
|
|
45
|
+
targetTip: IbGib_V1;
|
|
46
|
+
sourceTip: IbGib_V1;
|
|
47
|
+
lca: IbGib_V1;
|
|
48
|
+
space: IbGibSpaceAny;
|
|
49
|
+
metaspace: MetaspaceService;
|
|
50
|
+
}): Promise<IbGib_V1>;
|
|
51
|
+
//# sourceMappingURL=merge-info-helpers.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"merge-info-helpers.d.mts","sourceRoot":"","sources":["../../../src/sync/merge-info/merge-info-helpers.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAI3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mDAAmD,CAAC;AAErF,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAItE;;GAEG;AACH,wBAAsB,cAAc,CAAC,EACjC,IAAI,EACP,EAAE;IACC,IAAI,EAAE,gBAAgB,CAAA;CACzB,GAAG,OAAO,CAAC,MAAM,CAAC,CAKlB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,EACnC,EAAE,EACL,EAAE;IACC,EAAE,EAAE,MAAM,CAAA;CACb,GAAG,OAAO,CAAC,cAAc,CAAC,CAgB1B;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,EAClC,IAAI,EACJ,SAAS,EACT,OAAO,GACV,EAAE;IACC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CA0B7B;AAED;;;;;GAKG;AACH,wBAAsB,SAAS,CAAC,EAC5B,KAAK,EACL,KAAK,GACR,EAAE;IACC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC,MAAM,CAAC,CAKlB;AAED;;;;;;;;GAQG;AACH,wBAAsB,yBAAyB,CAAC,EAC5C,SAAS,EACT,SAAS,EACT,GAAG,EACH,KAAK,EACL,SAAS,GACZ,EAAE;IACC,SAAS,EAAE,QAAQ,CAAC;IACpB,SAAS,EAAE,QAAQ,CAAC;IACpB,GAAG,EAAE,QAAQ,CAAC;IACd,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,gBAAgB,CAAC;CAC/B,GAAG,OAAO,CAAC,QAAQ,CAAC,CAGpB"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { Factory_V1 } from "@ibgib/ts-gib/dist/V1/factory.mjs";
|
|
2
|
+
import { getIbGibAddr } from "@ibgib/ts-gib/dist/helper.mjs";
|
|
3
|
+
import { extractErrorMsg } from "@ibgib/helper-gib/dist/helpers/utils-helper.mjs";
|
|
4
|
+
import { MERGE_INFO_ATOM } from "./merge-info-constants.mjs";
|
|
5
|
+
const lc = `[merge-info-helpers]`;
|
|
6
|
+
/**
|
|
7
|
+
* Validates and constructs the `ib` object for a Merge Info ibGib.
|
|
8
|
+
*/
|
|
9
|
+
export async function getMergeInfoIb({ data }) {
|
|
10
|
+
if (!data.algo) {
|
|
11
|
+
throw new Error(`(UNEXPECTED) data.algo required for MergeInfoIb (E: 8a9b0c1d2e3f4g5h)`);
|
|
12
|
+
}
|
|
13
|
+
// merge_info algo
|
|
14
|
+
return [MERGE_INFO_ATOM, data.algo].join(' ');
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Parses a standard Merge Info 'ib' string.
|
|
18
|
+
*/
|
|
19
|
+
export async function parseMergeInfoIb({ ib }) {
|
|
20
|
+
try {
|
|
21
|
+
const parts = ib.split(' ');
|
|
22
|
+
if (parts[0] !== MERGE_INFO_ATOM) {
|
|
23
|
+
throw new Error(`Atom mismatch. Expected ${MERGE_INFO_ATOM} (E: 8f03c92a95144b618821915632599266)`);
|
|
24
|
+
}
|
|
25
|
+
if (parts.length < 2) {
|
|
26
|
+
throw new Error(`Invalid merge info ib. Expected at least 2 parts. (E: 9c2b4c8a6d34469f8263544710183355)`);
|
|
27
|
+
}
|
|
28
|
+
const algo = parts.slice(1).join(' '); // allow spaces in algo? usually single word but safe to join.
|
|
29
|
+
return {
|
|
30
|
+
atom: MERGE_INFO_ATOM,
|
|
31
|
+
algo,
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
catch (error) {
|
|
35
|
+
console.error(`${lc} ${extractErrorMsg(error)}`);
|
|
36
|
+
throw error;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Creates a new MergeInfo ibGib.
|
|
41
|
+
*/
|
|
42
|
+
export async function createMergeInfo({ algo, ancestors, details, }) {
|
|
43
|
+
const data = {
|
|
44
|
+
algo,
|
|
45
|
+
details,
|
|
46
|
+
};
|
|
47
|
+
const ib = await getMergeInfoIb({ data });
|
|
48
|
+
const rel8ns = {};
|
|
49
|
+
if (ancestors && ancestors.length > 0) {
|
|
50
|
+
rel8ns.ancestors = ancestors.map(a => getIbGibAddr({ ibGib: a }));
|
|
51
|
+
}
|
|
52
|
+
const res = await Factory_V1.stone({
|
|
53
|
+
ib,
|
|
54
|
+
data,
|
|
55
|
+
rel8ns,
|
|
56
|
+
parentPrimitiveIb: MERGE_INFO_ATOM,
|
|
57
|
+
uuid: true, // Should be unique per merge event? Yes.
|
|
58
|
+
});
|
|
59
|
+
// Unwrapping if necessary, though recent checking suggests Factory returns ibGib directly.
|
|
60
|
+
// Wait, recent check in SyncSagaCoordinator showed Factory_V1.stone returns the ibGib directly.
|
|
61
|
+
// But check the implementation plan/previous learnings.
|
|
62
|
+
// Confirmed: Factory_V1.stone returns the ibGib directly.
|
|
63
|
+
return res;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Naive text merge.
|
|
67
|
+
* Strategies:
|
|
68
|
+
* 1. Concat (A + B)
|
|
69
|
+
* 2. structured diff (not impl)
|
|
70
|
+
*/
|
|
71
|
+
export async function mergeText({ textA, textB, }) {
|
|
72
|
+
// Very naive: Just concat with a marker for now.
|
|
73
|
+
// User wants "best effort at being non-destructive".
|
|
74
|
+
if (textA === textB) {
|
|
75
|
+
return textA;
|
|
76
|
+
}
|
|
77
|
+
return `${textA}\n\n>>> MERGE SEPARATOR <<<\n\n${textB}`;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Combines two divergent timelines by applying missing DNA from one branch to another.
|
|
81
|
+
*
|
|
82
|
+
* Logic:
|
|
83
|
+
* 1. Identify missing DNA (transforms) in `targetTip` that exist in `sourceTip` (relative to LCA).
|
|
84
|
+
* 2. Replay those transforms onto `targetTip`.
|
|
85
|
+
* 3. Create a MergeInfo stone describing this operation.
|
|
86
|
+
* 4. Relate the new tip to the MergeInfo.
|
|
87
|
+
*/
|
|
88
|
+
export async function combineDivergentTimelines({ targetTip, sourceTip, lca, space, metaspace, }) {
|
|
89
|
+
// stub implementation
|
|
90
|
+
return targetTip;
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=merge-info-helpers.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"merge-info-helpers.mjs","sourceRoot":"","sources":["../../../src/sync/merge-info/merge-info-helpers.mts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"merge-info-helpers.respec.d.mts","sourceRoot":"","sources":["../../../src/sync/merge-info/merge-info-helpers.respec.mts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module merge-info-helpers.respec
|
|
3
|
+
*/
|
|
4
|
+
import { iReckon, respecfully, ifWeMight } from '@ibgib/helper-gib/dist/respec-gib/respec-gib.mjs';
|
|
5
|
+
import { mergeText } from './merge-info-helpers.mjs';
|
|
6
|
+
const maam = `[${import.meta.url}]`;
|
|
7
|
+
const sir = maam;
|
|
8
|
+
await respecfully(sir, 'Merge Info Helpers', async () => {
|
|
9
|
+
await respecfully(sir, 'mergeText', async () => {
|
|
10
|
+
await ifWeMight(sir, 'mergeText should concat different strings', async () => {
|
|
11
|
+
const textA = "Hello";
|
|
12
|
+
const textB = "World";
|
|
13
|
+
const res = await mergeText({ textA, textB });
|
|
14
|
+
iReckon(sir, res).asTo('result').isGonnaBeTruthy();
|
|
15
|
+
iReckon(sir, res.includes(textA)).asTo('includes A').isGonnaBeTruthy();
|
|
16
|
+
iReckon(sir, res.includes(textB)).asTo('includes B').isGonnaBeTruthy();
|
|
17
|
+
iReckon(sir, res.includes('MERGE SEPARATOR')).asTo('includes separator').isGonnaBeTruthy();
|
|
18
|
+
});
|
|
19
|
+
await ifWeMight(sir, 'mergeText should return same string if identical', async () => {
|
|
20
|
+
const textA = "Hello";
|
|
21
|
+
const res = await mergeText({ textA, textB: textA });
|
|
22
|
+
iReckon(sir, res).asTo('result').isGonnaBe(textA);
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
await respecfully(sir, 'combineDivergentTimelines', async () => {
|
|
26
|
+
await ifWeMight(sir, 'combineDivergentTimelines should work (Stub)', async () => {
|
|
27
|
+
// Validation of stub for now, just to ensure scaffolding works.
|
|
28
|
+
iReckon(sir, true).asTo('stub executed').isGonnaBeTruthy();
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
//# sourceMappingURL=merge-info-helpers.respec.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"merge-info-helpers.respec.mjs","sourceRoot":"","sources":["../../../src/sync/merge-info/merge-info-helpers.respec.mts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,OAAO,EAAE,WAAW,EAAQ,SAAS,EAAE,MAAM,kDAAkD,CAAC;AACzG,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;AACpC,MAAM,GAAG,GAAG,IAAI,CAAC;AAEjB,MAAM,WAAW,CAAC,GAAG,EAAE,oBAAoB,EAAE,KAAK,IAAI,EAAE;IAEpD,MAAM,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,IAAI,EAAE;QAE3C,MAAM,SAAS,CAAC,GAAG,EAAE,2CAA2C,EAAE,KAAK,IAAI,EAAE;YACzE,MAAM,KAAK,GAAG,OAAO,CAAC;YACtB,MAAM,KAAK,GAAG,OAAO,CAAC;YACtB,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9C,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,eAAe,EAAE,CAAC;YACnD,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,eAAe,EAAE,CAAC;YACvE,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,eAAe,EAAE,CAAC;YACvE,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,eAAe,EAAE,CAAC;QAC/F,CAAC,CAAC,CAAC;QAEH,MAAM,SAAS,CAAC,GAAG,EAAE,kDAAkD,EAAE,KAAK,IAAI,EAAE;YAChF,MAAM,KAAK,GAAG,OAAO,CAAC;YACtB,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YACrD,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IAEP,CAAC,CAAC,CAAC;IAEH,MAAM,WAAW,CAAC,GAAG,EAAE,2BAA2B,EAAE,KAAK,IAAI,EAAE;QAE3D,MAAM,SAAS,CAAC,GAAG,EAAE,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC5E,gEAAgE;YAChE,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,eAAe,EAAE,CAAC;QAC/D,CAAC,CAAC,CAAC;IAEP,CAAC,CAAC,CAAC;AAEP,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { IbGib_V1, IbGibData_V1, IbGibRel8ns_V1 } from "@ibgib/ts-gib/dist/V1/types.mjs";
|
|
2
|
+
import { MERGE_INFO_ATOM } from "./merge-info-constants.mjs";
|
|
3
|
+
export interface MergeInfoIb_V1 {
|
|
4
|
+
atom: typeof MERGE_INFO_ATOM;
|
|
5
|
+
algo: string;
|
|
6
|
+
}
|
|
7
|
+
export interface MergeInfoData_V1 extends IbGibData_V1 {
|
|
8
|
+
/**
|
|
9
|
+
* The algorithm or strategy used to perform the merge.
|
|
10
|
+
*/
|
|
11
|
+
algo: string;
|
|
12
|
+
/**
|
|
13
|
+
* Optional details about the merge, e.g. validation results or specifics about conflicts resolved.
|
|
14
|
+
*/
|
|
15
|
+
details?: string;
|
|
16
|
+
}
|
|
17
|
+
export interface MergeInfoRel8ns_V1 extends IbGibRel8ns_V1 {
|
|
18
|
+
/**
|
|
19
|
+
* The ibGibs that were merged together.
|
|
20
|
+
* For a timeline merge, these are the tips of the divergent branches.
|
|
21
|
+
*/
|
|
22
|
+
ancestors?: string[];
|
|
23
|
+
}
|
|
24
|
+
export interface MergeInfoIbGib_V1 extends IbGib_V1<MergeInfoData_V1, MergeInfoRel8ns_V1> {
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=merge-info-types.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"merge-info-types.d.mts","sourceRoot":"","sources":["../../../src/sync/merge-info/merge-info-types.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACzF,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,OAAO,eAAe,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IAClD;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACtD;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,iBAAkB,SAAQ,QAAQ,CAAC,gBAAgB,EAAE,kBAAkB,CAAC;CAAI"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"merge-info-types.mjs","sourceRoot":"","sources":["../../../src/sync/merge-info/merge-info-types.mts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module conflict-optimistic
|
|
3
|
+
*
|
|
4
|
+
* Implements the Optimistic Conflict Resolution Strategy.
|
|
5
|
+
*
|
|
6
|
+
* Logic:
|
|
7
|
+
* 1. findLCA: Traverses `past` to find common ancestor.
|
|
8
|
+
* 2. mergeDivergentTimelines: Replays DNA to create a merged tip.
|
|
9
|
+
*/
|
|
10
|
+
import { IbGib_V1 } from '@ibgib/ts-gib/dist/V1/types.mjs';
|
|
11
|
+
import { IbGibSpaceAny } from '../../witness/space/space-base-v1.mjs';
|
|
12
|
+
export interface LCAResult {
|
|
13
|
+
lcaAddr: string;
|
|
14
|
+
branchA: IbGib_V1[];
|
|
15
|
+
branchB: IbGib_V1[];
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Finds the Last Common Ancestor (LCA) between two divergent timelines.
|
|
19
|
+
*
|
|
20
|
+
* Note: simplistic implementation assuming simple linear divergence.
|
|
21
|
+
* Complex DAGs might require more robust graph traversal.
|
|
22
|
+
*/
|
|
23
|
+
export declare function findLCA({ tipA, tipB, space, }: {
|
|
24
|
+
tipA: IbGib_V1;
|
|
25
|
+
tipB: IbGib_V1;
|
|
26
|
+
space: IbGibSpaceAny;
|
|
27
|
+
}): Promise<LCAResult>;
|
|
28
|
+
/**
|
|
29
|
+
* Optimistically merges two divergent timelines by inspecting DNA.
|
|
30
|
+
*/
|
|
31
|
+
export declare function mergeDivergentTimelines({ tipA, tipB, space, metaspace, }: {
|
|
32
|
+
tipA: IbGib_V1;
|
|
33
|
+
tipB: IbGib_V1;
|
|
34
|
+
space: IbGibSpaceAny;
|
|
35
|
+
metaspace: any;
|
|
36
|
+
}): Promise<IbGib_V1>;
|
|
37
|
+
//# sourceMappingURL=conflict-optimistic.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conflict-optimistic.d.mts","sourceRoot":"","sources":["../../../src/sync/strategies/conflict-optimistic.mts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,QAAQ,EAAgC,MAAM,iCAAiC,CAAC;AAEzF,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAMtE,MAAM,WAAW,SAAS;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,QAAQ,EAAE,CAAC;IACpB,OAAO,EAAE,QAAQ,EAAE,CAAC;CACvB;AAED;;;;;GAKG;AACH,wBAAsB,OAAO,CAAC,EAC1B,IAAI,EACJ,IAAI,EACJ,KAAK,GACR,EAAE;IACC,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,aAAa,CAAC;CACxB,GAAG,OAAO,CAAC,SAAS,CAAC,CA2ErB;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAAC,EAC1C,IAAI,EACJ,IAAI,EACJ,KAAK,EACL,SAAS,GACZ,EAAE;IACC,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,GAAG,CAAC;CAClB,GAAG,OAAO,CAAC,QAAQ,CAAC,CA+EpB"}
|