@ibgib/vcs-gib 0.0.6 → 0.0.18

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.
Files changed (185) hide show
  1. package/README.md +24 -2
  2. package/VCS_CLI_USER_GUIDE.md +2 -2
  3. package/dist/AUTO-GENERATED-version.d.mts +1 -1
  4. package/dist/AUTO-GENERATED-version.d.mts.map +1 -1
  5. package/dist/AUTO-GENERATED-version.mjs +1 -1
  6. package/dist/AUTO-GENERATED-version.mjs.map +1 -1
  7. package/dist/bootstrap/node-bootstrap.d.mts.map +1 -1
  8. package/dist/bootstrap/node-bootstrap.mjs +9 -0
  9. package/dist/bootstrap/node-bootstrap.mjs.map +1 -1
  10. package/dist/bootstrap/{node-bootstrap.respec.node.d.mts → node-bootstrap.respec.d.mts} +1 -1
  11. package/dist/bootstrap/node-bootstrap.respec.d.mts.map +1 -0
  12. package/dist/bootstrap/{node-bootstrap.respec.node.mjs → node-bootstrap.respec.mjs} +1 -1
  13. package/dist/bootstrap/node-bootstrap.respec.mjs.map +1 -0
  14. package/dist/cli/cli-arg-parser.d.mts +3 -0
  15. package/dist/cli/cli-arg-parser.d.mts.map +1 -1
  16. package/dist/cli/cli-arg-parser.mjs +13 -1
  17. package/dist/cli/cli-arg-parser.mjs.map +1 -1
  18. package/dist/cli/{cli-arg-parser.respec.node.d.mts → cli-arg-parser.respec.d.mts} +1 -1
  19. package/dist/cli/cli-arg-parser.respec.d.mts.map +1 -0
  20. package/dist/cli/{cli-arg-parser.respec.node.mjs → cli-arg-parser.respec.mjs} +1 -1
  21. package/dist/cli/cli-arg-parser.respec.mjs.map +1 -0
  22. package/dist/cli/cli-constants.d.mts +6 -0
  23. package/dist/cli/cli-constants.d.mts.map +1 -1
  24. package/dist/cli/cli-constants.mjs +24 -0
  25. package/dist/cli/cli-constants.mjs.map +1 -1
  26. package/dist/cli/{cli-e2e.respec.node.d.mts → cli-e2e.respec.d.mts} +1 -1
  27. package/dist/cli/cli-e2e.respec.d.mts.map +1 -0
  28. package/dist/cli/{cli-e2e.respec.node.mjs → cli-e2e.respec.mjs} +2 -2
  29. package/dist/cli/cli-e2e.respec.mjs.map +1 -0
  30. package/dist/cli/commands/add-cmd.d.mts.map +1 -1
  31. package/dist/cli/commands/add-cmd.mjs +35 -30
  32. package/dist/cli/commands/add-cmd.mjs.map +1 -1
  33. package/dist/cli/commands/{branch-checkout-cmd.respec.node.d.mts → branch-checkout-cmd.respec.d.mts} +1 -1
  34. package/dist/cli/commands/branch-checkout-cmd.respec.d.mts.map +1 -0
  35. package/dist/cli/commands/{branch-checkout-cmd.respec.node.mjs → branch-checkout-cmd.respec.mjs} +172 -8
  36. package/dist/cli/commands/branch-checkout-cmd.respec.mjs.map +1 -0
  37. package/dist/cli/commands/branch-cmd.d.mts +2 -1
  38. package/dist/cli/commands/branch-cmd.d.mts.map +1 -1
  39. package/dist/cli/commands/branch-cmd.mjs +59 -8
  40. package/dist/cli/commands/branch-cmd.mjs.map +1 -1
  41. package/dist/cli/commands/checkout-cmd.d.mts.map +1 -1
  42. package/dist/cli/commands/checkout-cmd.mjs +38 -18
  43. package/dist/cli/commands/checkout-cmd.mjs.map +1 -1
  44. package/dist/cli/commands/commit-cmd.d.mts.map +1 -1
  45. package/dist/cli/commands/commit-cmd.mjs +26 -23
  46. package/dist/cli/commands/commit-cmd.mjs.map +1 -1
  47. package/dist/cli/commands/{commit-log-cmd.respec.node.d.mts → commit-log-cmd.respec.d.mts} +1 -1
  48. package/dist/cli/commands/commit-log-cmd.respec.d.mts.map +1 -0
  49. package/dist/cli/commands/{commit-log-cmd.respec.node.mjs → commit-log-cmd.respec.mjs} +1 -1
  50. package/dist/cli/commands/commit-log-cmd.respec.mjs.map +1 -0
  51. package/dist/cli/commands/{init-cmd.respec.node.d.mts → init-cmd.respec.d.mts} +1 -1
  52. package/dist/cli/commands/init-cmd.respec.d.mts.map +1 -0
  53. package/dist/cli/commands/{init-cmd.respec.node.mjs → init-cmd.respec.mjs} +1 -1
  54. package/dist/cli/commands/init-cmd.respec.mjs.map +1 -0
  55. package/dist/cli/commands/merge-cmd.d.mts +23 -0
  56. package/dist/cli/commands/merge-cmd.d.mts.map +1 -0
  57. package/dist/cli/commands/merge-cmd.mjs +224 -0
  58. package/dist/cli/commands/merge-cmd.mjs.map +1 -0
  59. package/dist/cli/commands/reset-cmd.d.mts +21 -0
  60. package/dist/cli/commands/reset-cmd.d.mts.map +1 -0
  61. package/dist/cli/commands/reset-cmd.mjs +93 -0
  62. package/dist/cli/commands/reset-cmd.mjs.map +1 -0
  63. package/dist/cli/commands/reset-restore-cmd.respec.d.mts +7 -0
  64. package/dist/cli/commands/reset-restore-cmd.respec.d.mts.map +1 -0
  65. package/dist/cli/commands/reset-restore-cmd.respec.mjs +185 -0
  66. package/dist/cli/commands/reset-restore-cmd.respec.mjs.map +1 -0
  67. package/dist/cli/commands/restore-cmd.d.mts +22 -0
  68. package/dist/cli/commands/restore-cmd.d.mts.map +1 -0
  69. package/dist/cli/commands/restore-cmd.mjs +115 -0
  70. package/dist/cli/commands/restore-cmd.mjs.map +1 -0
  71. package/dist/cli/commands/{status-add-cmd.respec.node.d.mts → status-add-cmd.respec.d.mts} +1 -1
  72. package/dist/cli/commands/status-add-cmd.respec.d.mts.map +1 -0
  73. package/dist/cli/commands/{status-add-cmd.respec.node.mjs → status-add-cmd.respec.mjs} +25 -1
  74. package/dist/cli/commands/status-add-cmd.respec.mjs.map +1 -0
  75. package/dist/cli/vcs-cli-main.d.mts.map +1 -1
  76. package/dist/cli/vcs-cli-main.mjs +36 -3
  77. package/dist/cli/vcs-cli-main.mjs.map +1 -1
  78. package/dist/engine/branch/branch-graph-helper.d.mts +12 -3
  79. package/dist/engine/branch/branch-graph-helper.d.mts.map +1 -1
  80. package/dist/engine/branch/branch-graph-helper.mjs +50 -18
  81. package/dist/engine/branch/branch-graph-helper.mjs.map +1 -1
  82. package/dist/engine/branch/branch-space-helper.d.mts +1 -0
  83. package/dist/engine/branch/branch-space-helper.d.mts.map +1 -1
  84. package/dist/engine/branch/branch-space-helper.mjs +1 -0
  85. package/dist/engine/branch/branch-space-helper.mjs.map +1 -1
  86. package/dist/engine/branch/{branch-space.respec.node.d.mts → branch-space.respec.d.mts} +1 -1
  87. package/dist/engine/branch/branch-space.respec.d.mts.map +1 -0
  88. package/dist/engine/branch/{branch-space.respec.node.mjs → branch-space.respec.mjs} +12 -7
  89. package/dist/engine/branch/branch-space.respec.mjs.map +1 -0
  90. package/dist/engine/diff/{line-diff-helper.respec.node.d.mts → line-diff-helper.respec.d.mts} +1 -1
  91. package/dist/engine/diff/line-diff-helper.respec.d.mts.map +1 -0
  92. package/dist/engine/diff/{line-diff-helper.respec.node.mjs → line-diff-helper.respec.mjs} +1 -1
  93. package/dist/engine/diff/line-diff-helper.respec.mjs.map +1 -0
  94. package/dist/engine/filter/{glob-helper.respec.node.d.mts → glob-helper.respec.d.mts} +1 -1
  95. package/dist/engine/filter/glob-helper.respec.d.mts.map +1 -0
  96. package/dist/engine/filter/{glob-helper.respec.node.mjs → glob-helper.respec.mjs} +1 -1
  97. package/dist/engine/filter/glob-helper.respec.mjs.map +1 -0
  98. package/dist/engine/index/index-helper.d.mts +35 -0
  99. package/dist/engine/index/index-helper.d.mts.map +1 -1
  100. package/dist/engine/index/index-helper.mjs +241 -0
  101. package/dist/engine/index/index-helper.mjs.map +1 -1
  102. package/dist/engine/item/item-helper.d.mts +29 -3
  103. package/dist/engine/item/item-helper.d.mts.map +1 -1
  104. package/dist/engine/item/item-helper.mjs +234 -56
  105. package/dist/engine/item/item-helper.mjs.map +1 -1
  106. package/dist/engine/item/item.respec.d.mts +7 -0
  107. package/dist/engine/item/item.respec.d.mts.map +1 -0
  108. package/dist/engine/item/item.respec.mjs +75 -0
  109. package/dist/engine/item/item.respec.mjs.map +1 -0
  110. package/dist/engine/merge/b2tfs-3way-merge-strategy.d.mts +38 -0
  111. package/dist/engine/merge/b2tfs-3way-merge-strategy.d.mts.map +1 -0
  112. package/dist/engine/merge/b2tfs-3way-merge-strategy.mjs +593 -0
  113. package/dist/engine/merge/b2tfs-3way-merge-strategy.mjs.map +1 -0
  114. package/dist/engine/merge/b2tfs-merge-strategy.respec.d.mts +7 -0
  115. package/dist/engine/merge/b2tfs-merge-strategy.respec.d.mts.map +1 -0
  116. package/dist/engine/merge/b2tfs-merge-strategy.respec.mjs +335 -0
  117. package/dist/engine/merge/b2tfs-merge-strategy.respec.mjs.map +1 -0
  118. package/dist/respec-gib.node.mjs +1 -1
  119. package/dist/respec-gib.node.mjs.map +1 -1
  120. package/dist/{vcs-gib.respec.node.d.mts → vcs-gib.respec.d.mts} +1 -1
  121. package/dist/vcs-gib.respec.d.mts.map +1 -0
  122. package/dist/{vcs-gib.respec.node.mjs → vcs-gib.respec.mjs} +1 -1
  123. package/dist/vcs-gib.respec.mjs.map +1 -0
  124. package/package.json +3 -3
  125. package/src/AUTO-GENERATED-version.mts +1 -1
  126. package/src/bootstrap/node-bootstrap.mts +6 -0
  127. package/src/cli/cli-arg-parser.mts +15 -0
  128. package/src/cli/cli-constants.mts +27 -0
  129. package/src/cli/{cli-e2e.respec.node.mts → cli-e2e.respec.mts} +2 -2
  130. package/src/cli/commands/add-cmd.mts +41 -29
  131. package/src/cli/commands/{branch-checkout-cmd.respec.node.mts → branch-checkout-cmd.respec.mts} +190 -8
  132. package/src/cli/commands/branch-cmd.mts +78 -8
  133. package/src/cli/commands/checkout-cmd.mts +48 -23
  134. package/src/cli/commands/commit-cmd.mts +35 -26
  135. package/src/cli/commands/merge-cmd.mts +289 -0
  136. package/src/cli/commands/reset-cmd.mts +128 -0
  137. package/src/cli/commands/reset-restore-cmd.respec.mts +222 -0
  138. package/src/cli/commands/restore-cmd.mts +155 -0
  139. package/src/cli/commands/{status-add-cmd.respec.node.mts → status-add-cmd.respec.mts} +27 -0
  140. package/src/cli/vcs-cli-main.mts +36 -3
  141. package/src/engine/branch/branch-graph-helper.mts +66 -18
  142. package/src/engine/branch/branch-space-helper.mts +6 -0
  143. package/src/engine/branch/{branch-space.respec.node.mts → branch-space.respec.mts} +12 -6
  144. package/src/engine/index/index-helper.mts +324 -0
  145. package/src/engine/item/item-helper.mts +284 -58
  146. package/src/engine/item/item.respec.mts +92 -0
  147. package/src/engine/merge/b2tfs-3way-merge-strategy.mts +725 -0
  148. package/src/engine/merge/b2tfs-merge-strategy.respec.mts +438 -0
  149. package/src/respec-gib.node.mts +2 -2
  150. package/tsconfig.tsbuildinfo +1 -1
  151. package/dist/bootstrap/node-bootstrap.respec.node.d.mts.map +0 -1
  152. package/dist/bootstrap/node-bootstrap.respec.node.mjs.map +0 -1
  153. package/dist/cli/cli-arg-parser.respec.node.d.mts.map +0 -1
  154. package/dist/cli/cli-arg-parser.respec.node.mjs.map +0 -1
  155. package/dist/cli/cli-e2e.respec.node.d.mts.map +0 -1
  156. package/dist/cli/cli-e2e.respec.node.mjs.map +0 -1
  157. package/dist/cli/commands/branch-checkout-cmd.respec.node.d.mts.map +0 -1
  158. package/dist/cli/commands/branch-checkout-cmd.respec.node.mjs.map +0 -1
  159. package/dist/cli/commands/commit-log-cmd.respec.node.d.mts.map +0 -1
  160. package/dist/cli/commands/commit-log-cmd.respec.node.mjs.map +0 -1
  161. package/dist/cli/commands/init-cmd.respec.node.d.mts.map +0 -1
  162. package/dist/cli/commands/init-cmd.respec.node.mjs.map +0 -1
  163. package/dist/cli/commands/status-add-cmd.respec.node.d.mts.map +0 -1
  164. package/dist/cli/commands/status-add-cmd.respec.node.mjs.map +0 -1
  165. package/dist/engine/branch/branch-space.respec.node.d.mts.map +0 -1
  166. package/dist/engine/branch/branch-space.respec.node.mjs.map +0 -1
  167. package/dist/engine/diff/line-diff-helper.respec.node.d.mts.map +0 -1
  168. package/dist/engine/diff/line-diff-helper.respec.node.mjs.map +0 -1
  169. package/dist/engine/filter/glob-helper.respec.node.d.mts.map +0 -1
  170. package/dist/engine/filter/glob-helper.respec.node.mjs.map +0 -1
  171. package/dist/vcs-gib.respec.node.d.mts.map +0 -1
  172. package/dist/vcs-gib.respec.node.mjs.map +0 -1
  173. package/test_runs/001-hello-node/20260728_090100_0001-flow-core-main.md +0 -39
  174. package/test_runs/001-hello-node/20260728_090200_0003-flow-branching-worktree.md +0 -54
  175. package/test_runs/001-hello-node/20260728_090300_0002-flow-selective-add.md +0 -45
  176. package/test_runs/001-hello-node/20260728_142100_0007-flow-edge-cases.md +0 -44
  177. package/test_runs/001-hello-node/20260728_142400_0005-flow-hardcoded-ignores.md +0 -36
  178. package/tools/pack-for-test.mjs +0 -73
  179. /package/src/bootstrap/{node-bootstrap.respec.node.mts → node-bootstrap.respec.mts} +0 -0
  180. /package/src/cli/{cli-arg-parser.respec.node.mts → cli-arg-parser.respec.mts} +0 -0
  181. /package/src/cli/commands/{commit-log-cmd.respec.node.mts → commit-log-cmd.respec.mts} +0 -0
  182. /package/src/cli/commands/{init-cmd.respec.node.mts → init-cmd.respec.mts} +0 -0
  183. /package/src/engine/diff/{line-diff-helper.respec.node.mts → line-diff-helper.respec.mts} +0 -0
  184. /package/src/engine/filter/{glob-helper.respec.node.mts → glob-helper.respec.mts} +0 -0
  185. /package/src/{vcs-gib.respec.node.mts → vcs-gib.respec.mts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index-helper.mjs","sourceRoot":"","sources":["../../../src/engine/index/index-helper.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index-helper.mjs","sourceRoot":"","sources":["../../../src/engine/index/index-helper.mts"],"names":[],"mappings":"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"}
@@ -4,9 +4,35 @@
4
4
  * B2tFS Item Helper functions: graph diff generation, filesystem projection materialization,
5
5
  * and two-pass transform application.
6
6
  */
7
+ import { IbGib_V1 } from '@ibgib/ts-gib/dist/V1/types.mjs';
8
+ import { TransformResult } from '@ibgib/ts-gib/dist/types.mjs';
7
9
  import { MetaspaceService } from '@ibgib/core-gib/dist/witness/space/metaspace/metaspace-types.mjs';
8
10
  import { IbGibSpaceAny } from '@ibgib/core-gib/dist/witness/space/space-base-v1.mjs';
9
- import { B2tFSItemIbGib_V1, B2tFSItemDiffInfo } from './item-types.mjs';
11
+ import { B2tFSItemIbGib_V1, B2tFSItemData_V1, B2tFSItemRel8ns_V1, B2tFSItemDiffInfo } from './item-types.mjs';
12
+ export interface CreateB2tFSItemIbGibOpts {
13
+ fsType: 'file' | 'folder';
14
+ name: string;
15
+ data?: Partial<B2tFSItemData_V1>;
16
+ rel8ns?: Partial<B2tFSItemRel8ns_V1>;
17
+ }
18
+ export interface EvolveB2tFSItemIbGibOpts {
19
+ existingItem: B2tFSItemIbGib_V1;
20
+ dataToUpdate?: Partial<B2tFSItemData_V1>;
21
+ rel8nsToUpdate?: Partial<B2tFSItemRel8ns_V1>;
22
+ rel8nsToRemove?: Partial<B2tFSItemRel8ns_V1>;
23
+ }
24
+ /**
25
+ * Creates a brand-new B2tFSItemIbGib_V1 node using Factory_V1.firstGen with TJP, DNA, and nCounter.
26
+ * Used ONLY for brand-new files or folders.
27
+ */
28
+ export declare function createB2tFSItemIbGib({ fsType, name, data, rel8ns, }: CreateB2tFSItemIbGibOpts): Promise<TransformResult<IbGib_V1>>;
29
+ /**
30
+ * Evolves an existing B2tFSItemIbGib_V1 node using mut8 (for data/hash updates)
31
+ * and rel8 (for binary/child link updates) with DNA, nCounter, and timeline tracking.
32
+ * Populates rel8ns.past and rel8ns.ancestor, preserving the item's TJP to generate
33
+ * composite two-part timeline gib addresses (<tjpGib>^<punctiliarGib>).
34
+ */
35
+ export declare function evolveB2tFSItemIbGib({ existingItem, dataToUpdate, rel8nsToUpdate, rel8nsToRemove, }: EvolveB2tFSItemIbGibOpts): Promise<TransformResult<IbGib_V1>>;
10
36
  /**
11
37
  * Retrieves an ibgib node by address, searching space first, then falling back to metaspace spaces if available.
12
38
  */
@@ -18,7 +44,7 @@ export declare function getIbGibWithMetaspaceFallback({ addr, space, metaspace,
18
44
  /**
19
45
  * Projects a B2tFS item graph back onto the physical filesystem directory.
20
46
  */
21
- export declare function writeB2tFSItemToFS(opts: {
47
+ export declare function writeB2tFSItemToFS({ item, destPath, space, metaspace, }: {
22
48
  item: B2tFSItemIbGib_V1;
23
49
  destPath: string;
24
50
  space: IbGibSpaceAny;
@@ -29,7 +55,7 @@ export declare function writeB2tFSItemToFS(opts: {
29
55
  * 1. Persists all child and parent transform results to space.
30
56
  * 2. Registers new IbGib pointers with metaspace to advance timeline tips.
31
57
  */
32
- export declare function applyB2tFSItemDiff(opts: {
58
+ export declare function applyB2tFSItemDiff({ diff, space, metaspace, }: {
33
59
  diff: B2tFSItemDiffInfo;
34
60
  space: IbGibSpaceAny;
35
61
  metaspace: MetaspaceService;
@@ -1 +1 @@
1
- {"version":3,"file":"item-helper.d.mts","sourceRoot":"","sources":["../../../src/engine/item/item-helper.mts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,gBAAgB,EAAE,MAAM,kEAAkE,CAAC;AACpG,OAAO,EAAE,aAAa,EAAE,MAAM,sDAAsD,CAAC;AAMrF,OAAO,EACH,iBAAiB,EAAkD,iBAAiB,EACvF,MAAM,kBAAkB,CAAC;AAiC1B;;GAEG;AACH,wBAAsB,6BAA6B,CAAC,EAChD,IAAI,EACJ,KAAK,EACL,SAAS,GACZ,EAAE;IACC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAChC,GAAG,OAAO,CAAC,GAAG,CAAC,CA2Ef;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE;IAC3C,IAAI,EAAE,iBAAiB,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,gBAAgB,CAAC;CAC/B,GAAG,OAAO,CAAC,IAAI,CAAC,CA2DhB;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE;IAC3C,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,gBAAgB,CAAC;CAC/B,GAAG,OAAO,CAAC,IAAI,CAAC,CAoBhB"}
1
+ {"version":3,"file":"item-helper.d.mts","sourceRoot":"","sources":["../../../src/engine/item/item-helper.mts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAWH,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kEAAkE,CAAC;AACpG,OAAO,EAAE,aAAa,EAAE,MAAM,sDAAsD,CAAC;AAOrF,OAAO,EACH,iBAAiB,EAAE,gBAAgB,EAAE,kBAAkB,EAAkD,iBAAiB,EAC7H,MAAM,kBAAkB,CAAC;AAK1B,MAAM,WAAW,wBAAwB;IACrC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACjC,MAAM,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,wBAAwB;IACrC,YAAY,EAAE,iBAAiB,CAAC;IAChC,YAAY,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACzC,cAAc,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC7C,cAAc,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;CAChD;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,EACvC,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,MAAM,GACT,EAAE,wBAAwB,GAAG,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CA0D/D;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,EACvC,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,cAAc,GACjB,EAAE,wBAAwB,GAAG,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAwF/D;AA+BD;;GAEG;AACH,wBAAsB,6BAA6B,CAAC,EAChD,IAAI,EACJ,KAAK,EACL,SAAS,GACZ,EAAE;IACC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAChC,GAAG,OAAO,CAAC,GAAG,CAAC,CA2Ef;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,EACrC,IAAI,EACJ,QAAQ,EACR,KAAK,EACL,SAAS,GACZ,EAAE;IACC,IAAI,EAAE,iBAAiB,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,gBAAgB,CAAC;CAC/B,GAAG,OAAO,CAAC,IAAI,CAAC,CAuEhB;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,EACrC,IAAI,EACJ,KAAK,EACL,SAAS,GACZ,EAAE;IACC,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,gBAAgB,CAAC;CAC/B,GAAG,OAAO,CAAC,IAAI,CAAC,CA+BhB"}
@@ -6,12 +6,163 @@
6
6
  */
7
7
  import fs from 'node:fs/promises';
8
8
  import path from 'node:path';
9
+ import crypto from 'node:crypto';
10
+ import { extractErrorMsg, getUUID } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
11
+ import { Factory_V1 } from '@ibgib/ts-gib/dist/V1/factory.mjs';
12
+ import { mut8 } from '@ibgib/ts-gib/dist/V1/transforms/mut8.mjs';
13
+ import { rel8 } from '@ibgib/ts-gib/dist/V1/transforms/rel8.mjs';
9
14
  import { persistTransformResult, getFromSpace } from '@ibgib/core-gib/dist/witness/space/space-helper.mjs';
10
15
  import { parseSpaceQualifiedIbGibAddr } from '../index/index-helper.mjs';
16
+ import { B2TFS_ITEM_ATOM, getB2tFSItemIb } from './item-atom-helper.mjs';
11
17
  import { GLOBAL_LOG_A_LOT } from '../../vcs-gib-constants.mjs';
12
18
  import { B2TFS_CHILD_ITEM_REL8N_NAME, BINARY_REL8N_NAME } from './item-types.mjs';
13
19
  const lcFile = `[item-helper]`;
14
20
  const logalot = GLOBAL_LOG_A_LOT;
21
+ /**
22
+ * Creates a brand-new B2tFSItemIbGib_V1 node using Factory_V1.firstGen with TJP, DNA, and nCounter.
23
+ * Used ONLY for brand-new files or folders.
24
+ */
25
+ export async function createB2tFSItemIbGib({ fsType, name, data, rel8ns, }) {
26
+ const lc = `${lcFile}[${createB2tFSItemIbGib.name}]`;
27
+ try {
28
+ if (logalot) {
29
+ console.log(`${lc} starting... (I: 8a7b6c5d4e3f2a1b0c9d8e7f6a5b4c3d)`);
30
+ }
31
+ if (!fsType || !name) {
32
+ throw new Error(`fsType and name are required (E: 9b8c7d6e5f4a3b2c1d0e9f8a7b6c5d4e)`);
33
+ }
34
+ const nameHash = data?.nameHash || crypto.createHash('sha256').update(name).digest('hex');
35
+ const uuid = data?.uuid || (await getUUID());
36
+ const diffTransactionId = data?.diffTransactionId || (await getUUID());
37
+ let fileNameSansExt;
38
+ let fileExt;
39
+ if (fsType === 'file') {
40
+ fileNameSansExt = path.parse(name).name;
41
+ fileExt = path.parse(name).ext.replace(/^\./, '');
42
+ }
43
+ const itemData = {
44
+ name,
45
+ nameHash,
46
+ fsType,
47
+ diffTransactionId,
48
+ uuid,
49
+ classname: 'B2tFSItemIbGib_V1',
50
+ ...(fsType === 'file' ? { fileNameSansExt, fileExt } : {}),
51
+ ...data,
52
+ };
53
+ const ib = getB2tFSItemIb(fsType, name, nameHash);
54
+ const res = await Factory_V1.firstGen({
55
+ parentIbGib: Factory_V1.primitive({ ib: B2TFS_ITEM_ATOM }),
56
+ ib,
57
+ data: itemData,
58
+ rel8ns: rel8ns,
59
+ tjp: { timestamp: true, uuid: true },
60
+ dna: true,
61
+ nCounter: true,
62
+ });
63
+ if (logalot) {
64
+ console.log(`${lc} Created new B2tFSItemIbGib: ${res.newIbGib.ib}^${res.newIbGib.gib} (I: 0c1d2e3f4a5b6c7d8e9f0a1b2c3d4e5f)`);
65
+ }
66
+ return res;
67
+ }
68
+ catch (error) {
69
+ console.error(`${lc} ${extractErrorMsg(error)} (E: 1d2e3f4a5b6c7d8e9f0a1b2c3d4e5f6a)`);
70
+ throw error;
71
+ }
72
+ finally {
73
+ if (logalot) {
74
+ console.log(`${lc} complete. (I: 2e3f4a5b6c7d8e9f0a1b2c3d4e5f6a7b)`);
75
+ }
76
+ }
77
+ }
78
+ /**
79
+ * Evolves an existing B2tFSItemIbGib_V1 node using mut8 (for data/hash updates)
80
+ * and rel8 (for binary/child link updates) with DNA, nCounter, and timeline tracking.
81
+ * Populates rel8ns.past and rel8ns.ancestor, preserving the item's TJP to generate
82
+ * composite two-part timeline gib addresses (<tjpGib>^<punctiliarGib>).
83
+ */
84
+ export async function evolveB2tFSItemIbGib({ existingItem, dataToUpdate, rel8nsToUpdate, rel8nsToRemove, }) {
85
+ const lc = `${lcFile}[${evolveB2tFSItemIbGib.name}]`;
86
+ try {
87
+ if (logalot) {
88
+ console.log(`${lc} starting... (I: 3f4a5b6c7d8e9f0a1b2c3d4e5f6a7b8c)`);
89
+ }
90
+ if (!existingItem || !existingItem.ib || !existingItem.gib) {
91
+ throw new Error(`existingItem with valid ib and gib is required (E: 4a5b6c7d8e9f0a1b2c3d4e5f6a7b8c9d)`);
92
+ }
93
+ let currentItem = existingItem;
94
+ const dnas = [];
95
+ const intermediateIbGibs = [];
96
+ // Ensure rel8ns.ancestor is populated if missing
97
+ if (!currentItem.rel8ns?.ancestor || currentItem.rel8ns.ancestor.length === 0) {
98
+ currentItem = {
99
+ ...currentItem,
100
+ rel8ns: {
101
+ ...(currentItem.rel8ns || {}),
102
+ ancestor: [`${B2TFS_ITEM_ATOM}^gib`],
103
+ },
104
+ };
105
+ }
106
+ const hasDataChanges = dataToUpdate && Object.keys(dataToUpdate).length > 0;
107
+ const hasRel8nsChanges = (rel8nsToUpdate && Object.keys(rel8nsToUpdate).length > 0) ||
108
+ (rel8nsToRemove && Object.keys(rel8nsToRemove).length > 0);
109
+ // If neither data nor rel8ns explicitly specified, update diffTransactionId to evolve timeline
110
+ const patchData = {
111
+ ...(dataToUpdate || {}),
112
+ diffTransactionId: dataToUpdate?.diffTransactionId || (await getUUID()),
113
+ };
114
+ // Pass 1: mut8 for data/hash updates
115
+ const resMut8 = await mut8({
116
+ src: currentItem,
117
+ dataToAddOrPatch: patchData,
118
+ dna: true,
119
+ nCounter: true,
120
+ });
121
+ currentItem = resMut8.newIbGib;
122
+ if (resMut8.dnas) {
123
+ dnas.push(...resMut8.dnas);
124
+ }
125
+ // Pass 2: rel8 for binary/child link updates if rel8ns specified
126
+ if (hasRel8nsChanges) {
127
+ intermediateIbGibs.push(currentItem);
128
+ const resRel8 = await rel8({
129
+ src: currentItem,
130
+ rel8nsToAddByAddr: rel8nsToUpdate,
131
+ rel8nsToRemoveByAddr: rel8nsToRemove,
132
+ dna: true,
133
+ nCounter: true,
134
+ });
135
+ currentItem = resRel8.newIbGib;
136
+ if (resRel8.dnas) {
137
+ dnas.push(...resRel8.dnas);
138
+ }
139
+ }
140
+ // Verify rel8ns.ancestor exists on evolved item
141
+ if (!currentItem.rel8ns?.ancestor || currentItem.rel8ns.ancestor.length === 0) {
142
+ currentItem.rel8ns = {
143
+ ...(currentItem.rel8ns || {}),
144
+ ancestor: [`${B2TFS_ITEM_ATOM}^gib`],
145
+ };
146
+ }
147
+ if (logalot) {
148
+ console.log(`${lc} Evolved B2tFSItemIbGib: ${currentItem.ib}^${currentItem.gib} (I: 5b6c7d8e9f0a1b2c3d4e5f6a7b8c9d0e)`);
149
+ }
150
+ return {
151
+ newIbGib: currentItem,
152
+ intermediateIbGibs: intermediateIbGibs.length > 0 ? intermediateIbGibs : undefined,
153
+ dnas: dnas.length > 0 ? dnas : undefined,
154
+ };
155
+ }
156
+ catch (error) {
157
+ console.error(`${lc} ${extractErrorMsg(error)} (E: 6c7d8e9f0a1b2c3d4e5f6a7b8c9d0e1f)`);
158
+ throw error;
159
+ }
160
+ finally {
161
+ if (logalot) {
162
+ console.log(`${lc} complete. (I: 7d8e9f0a1b2c3d4e5f6a7b8c9d0e1f2a)`);
163
+ }
164
+ }
165
+ }
15
166
  function getSpacesArray(metaAny) {
16
167
  if (!metaAny || !metaAny.spaces) {
17
168
  return [];
@@ -112,82 +263,109 @@ export async function getIbGibWithMetaspaceFallback({ addr, space, metaspace, })
112
263
  /**
113
264
  * Projects a B2tFS item graph back onto the physical filesystem directory.
114
265
  */
115
- export async function writeB2tFSItemToFS(opts) {
266
+ export async function writeB2tFSItemToFS({ item, destPath, space, metaspace, }) {
116
267
  const lc = `${lcFile}[${writeB2tFSItemToFS.name}]`;
117
- const { item, destPath, space, metaspace } = opts;
118
- if (!item || !item.data) {
119
- throw new Error(`Invalid B2tFS item provided (E: 32a09c81b29e4d58)`);
120
- }
121
- const { fsType, name } = item.data;
122
- const targetPath = path.join(destPath, name);
123
- if (fsType === 'folder') {
124
- await fs.mkdir(targetPath, { recursive: true });
125
- const childAddrs = item.rel8ns?.[B2TFS_CHILD_ITEM_REL8N_NAME] || [];
126
- for (const childAddr of childAddrs) {
127
- const childItem = await getIbGibWithMetaspaceFallback({
128
- addr: childAddr,
129
- space,
130
- metaspace,
131
- });
132
- if (childItem) {
133
- await writeB2tFSItemToFS({
134
- item: childItem,
135
- destPath: targetPath,
268
+ try {
269
+ if (logalot) {
270
+ console.log(`${lc} starting... (I: 7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d)`);
271
+ }
272
+ if (!item || !item.data) {
273
+ throw new Error(`Invalid B2tFS item provided (E: 32a09c81b29e4d5867198204b12541a5)`);
274
+ }
275
+ const { fsType, name } = item.data;
276
+ const targetPath = path.join(destPath, name);
277
+ if (fsType === 'folder') {
278
+ await fs.mkdir(targetPath, { recursive: true });
279
+ const childAddrs = item.rel8ns?.[B2TFS_CHILD_ITEM_REL8N_NAME] || [];
280
+ for (const childAddr of childAddrs) {
281
+ const childItem = await getIbGibWithMetaspaceFallback({
282
+ addr: childAddr,
136
283
  space,
137
284
  metaspace,
138
285
  });
286
+ if (childItem) {
287
+ await writeB2tFSItemToFS({
288
+ item: childItem,
289
+ destPath: targetPath,
290
+ space,
291
+ metaspace,
292
+ });
293
+ }
139
294
  }
140
295
  }
141
- }
142
- else if (fsType === 'file') {
143
- const binAddrs = item.rel8ns?.[BINARY_REL8N_NAME] || [];
144
- const latestBinAddr = binAddrs.at(-1);
145
- if (latestBinAddr) {
146
- const binIbGib = await getIbGibWithMetaspaceFallback({
147
- addr: latestBinAddr,
148
- space,
149
- metaspace,
150
- });
151
- if (binIbGib && binIbGib.data) {
152
- let fileData;
153
- if (typeof binIbGib.data === 'string') {
154
- fileData = Buffer.from(binIbGib.data, 'base64');
155
- }
156
- else if (binIbGib.data instanceof Uint8Array || Buffer.isBuffer(binIbGib.data)) {
157
- fileData = binIbGib.data;
158
- }
159
- else if (typeof binIbGib.data === 'object') {
160
- const vals = Object.values(binIbGib.data);
161
- fileData = new Uint8Array(vals);
162
- }
163
- else {
164
- fileData = new Uint8Array(0);
296
+ else if (fsType === 'file') {
297
+ await fs.mkdir(path.dirname(targetPath), { recursive: true });
298
+ const binAddrs = item.rel8ns?.[BINARY_REL8N_NAME] || [];
299
+ const latestBinAddr = binAddrs.at(-1);
300
+ if (latestBinAddr) {
301
+ const binIbGib = await getIbGibWithMetaspaceFallback({
302
+ addr: latestBinAddr,
303
+ space,
304
+ metaspace,
305
+ });
306
+ if (binIbGib && binIbGib.data) {
307
+ let fileData;
308
+ if (typeof binIbGib.data === 'string') {
309
+ fileData = Buffer.from(binIbGib.data, 'base64');
310
+ }
311
+ else if (binIbGib.data instanceof Uint8Array || Buffer.isBuffer(binIbGib.data)) {
312
+ fileData = binIbGib.data;
313
+ }
314
+ else if (typeof binIbGib.data === 'object') {
315
+ const vals = Object.values(binIbGib.data);
316
+ fileData = new Uint8Array(vals);
317
+ }
318
+ else {
319
+ fileData = new Uint8Array(0);
320
+ }
321
+ await fs.writeFile(targetPath, fileData);
165
322
  }
166
- await fs.writeFile(targetPath, fileData);
167
323
  }
168
324
  }
169
325
  }
326
+ catch (error) {
327
+ console.error(`${lc} ${extractErrorMsg(error)} (E: 8a9b0c1d2e3f4a5b6c7d8e9f0a1b2c3d)`);
328
+ throw error;
329
+ }
330
+ finally {
331
+ if (logalot) {
332
+ console.log(`${lc} complete. (I: 9b0c1d2e3f4a5b6c7d8e9f0a1b2c3d4e)`);
333
+ }
334
+ }
170
335
  }
171
336
  /**
172
337
  * Executes two-pass application of diff transform results:
173
338
  * 1. Persists all child and parent transform results to space.
174
339
  * 2. Registers new IbGib pointers with metaspace to advance timeline tips.
175
340
  */
176
- export async function applyB2tFSItemDiff(opts) {
341
+ export async function applyB2tFSItemDiff({ diff, space, metaspace, }) {
177
342
  const lc = `${lcFile}[${applyB2tFSItemDiff.name}]`;
178
- const { diff, space, metaspace } = opts;
179
- if (diff.childDiffs && diff.childDiffs.length > 0) {
180
- for (const childDiff of diff.childDiffs) {
181
- await applyB2tFSItemDiff({ diff: childDiff, space, metaspace });
343
+ try {
344
+ if (logalot) {
345
+ console.log(`${lc} starting... (I: 0a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d)`);
346
+ }
347
+ if (diff.childDiffs && diff.childDiffs.length > 0) {
348
+ for (const childDiff of diff.childDiffs) {
349
+ await applyB2tFSItemDiff({ diff: childDiff, space, metaspace });
350
+ }
351
+ }
352
+ const results = diff.transformResults || [];
353
+ for (const tr of results) {
354
+ await persistTransformResult({ resTransform: tr, space });
355
+ }
356
+ for (const tr of results) {
357
+ if (tr.newIbGib) {
358
+ await metaspace.registerNewIbGib({ ibGib: tr.newIbGib });
359
+ }
182
360
  }
183
361
  }
184
- const results = diff.transformResults || [];
185
- for (const tr of results) {
186
- await persistTransformResult({ resTransform: tr, space });
362
+ catch (error) {
363
+ console.error(`${lc} ${extractErrorMsg(error)} (E: 1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e)`);
364
+ throw error;
187
365
  }
188
- for (const tr of results) {
189
- if (tr.newIbGib) {
190
- await metaspace.registerNewIbGib({ ibGib: tr.newIbGib });
366
+ finally {
367
+ if (logalot) {
368
+ console.log(`${lc} complete. (I: 2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f)`);
191
369
  }
192
370
  }
193
371
  }
@@ -1 +1 @@
1
- {"version":3,"file":"item-helper.mjs","sourceRoot":"","sources":["../../../src/engine/item/item-helper.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"item-helper.mjs","sourceRoot":"","sources":["../../../src/engine/item/item-helper.mts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @module item.respec.node
3
+ *
4
+ * Unit tests for createB2tFSItemIbGib and evolveB2tFSItemIbGib timeline transforms.
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=item.respec.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item.respec.d.mts","sourceRoot":"","sources":["../../../src/engine/item/item.respec.mts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,75 @@
1
+ /**
2
+ * @module item.respec.node
3
+ *
4
+ * Unit tests for createB2tFSItemIbGib and evolveB2tFSItemIbGib timeline transforms.
5
+ */
6
+ import { respecfully, ifWe, iReckon } from '@ibgib/helper-gib/dist/respec-gib/respec-gib.mjs';
7
+ import { getIbGibAddr } from '@ibgib/ts-gib/dist/helper.mjs';
8
+ import { getGibInfo } from '@ibgib/ts-gib/dist/V1/transforms/transform-helper.mjs';
9
+ import { createB2tFSItemIbGib, evolveB2tFSItemIbGib } from './item-helper.mjs';
10
+ const lc = `[apps/vcs-gib/src/engine/item/item.respec.node.mts]`;
11
+ await respecfully(lc, `B2tFS Item Timeline Transforms`, async () => {
12
+ await respecfully(lc, `createB2tFSItemIbGib`, async () => {
13
+ await ifWe(lc, `creates brand-new file item with TJP and DNA`, async () => {
14
+ const res = await createB2tFSItemIbGib({
15
+ fsType: 'file',
16
+ name: 'test.txt',
17
+ data: {
18
+ fileHash: 'hash_abc_123',
19
+ },
20
+ });
21
+ const item = res.newIbGib;
22
+ iReckon(lc, item).isGonnaBeTruthy();
23
+ iReckon(lc, item.data?.name).willEqual('test.txt');
24
+ iReckon(lc, item.data?.fileHash).willEqual('hash_abc_123');
25
+ iReckon(lc, item.rel8ns?.ancestor).isGonnaBeTruthy();
26
+ iReckon(lc, item.rel8ns?.tjp).isGonnaBeTruthy();
27
+ const gibInfo = getGibInfo({ gib: item.gib });
28
+ iReckon(lc, gibInfo.tjpGib).isGonnaBeTruthy();
29
+ iReckon(lc, gibInfo.punctiliarHash).isGonnaBeTruthy();
30
+ });
31
+ await ifWe(lc, `creates brand-new folder item`, async () => {
32
+ const res = await createB2tFSItemIbGib({
33
+ fsType: 'folder',
34
+ name: 'src',
35
+ });
36
+ const item = res.newIbGib;
37
+ iReckon(lc, item).isGonnaBeTruthy();
38
+ iReckon(lc, item.data?.fsType).willEqual('folder');
39
+ iReckon(lc, item.data?.name).willEqual('src');
40
+ });
41
+ });
42
+ await respecfully(lc, `evolveB2tFSItemIbGib`, async () => {
43
+ await ifWe(lc, `evolves existing item via mut8/rel8, generating two-part timeline gib and rel8ns.past`, async () => {
44
+ const createRes = await createB2tFSItemIbGib({
45
+ fsType: 'file',
46
+ name: 'config.json',
47
+ data: {
48
+ fileHash: 'hash_v1',
49
+ },
50
+ });
51
+ const initialItem = createRes.newIbGib;
52
+ const initialAddr = getIbGibAddr({ ibGib: initialItem });
53
+ const initialGibInfo = getGibInfo({ gib: initialItem.gib });
54
+ // Evolve item with updated fileHash
55
+ const evolveRes = await evolveB2tFSItemIbGib({
56
+ existingItem: initialItem,
57
+ dataToUpdate: {
58
+ fileHash: 'hash_v2',
59
+ },
60
+ });
61
+ const evolvedItem = evolveRes.newIbGib;
62
+ const evolvedAddr = getIbGibAddr({ ibGib: evolvedItem });
63
+ const evolvedGibInfo = getGibInfo({ gib: evolvedItem.gib });
64
+ iReckon(lc, evolvedItem.data?.fileHash).willEqual('hash_v2');
65
+ iReckon(lc, evolvedItem.rel8ns?.past).includes(initialAddr);
66
+ iReckon(lc, evolvedItem.rel8ns?.ancestor).isGonnaBeTruthy();
67
+ iReckon(lc, evolvedItem.rel8ns?.tjp).willEqual(initialItem.rel8ns?.tjp);
68
+ // Verify two-part composite timeline gib address
69
+ iReckon(lc, evolvedGibInfo.tjpGib).willEqual(initialGibInfo.tjpGib);
70
+ iReckon(lc, evolvedGibInfo.punctiliarHash).isGonnaBeTruthy();
71
+ iReckon(lc, evolvedGibInfo.punctiliarHash !== initialGibInfo.punctiliarHash).isGonnaBeTrue();
72
+ });
73
+ });
74
+ });
75
+ //# sourceMappingURL=item.respec.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item.respec.mjs","sourceRoot":"","sources":["../../../src/engine/item/item.respec.mts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * @module b2tfs-3way-merge-strategy
3
+ *
4
+ * Extensible Graft Merge Strategy for 3-way B2tFS filesystem snapshot trees and text files.
5
+ */
6
+ import { GraftMergeStrategyBase_V1 } from '@ibgib/core-gib/dist/sync/graft-info/graft-merge-strategy-base-v1.mjs';
7
+ import { GraftContext, GraftStrategy, GraftTimelinesResult } from '@ibgib/core-gib/dist/sync/graft-info/graft-info-types.mjs';
8
+ /**
9
+ * 3-way text line diff merge result.
10
+ */
11
+ export interface Text3WayMergeResult {
12
+ mergedText: string;
13
+ hasConflict: boolean;
14
+ }
15
+ /**
16
+ * Performs 3-way line diff merging across LCA, Base, and Orphan text lines.
17
+ * Inserts Git conflict markers (`<<<<<<< HEAD`, `=======`, `>>>>>>>`) when overlapping
18
+ * line changes conflict.
19
+ */
20
+ export declare function perform3WayTextLineMerge({ textLCA, textBase, textOrphan, }: {
21
+ textLCA: string;
22
+ textBase: string;
23
+ textOrphan: string;
24
+ }): Text3WayMergeResult;
25
+ export declare class B2tFS3WayGraftStrategy extends GraftMergeStrategyBase_V1 implements GraftStrategy {
26
+ readonly strategyId: string;
27
+ private lc;
28
+ private isB2tFSNode;
29
+ canGraft(context: GraftContext): Promise<boolean>;
30
+ graft(context: GraftContext): Promise<GraftTimelinesResult>;
31
+ private fetchIbGib;
32
+ private resolveRootItemNode;
33
+ private getFilePayloadBuffer;
34
+ private getChildItemsMap;
35
+ private mergeTreeNodes;
36
+ }
37
+ export declare const B2tFSItem3WayMergeStrategy: typeof B2tFS3WayGraftStrategy;
38
+ //# sourceMappingURL=b2tfs-3way-merge-strategy.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"b2tfs-3way-merge-strategy.d.mts","sourceRoot":"","sources":["../../../src/engine/merge/b2tfs-3way-merge-strategy.mts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,OAAO,EAAE,yBAAyB,EAAE,MAAM,uEAAuE,CAAC;AAClH,OAAO,EAAE,YAAY,EAAmB,aAAa,EAAE,oBAAoB,EAAuC,MAAM,2DAA2D,CAAC;AAsBpL;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACxB;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,EACrC,OAAO,EACP,QAAQ,EACR,UAAU,GACb,EAAE;IACC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACtB,GAAG,mBAAmB,CA+FtB;AAED,qBAAa,sBAAuB,SAAQ,yBAA0B,YAAW,aAAa;IAC1F,QAAQ,CAAC,UAAU,EAAE,MAAM,CAA4B;IACvD,OAAO,CAAC,EAAE,CAA8B;IAExC,OAAO,CAAC,WAAW;IAQb,QAAQ,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAsBtD;IAEK,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA+MhE;YAEa,UAAU;YA+BV,mBAAmB;YAkCnB,oBAAoB;YA0CpB,gBAAgB;YAqBhB,cAAc;CAiM/B;AAED,eAAO,MAAM,0BAA0B,+BAAyB,CAAC"}