@ibgib/vcs-gib 0.0.29 → 0.0.32

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 (151) hide show
  1. package/dist/AUTO-GENERATED-version.d.mts +1 -1
  2. package/dist/AUTO-GENERATED-version.mjs +1 -1
  3. package/dist/bootstrap/node-bootstrap.mjs +1 -1
  4. package/dist/bootstrap/node-bootstrap.mjs.map +1 -1
  5. package/dist/cli/commands/add-cmd.d.mts +2 -3
  6. package/dist/cli/commands/add-cmd.d.mts.map +1 -1
  7. package/dist/cli/commands/add-cmd.mjs +30 -283
  8. package/dist/cli/commands/add-cmd.mjs.map +1 -1
  9. package/dist/cli/commands/branch-cmd.d.mts +8 -8
  10. package/dist/cli/commands/branch-cmd.d.mts.map +1 -1
  11. package/dist/cli/commands/branch-cmd.mjs +45 -176
  12. package/dist/cli/commands/branch-cmd.mjs.map +1 -1
  13. package/dist/cli/commands/checkout-cmd.d.mts +2 -4
  14. package/dist/cli/commands/checkout-cmd.d.mts.map +1 -1
  15. package/dist/cli/commands/checkout-cmd.mjs +31 -110
  16. package/dist/cli/commands/checkout-cmd.mjs.map +1 -1
  17. package/dist/cli/commands/commit-cmd.d.mts +7 -8
  18. package/dist/cli/commands/commit-cmd.d.mts.map +1 -1
  19. package/dist/cli/commands/commit-cmd.mjs +40 -390
  20. package/dist/cli/commands/commit-cmd.mjs.map +1 -1
  21. package/dist/cli/commands/generate-comment-cmd.d.mts.map +1 -1
  22. package/dist/cli/commands/generate-comment-cmd.mjs +5 -2
  23. package/dist/cli/commands/generate-comment-cmd.mjs.map +1 -1
  24. package/dist/cli/commands/init-cmd.d.mts +2 -2
  25. package/dist/cli/commands/init-cmd.d.mts.map +1 -1
  26. package/dist/cli/commands/init-cmd.mjs +20 -70
  27. package/dist/cli/commands/init-cmd.mjs.map +1 -1
  28. package/dist/cli/commands/log-cmd.d.mts +2 -3
  29. package/dist/cli/commands/log-cmd.d.mts.map +1 -1
  30. package/dist/cli/commands/log-cmd.mjs +42 -271
  31. package/dist/cli/commands/log-cmd.mjs.map +1 -1
  32. package/dist/cli/commands/merge-cmd.d.mts +3 -17
  33. package/dist/cli/commands/merge-cmd.d.mts.map +1 -1
  34. package/dist/cli/commands/merge-cmd.mjs +32 -218
  35. package/dist/cli/commands/merge-cmd.mjs.map +1 -1
  36. package/dist/cli/commands/reset-cmd.d.mts +1 -1
  37. package/dist/cli/commands/reset-cmd.d.mts.map +1 -1
  38. package/dist/cli/commands/reset-cmd.mjs +17 -19
  39. package/dist/cli/commands/reset-cmd.mjs.map +1 -1
  40. package/dist/cli/commands/restore-cmd.d.mts +8 -7
  41. package/dist/cli/commands/restore-cmd.d.mts.map +1 -1
  42. package/dist/cli/commands/restore-cmd.mjs +44 -62
  43. package/dist/cli/commands/restore-cmd.mjs.map +1 -1
  44. package/dist/cli/commands/status-cmd.d.mts +2 -2
  45. package/dist/cli/commands/status-cmd.d.mts.map +1 -1
  46. package/dist/cli/commands/status-cmd.mjs +63 -62
  47. package/dist/cli/commands/status-cmd.mjs.map +1 -1
  48. package/dist/cli/vcs-projection-helper.d.mts +23 -0
  49. package/dist/cli/vcs-projection-helper.d.mts.map +1 -0
  50. package/dist/cli/vcs-projection-helper.mjs +91 -0
  51. package/dist/cli/vcs-projection-helper.mjs.map +1 -0
  52. package/dist/test/test-helpers.d.mts +2 -2
  53. package/dist/test/test-helpers.d.mts.map +1 -1
  54. package/package.json +3 -3
  55. package/src/AUTO-GENERATED-version.mts +1 -1
  56. package/src/bootstrap/node-bootstrap.mts +1 -1
  57. package/src/cli/cli-e2e.respec.mts +4 -4
  58. package/src/cli/commands/add-cmd.mts +32 -347
  59. package/src/cli/commands/branch-cmd.mts +56 -225
  60. package/src/cli/commands/checkout-cmd.mts +34 -138
  61. package/src/cli/commands/commit-cmd.mts +46 -473
  62. package/src/cli/commands/commit-log-cmd.respec.mts +11 -7
  63. package/src/cli/commands/generate-comment-cmd.mts +6 -2
  64. package/src/cli/commands/init-cmd.mts +20 -73
  65. package/src/cli/commands/log-cmd.mts +41 -331
  66. package/src/cli/commands/merge-cmd.mts +32 -252
  67. package/src/cli/commands/reset-cmd.mts +17 -19
  68. package/src/cli/commands/restore-cmd.mts +52 -72
  69. package/src/cli/commands/status-add-cmd.respec.mts +3 -3
  70. package/src/cli/commands/status-cmd.mts +68 -63
  71. package/src/cli/vcs-projection-helper.mts +112 -0
  72. package/src/engine/branch/branch-space.respec.mts +5 -5
  73. package/src/engine/merge/b2tfs-sync-comments.respec.mts +4 -4
  74. package/src/test/test-helpers.mts +2 -2
  75. package/src/vcs-gib.respec.mts +11 -8
  76. package/tsconfig.test.tsbuildinfo +1 -1
  77. package/tsconfig.tsbuildinfo +1 -1
  78. package/dist/engine/branch/branch-graph-helper.d.mts +0 -28
  79. package/dist/engine/branch/branch-graph-helper.d.mts.map +0 -1
  80. package/dist/engine/branch/branch-graph-helper.mjs +0 -81
  81. package/dist/engine/branch/branch-graph-helper.mjs.map +0 -1
  82. package/dist/engine/branch/branch-helper.d.mts +0 -40
  83. package/dist/engine/branch/branch-helper.d.mts.map +0 -1
  84. package/dist/engine/branch/branch-helper.mjs +0 -78
  85. package/dist/engine/branch/branch-helper.mjs.map +0 -1
  86. package/dist/engine/branch/branch-space-helper.d.mts +0 -23
  87. package/dist/engine/branch/branch-space-helper.d.mts.map +0 -1
  88. package/dist/engine/branch/branch-space-helper.mjs +0 -78
  89. package/dist/engine/branch/branch-space-helper.mjs.map +0 -1
  90. package/dist/engine/branch/branch-types.d.mts +0 -26
  91. package/dist/engine/branch/branch-types.d.mts.map +0 -1
  92. package/dist/engine/branch/branch-types.mjs +0 -7
  93. package/dist/engine/branch/branch-types.mjs.map +0 -1
  94. package/dist/engine/diff/line-diff-helper.d.mts +0 -76
  95. package/dist/engine/diff/line-diff-helper.d.mts.map +0 -1
  96. package/dist/engine/diff/line-diff-helper.mjs +0 -144
  97. package/dist/engine/diff/line-diff-helper.mjs.map +0 -1
  98. package/dist/engine/filter/glob-helper.d.mts +0 -51
  99. package/dist/engine/filter/glob-helper.d.mts.map +0 -1
  100. package/dist/engine/filter/glob-helper.mjs +0 -132
  101. package/dist/engine/filter/glob-helper.mjs.map +0 -1
  102. package/dist/engine/index/index-helper.d.mts +0 -113
  103. package/dist/engine/index/index-helper.d.mts.map +0 -1
  104. package/dist/engine/index/index-helper.mjs +0 -533
  105. package/dist/engine/index/index-helper.mjs.map +0 -1
  106. package/dist/engine/index/index-types.d.mts +0 -63
  107. package/dist/engine/index/index-types.d.mts.map +0 -1
  108. package/dist/engine/index/index-types.mjs +0 -7
  109. package/dist/engine/index/index-types.mjs.map +0 -1
  110. package/dist/engine/item/item-atom-helper.d.mts +0 -20
  111. package/dist/engine/item/item-atom-helper.d.mts.map +0 -1
  112. package/dist/engine/item/item-atom-helper.mjs +0 -30
  113. package/dist/engine/item/item-atom-helper.mjs.map +0 -1
  114. package/dist/engine/item/item-helper.d.mts +0 -94
  115. package/dist/engine/item/item-helper.d.mts.map +0 -1
  116. package/dist/engine/item/item-helper.mjs +0 -424
  117. package/dist/engine/item/item-helper.mjs.map +0 -1
  118. package/dist/engine/item/item-types.d.mts +0 -128
  119. package/dist/engine/item/item-types.d.mts.map +0 -1
  120. package/dist/engine/item/item-types.mjs +0 -16
  121. package/dist/engine/item/item-types.mjs.map +0 -1
  122. package/dist/engine/merge/b2tfs-3way-graft-strategy.d.mts +0 -74
  123. package/dist/engine/merge/b2tfs-3way-graft-strategy.d.mts.map +0 -1
  124. package/dist/engine/merge/b2tfs-3way-graft-strategy.mjs +0 -570
  125. package/dist/engine/merge/b2tfs-3way-graft-strategy.mjs.map +0 -1
  126. package/dist/engine/merge/b2tfs-3way-graft-types.d.mts +0 -34
  127. package/dist/engine/merge/b2tfs-3way-graft-types.d.mts.map +0 -1
  128. package/dist/engine/merge/b2tfs-3way-graft-types.mjs +0 -2
  129. package/dist/engine/merge/b2tfs-3way-graft-types.mjs.map +0 -1
  130. package/dist/engine/status/status-helper.d.mts +0 -90
  131. package/dist/engine/status/status-helper.d.mts.map +0 -1
  132. package/dist/engine/status/status-helper.mjs +0 -286
  133. package/dist/engine/status/status-helper.mjs.map +0 -1
  134. package/src/engine/branch/branch-graph-helper.mts +0 -117
  135. package/src/engine/branch/branch-helper.mts +0 -112
  136. package/src/engine/branch/branch-space-helper.mts +0 -110
  137. package/src/engine/branch/branch-types.mts +0 -29
  138. package/src/engine/diff/line-diff-helper.mts +0 -210
  139. package/src/engine/diff/line-diff-helper.respec.mts +0 -84
  140. package/src/engine/filter/glob-helper.mts +0 -165
  141. package/src/engine/filter/glob-helper.respec.mts +0 -94
  142. package/src/engine/index/index-helper.mts +0 -705
  143. package/src/engine/index/index-types.mts +0 -66
  144. package/src/engine/item/item-atom-helper.mts +0 -30
  145. package/src/engine/item/item-helper.mts +0 -544
  146. package/src/engine/item/item-types.mts +0 -137
  147. package/src/engine/item/item.respec.mts +0 -92
  148. package/src/engine/merge/b2tfs-3way-graft-strategy.mts +0 -630
  149. package/src/engine/merge/b2tfs-3way-graft-strategy.respec.mts +0 -346
  150. package/src/engine/merge/b2tfs-3way-graft-types.mts +0 -34
  151. package/src/engine/status/status-helper.mts +0 -383
@@ -1,81 +0,0 @@
1
- /**
2
- * @module branch-graph-helper
3
- *
4
- * Helper for populating branch spaces via SyncSagaCoordinator.
5
- */
6
- import { clone, extractErrorMsg } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
7
- import { SyncSagaCoordinator } from '@ibgib/core-gib/dist/sync/sync-saga-coordinator.mjs';
8
- import { SyncPeerInnerspace_V1 } from '@ibgib/core-gib/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mjs';
9
- import { SYNC_PEER_INNERSPACE_DEFAULT_DATA_V1 } from '@ibgib/core-gib/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-constants.mjs';
10
- import { GLOBAL_LOG_A_LOT } from '../../vcs-gib-constants.mjs';
11
- import { createB2tFSBranchIbGib } from './branch-helper.mjs';
12
- const lcFile = `[branch-graph-helper]`;
13
- const logalot = GLOBAL_LOG_A_LOT;
14
- /**
15
- * Executes SSM (Space - Sync - Metadata) for branch space initialization:
16
- * 1. Space: Target branch space targetBranchSpace (b2s_<branchName>).
17
- * 2. Sync: Syncs rootItemIbGib from sourceSpace -> targetBranchSpace using SyncSagaCoordinator.
18
- * 3. Metadata: Creates B2tFSBranchIbGib_V1 metadata node in targetBranchSpace pointing to rootItem.
19
- */
20
- export async function populateBranchSpaceFromGraph({ sourceSpace, targetBranchSpace, rootItemIbGib, branchName, metaspace, }) {
21
- const lc = `${lcFile}[${populateBranchSpaceFromGraph.name}]`;
22
- try {
23
- if (logalot) {
24
- console.log(`${lc} starting... (I: 1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d)`);
25
- }
26
- if (!sourceSpace || !targetBranchSpace || !rootItemIbGib || !metaspace) {
27
- throw new Error(`sourceSpace, targetBranchSpace, rootItemIbGib, and metaspace are required (E: 2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e)`);
28
- }
29
- // 1. Space: targetBranchSpace provided/instantiated
30
- // 2. Sync: Execute SyncSagaCoordinator space-to-space sync (sourceSpace -> targetBranchSpace)
31
- const senderCoordinator = new SyncSagaCoordinator();
32
- const receiverCoordinator = new SyncSagaCoordinator();
33
- const peer = new SyncPeerInnerspace_V1(clone(SYNC_PEER_INNERSPACE_DEFAULT_DATA_V1));
34
- await peer.initialized;
35
- await peer.initializeOpts({
36
- localMetaspace: metaspace,
37
- localSpace: sourceSpace,
38
- receiverSpace: targetBranchSpace,
39
- receiverCoordinator,
40
- receiverMetaspace: metaspace,
41
- });
42
- const resSync = await senderCoordinator.sync({
43
- peer,
44
- localSpace: sourceSpace,
45
- metaspace,
46
- domainIbGibs: [rootItemIbGib],
47
- });
48
- await resSync.done;
49
- if (logalot) {
50
- console.log(`${lc} SyncSagaCoordinator sync initiated for ${rootItemIbGib.ib} (I: 3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f)`);
51
- }
52
- const syncedCount = 1;
53
- // 3. Metadata: Create B2tFSBranchIbGib_V1 metadata node in targetBranchSpace pointing to rootItem
54
- let branchIbGib;
55
- if (branchName && metaspace) {
56
- branchIbGib = await createB2tFSBranchIbGib({
57
- branchName,
58
- rootItem: rootItemIbGib,
59
- space: targetBranchSpace,
60
- metaspace,
61
- });
62
- }
63
- if (logalot) {
64
- console.log(`${lc} Populated target branch space via SyncSagaCoordinator (I: 4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f)`);
65
- }
66
- return {
67
- syncedCount,
68
- branchIbGib,
69
- };
70
- }
71
- catch (error) {
72
- console.error(`${lc} ${extractErrorMsg(error)} (E: 4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a)`);
73
- throw error;
74
- }
75
- finally {
76
- if (logalot) {
77
- console.log(`${lc} complete. (I: 5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b)`);
78
- }
79
- }
80
- }
81
- //# sourceMappingURL=branch-graph-helper.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"branch-graph-helper.mjs","sourceRoot":"","sources":["../../../src/engine/branch/branch-graph-helper.mts"],"names":[],"mappings":"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"}
@@ -1,40 +0,0 @@
1
- /**
2
- * @module branch-helper
3
- *
4
- * B2tFS Branch Helper functions: dedicated branch spaces (`b2s_...`), branch creation,
5
- * and branch timeline tracking.
6
- */
7
- import { MetaspaceService } from '@ibgib/core-gib/dist/witness/space/metaspace/metaspace-types.mjs';
8
- import { IbGibSpaceAny } from '@ibgib/core-gib/dist/witness/space/space-base-v1.mjs';
9
- import { B2tFSBranchIbGib_V1 } from './branch-types.mjs';
10
- import { B2tFSItemIbGib_V1 } from '../item/item-types.mjs';
11
- export declare const B2TFS_BRANCH_SPACE_PREFIX = "b2s_";
12
- /**
13
- * Generates a dedicated branch space name.
14
- * Example: 'main' -> 'b2s_main'
15
- */
16
- export declare function getB2tFSBranchSpaceName(branchName: string): string;
17
- /**
18
- * Creates a new B2tFSBranchIbGib pointing to a root folder item.
19
- */
20
- export declare function createB2tFSBranchIbGib(opts: {
21
- branchName: string;
22
- rootItem: B2tFSItemIbGib_V1;
23
- space: IbGibSpaceAny;
24
- metaspace: MetaspaceService;
25
- }): Promise<B2tFSBranchIbGib_V1>;
26
- /**
27
- * Resolves the contextual branch name given the target directory and repository root.
28
- * If targetDir is physically located inside a secondary branch worktree (`repoRoot/b/<branchName>`),
29
- * that worktree's branchName is returned. Otherwise, the index's activeBranch (defaulting to 'main') is returned.
30
- */
31
- export declare function resolveContextualBranchName({ targetDir, repoRoot, indexIbGib, }: {
32
- targetDir: string;
33
- repoRoot: string;
34
- indexIbGib?: {
35
- data?: {
36
- activeBranch?: string;
37
- };
38
- } | null;
39
- }): string;
40
- //# sourceMappingURL=branch-helper.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"branch-helper.d.mts","sourceRoot":"","sources":["../../../src/engine/branch/branch-helper.mts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,EAAE,gBAAgB,EAAE,MAAM,kEAAkE,CAAC;AACpG,OAAO,EAAE,aAAa,EAAE,MAAM,sDAAsD,CAAC;AAIrF,OAAO,EAAE,mBAAmB,EAA4C,MAAM,oBAAoB,CAAC;AACnG,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAK3D,eAAO,MAAM,yBAAyB,SAAS,CAAC;AAEhD;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAGlE;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,EAAE;IAC/C,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,gBAAgB,CAAC;CAC/B,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAqC/B;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,EACxC,SAAS,EACT,QAAQ,EACR,UAAU,GACb,EAAE;IACC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE;YAAE,YAAY,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,GAAG,IAAI,CAAC;CAC5D,GAAG,MAAM,CAgBT"}
@@ -1,78 +0,0 @@
1
- /**
2
- * @module branch-helper
3
- *
4
- * B2tFS Branch Helper functions: dedicated branch spaces (`b2s_...`), branch creation,
5
- * and branch timeline tracking.
6
- */
7
- import path from 'node:path';
8
- import { getUUID } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
9
- import { ROOT } from '@ibgib/ts-gib/dist/V1/constants.mjs';
10
- import { getIbGibAddr } from '@ibgib/ts-gib/dist/helper.mjs';
11
- import { Factory_V1 } from '@ibgib/ts-gib/dist/V1/factory.mjs';
12
- import { persistTransformResult } from '@ibgib/core-gib/dist/witness/space/space-helper.mjs';
13
- import { GLOBAL_LOG_A_LOT } from '../../vcs-gib-constants.mjs';
14
- const lcFile = `[branch-helper]`;
15
- const logalot = GLOBAL_LOG_A_LOT;
16
- export const B2TFS_BRANCH_SPACE_PREFIX = 'b2s_';
17
- /**
18
- * Generates a dedicated branch space name.
19
- * Example: 'main' -> 'b2s_main'
20
- */
21
- export function getB2tFSBranchSpaceName(branchName) {
22
- const safeName = branchName.replace(/[^a-zA-Z0-9_\-]/g, '_');
23
- return `${B2TFS_BRANCH_SPACE_PREFIX}${safeName}`;
24
- }
25
- /**
26
- * Creates a new B2tFSBranchIbGib pointing to a root folder item.
27
- */
28
- export async function createB2tFSBranchIbGib(opts) {
29
- const lc = `${lcFile}[${createB2tFSBranchIbGib.name}]`;
30
- const { branchName, rootItem, space, metaspace } = opts;
31
- if (!branchName || !rootItem) {
32
- throw new Error(`branchName and rootItem required (E: 9012a472c9104b2d)`);
33
- }
34
- const uuid = await getUUID();
35
- const rootAddr = getIbGibAddr({ ibGib: rootItem });
36
- const data = {
37
- name: branchName,
38
- uuid,
39
- classname: 'B2tFSBranchIbGib_V1',
40
- };
41
- const rel8ns = {
42
- b2tfs_item: [rootAddr],
43
- };
44
- const res = await Factory_V1.firstGen({
45
- parentIbGib: ROOT,
46
- ib: `b2tfs_branch ${branchName} v1 ${uuid}`,
47
- data,
48
- rel8ns,
49
- });
50
- const branchIbGib = res.newIbGib;
51
- await persistTransformResult({ resTransform: res, space });
52
- await metaspace.registerNewIbGib({ ibGib: branchIbGib });
53
- if (logalot) {
54
- console.log(`${lc} Created branch IbGib: ${branchIbGib.ib}`);
55
- }
56
- return branchIbGib;
57
- }
58
- /**
59
- * Resolves the contextual branch name given the target directory and repository root.
60
- * If targetDir is physically located inside a secondary branch worktree (`repoRoot/b/<branchName>`),
61
- * that worktree's branchName is returned. Otherwise, the index's activeBranch (defaulting to 'main') is returned.
62
- */
63
- export function resolveContextualBranchName({ targetDir, repoRoot, indexIbGib, }) {
64
- const absTarget = path.resolve(targetDir);
65
- const absRoot = path.resolve(repoRoot);
66
- const rel = path.relative(absRoot, absTarget).replace(/\\/g, '/');
67
- if (rel.startsWith('b/') || rel === 'b') {
68
- const parts = rel.split('/').filter(Boolean);
69
- if (parts.length >= 2 && parts[0] === 'b') {
70
- const candidateBranch = parts[1];
71
- if (candidateBranch) {
72
- return candidateBranch;
73
- }
74
- }
75
- }
76
- return indexIbGib?.data?.activeBranch || 'main';
77
- }
78
- //# sourceMappingURL=branch-helper.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"branch-helper.mjs","sourceRoot":"","sources":["../../../src/engine/branch/branch-helper.mts"],"names":[],"mappings":"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"}
@@ -1,23 +0,0 @@
1
- /**
2
- * @module branch-space-helper
3
- *
4
- * Helper for managing dedicated branch spaces (`b2s_...`) in metaspace.
5
- */
6
- import { Metaspace_Nodespace } from '@ibgib/node-gib/dist/witness/space/metaspace/metaspace-nodespace/metaspace-nodespace.mjs';
7
- import { NodeFilesystemSpace_V1 } from '@ibgib/node-gib/dist/witness/space/node-filesystem-space/node-filesystem-space-v1.mjs';
8
- export { populateBranchSpaceFromGraph, PopulateBranchSpaceFromGraphOpts, PopulateBranchSpaceFromGraphResult, } from './branch-graph-helper.mjs';
9
- export interface GetOrCreateBranchSpaceOpts {
10
- metaspace: Metaspace_Nodespace;
11
- vcsPath: string;
12
- branchName: string;
13
- }
14
- export interface GetOrCreateBranchSpaceResult {
15
- space: NodeFilesystemSpace_V1;
16
- spaceId: string;
17
- spaceName: string;
18
- }
19
- /**
20
- * Gets an existing branch space or creates and registers a new dedicated NodeFilesystemSpace_V1 in metaspace.
21
- */
22
- export declare function getOrCreateBranchSpace({ metaspace, vcsPath, branchName, }: GetOrCreateBranchSpaceOpts): Promise<GetOrCreateBranchSpaceResult>;
23
- //# sourceMappingURL=branch-space-helper.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"branch-space-helper.d.mts","sourceRoot":"","sources":["../../../src/engine/branch/branch-space-helper.mts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,mBAAmB,EAAE,MAAM,0FAA0F,CAAC;AAC/H,OAAO,EAAE,sBAAsB,EAAE,MAAM,uFAAuF,CAAC;AAO/H,OAAO,EACH,4BAA4B,EAC5B,gCAAgC,EAChC,kCAAkC,GACrC,MAAM,2BAA2B,CAAC;AAKnC,MAAM,WAAW,0BAA0B;IACvC,SAAS,EAAE,mBAAmB,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,4BAA4B;IACzC,KAAK,EAAE,sBAAsB,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAAC,EACzC,SAAS,EACT,OAAO,EACP,UAAU,GACb,EAAE,0BAA0B,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAiEpE"}
@@ -1,78 +0,0 @@
1
- /**
2
- * @module branch-space-helper
3
- *
4
- * Helper for managing dedicated branch spaces (`b2s_...`) in metaspace.
5
- */
6
- import { clone, extractErrorMsg, getUUID } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
7
- import { getGib } from '@ibgib/ts-gib/dist/V1/transforms/transform-helper.mjs';
8
- import { NodeFilesystemSpace_V1 } from '@ibgib/node-gib/dist/witness/space/node-filesystem-space/node-filesystem-space-v1.mjs';
9
- import { DEFAULT_NODE_FILESYSTEM_SPACE_DATA_V1 } from '@ibgib/node-gib/dist/witness/space/node-filesystem-space/node-filesystem-space-types.mjs';
10
- import { putInSpace } from '@ibgib/core-gib/dist/witness/space/space-helper.mjs';
11
- import { GLOBAL_LOG_A_LOT } from '../../vcs-gib-constants.mjs';
12
- import { getB2tFSBranchSpaceName } from './branch-helper.mjs';
13
- export { populateBranchSpaceFromGraph, } from './branch-graph-helper.mjs';
14
- const lcFile = `[branch-space-helper]`;
15
- const logalot = GLOBAL_LOG_A_LOT;
16
- /**
17
- * Gets an existing branch space or creates and registers a new dedicated NodeFilesystemSpace_V1 in metaspace.
18
- */
19
- export async function getOrCreateBranchSpace({ metaspace, vcsPath, branchName, }) {
20
- const lc = `${lcFile}[${getOrCreateBranchSpace.name}]`;
21
- try {
22
- if (logalot) {
23
- console.log(`${lc} starting... (I: a1b2c3d4e5f60718293a4b5c6d7e8f9a)`);
24
- }
25
- if (!metaspace || !vcsPath || !branchName) {
26
- throw new Error(`metaspace, vcsPath, and branchName are required (E: b2c3d4e5f60718293a4b5c6d7e8f9a0b)`);
27
- }
28
- const spaceName = getB2tFSBranchSpaceName(branchName);
29
- const localSpaces = await metaspace.getLocalUserSpaces({ lock: false });
30
- const existingSpace = localSpaces.find(s => s.data?.name === spaceName || s.ib === spaceName);
31
- if (existingSpace) {
32
- const spaceId = existingSpace.data?.uuid || existingSpace.data?.spaceId || spaceName;
33
- if (logalot) {
34
- console.log(`${lc} Found existing branch space ${spaceName} (spaceId: ${spaceId}) (I: c3d4e5f60718293a4b5c6d7e8f9a0b1c)`);
35
- }
36
- return {
37
- space: existingSpace,
38
- spaceId,
39
- spaceName,
40
- };
41
- }
42
- const spaceUuid = await getUUID();
43
- const spaceData = {
44
- ...clone(DEFAULT_NODE_FILESYSTEM_SPACE_DATA_V1),
45
- uuid: spaceUuid,
46
- isTjp: true,
47
- name: spaceName,
48
- baseDir: vcsPath,
49
- spaceSubPath: spaceName,
50
- };
51
- const space = new NodeFilesystemSpace_V1(spaceData);
52
- space.gib = await getGib({ ibGib: space, hasTjp: true });
53
- await space.initialized;
54
- await putInSpace({ space: metaspace.zeroSpace, ibGib: space });
55
- await metaspace.registerNewIbGib({ ibGib: space });
56
- if (metaspace.fnUpdateBootstrap) {
57
- await metaspace.fnUpdateBootstrap(space);
58
- }
59
- if (logalot) {
60
- console.log(`${lc} Created new branch space ${spaceName} (spaceId: ${spaceUuid}) (I: d4e5f60718293a4b5c6d7e8f9a0b1c2d)`);
61
- }
62
- return {
63
- space,
64
- spaceId: spaceUuid,
65
- spaceName,
66
- };
67
- }
68
- catch (error) {
69
- console.error(`${lc} ${extractErrorMsg(error)} (E: e5f60718293a4b5c6d7e8f9a0b1c2d3e)`);
70
- throw error;
71
- }
72
- finally {
73
- if (logalot) {
74
- console.log(`${lc} complete. (I: f60718293a4b5c6d7e8f9a0b1c2d3e4f)`);
75
- }
76
- }
77
- }
78
- //# sourceMappingURL=branch-space-helper.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"branch-space-helper.mjs","sourceRoot":"","sources":["../../../src/engine/branch/branch-space-helper.mts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- /**
2
- * @module branch-types
3
- *
4
- * B2tFS Branch type definitions.
5
- */
6
- import { IbGibAddr } from '@ibgib/ts-gib/dist/types.mjs';
7
- import { IbGibData_V1, IbGibRel8ns_V1, IbGib_V1 } from '@ibgib/ts-gib/dist/V1/types.mjs';
8
- export interface B2tFSBranchData_V1 extends IbGibData_V1 {
9
- /**
10
- * Branch name (e.g. 'main', 'feature/login')
11
- */
12
- name: string;
13
- /**
14
- * Relative path from repository root to working directory
15
- */
16
- relativePathFromMetaspaceToFSPath?: string;
17
- }
18
- export interface B2tFSBranchRel8ns_V1 extends IbGibRel8ns_V1 {
19
- /**
20
- * Link pointing to the root folder B2tFSItemIbGib_V1
21
- */
22
- b2tfs_item?: IbGibAddr[];
23
- }
24
- export interface B2tFSBranchIbGib_V1 extends IbGib_V1<B2tFSBranchData_V1, B2tFSBranchRel8ns_V1> {
25
- }
26
- //# sourceMappingURL=branch-types.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"branch-types.d.mts","sourceRoot":"","sources":["../../../src/engine/branch/branch-types.mts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAEzF,MAAM,WAAW,kBAAmB,SAAQ,YAAY;IACpD;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,iCAAiC,CAAC,EAAE,MAAM,CAAC;CAC9C;AAED,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IACxD;;OAEG;IACH,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,mBAAoB,SAAQ,QAAQ,CAAC,kBAAkB,EAAE,oBAAoB,CAAC;CAC9F"}
@@ -1,7 +0,0 @@
1
- /**
2
- * @module branch-types
3
- *
4
- * B2tFS Branch type definitions.
5
- */
6
- export {};
7
- //# sourceMappingURL=branch-types.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"branch-types.mjs","sourceRoot":"","sources":["../../../src/engine/branch/branch-types.mts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -1,76 +0,0 @@
1
- /**
2
- * @module line-diff-helper
3
- *
4
- * Native, zero-dependency Myers / LCS line-diffing engine for text files.
5
- *
6
- * Computes precise line-by-line diff chunks between text files without external libraries.
7
- */
8
- export interface LineDiffChunk {
9
- /**
10
- * Line index in old text where the chunk starts (0-indexed)
11
- */
12
- old_i: number;
13
- /**
14
- * Deleted lines from old text
15
- */
16
- oldLines: string[];
17
- /**
18
- * Inserted lines in new text
19
- */
20
- newLines: string[];
21
- }
22
- export interface LineDiffResult {
23
- /**
24
- * Array of line diff chunks
25
- */
26
- chunks: LineDiffChunk[];
27
- /**
28
- * Set if total lines exceed max limit and force flag was false
29
- */
30
- tooBig?: boolean;
31
- /**
32
- * Set if binary data was detected and force flag was false
33
- */
34
- treatedAsBinary?: boolean;
35
- }
36
- export interface LineDiffOpts {
37
- /**
38
- * Old file data buffer (optional if new file addition)
39
- */
40
- oldData?: Uint8Array;
41
- /**
42
- * New file data buffer
43
- */
44
- newData: Uint8Array;
45
- /**
46
- * File encoding (defaults to 'utf8')
47
- */
48
- fileEncoding?: string;
49
- /**
50
- * Max line count limit before requiring force flag (defaults to 10000)
51
- */
52
- maxLines?: number;
53
- /**
54
- * Force diff computation even if file is large or binary
55
- */
56
- force?: boolean;
57
- }
58
- /**
59
- * Basic binary detection check.
60
- * Checks for null bytes (0x00) within the first 1024 bytes.
61
- */
62
- export declare function isBinaryBuffer(data: Uint8Array): boolean;
63
- /**
64
- * Decodes Uint8Array buffer into array of text lines.
65
- */
66
- export declare function decodeToLines(data?: Uint8Array, encoding?: string): string[];
67
- /**
68
- * Computes Longest Common Subsequence (LCS) edit script between two arrays of lines.
69
- * Returns array of LineDiffChunk structures.
70
- */
71
- export declare function computeLineLcsDiff(oldLines: string[], newLines: string[]): LineDiffChunk[];
72
- /**
73
- * Main line diff helper function for text files.
74
- */
75
- export declare function getLineDiffChunks(opts: LineDiffOpts): LineDiffResult;
76
- //# sourceMappingURL=line-diff-helper.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"line-diff-helper.d.mts","sourceRoot":"","sources":["../../../src/engine/diff/line-diff-helper.mts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH,MAAM,WAAW,aAAa;IAC1B;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB;;OAEG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC3B;;OAEG;IACH,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,YAAY;IACzB;;OAEG;IACH,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB;;OAEG;IACH,OAAO,EAAE,UAAU,CAAC;IACpB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAMxD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,QAAQ,GAAE,MAAe,GAAG,MAAM,EAAE,CASpF;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE,CA8E1F;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,cAAc,CA8BpE"}
@@ -1,144 +0,0 @@
1
- /**
2
- * @module line-diff-helper
3
- *
4
- * Native, zero-dependency Myers / LCS line-diffing engine for text files.
5
- *
6
- * Computes precise line-by-line diff chunks between text files without external libraries.
7
- */
8
- import { GLOBAL_LOG_A_LOT } from '../../vcs-gib-constants.mjs';
9
- const lcFile = `[line-diff-helper]`;
10
- const logalot = GLOBAL_LOG_A_LOT;
11
- /**
12
- * Basic binary detection check.
13
- * Checks for null bytes (0x00) within the first 1024 bytes.
14
- */
15
- export function isBinaryBuffer(data) {
16
- const sampleSize = Math.min(data.length, 1024);
17
- for (let i = 0; i < sampleSize; i++) {
18
- if (data[i] === 0) {
19
- return true;
20
- }
21
- }
22
- return false;
23
- }
24
- /**
25
- * Decodes Uint8Array buffer into array of text lines.
26
- */
27
- export function decodeToLines(data, encoding = 'utf8') {
28
- if (!data || data.length === 0) {
29
- return [];
30
- }
31
- try {
32
- const textDecoder = new TextDecoder(encoding || 'utf8', { fatal: false });
33
- const text = textDecoder.decode(data);
34
- return text.split(/\r?\n/);
35
- }
36
- catch {
37
- return [];
38
- }
39
- }
40
- /**
41
- * Computes Longest Common Subsequence (LCS) edit script between two arrays of lines.
42
- * Returns array of LineDiffChunk structures.
43
- */
44
- export function computeLineLcsDiff(oldLines, newLines) {
45
- const M = oldLines.length;
46
- const N = newLines.length;
47
- // Fast path: identical lines
48
- if (M === N && oldLines.every((line, idx) => line === newLines[idx])) {
49
- return [];
50
- }
51
- // Build LCS DP matrix
52
- const dp = Array.from({ length: M + 1 }, () => new Array(N + 1).fill(0));
53
- for (let i = 1; i <= M; i++) {
54
- for (let j = 1; j <= N; j++) {
55
- if (oldLines[i - 1] === newLines[j - 1]) {
56
- dp[i][j] = dp[i - 1][j - 1] + 1;
57
- }
58
- else {
59
- dp[i][j] = Math.max(dp[i - 1][j], dp[i][j - 1]);
60
- }
61
- }
62
- }
63
- // Backtrack to build edit script
64
- let i = M;
65
- let j = N;
66
- const rawEdits = [];
67
- while (i > 0 || j > 0) {
68
- if (i > 0 && j > 0 && oldLines[i - 1] === newLines[j - 1]) {
69
- rawEdits.push({ type: 'equal', oldIdx: i - 1, line: oldLines[i - 1] });
70
- i--;
71
- j--;
72
- }
73
- else if (j > 0 && (i === 0 || dp[i][j - 1] >= dp[i - 1][j])) {
74
- rawEdits.push({ type: 'insert', line: newLines[j - 1] });
75
- j--;
76
- }
77
- else if (i > 0 && (j === 0 || dp[i][j - 1] < dp[i - 1][j])) {
78
- rawEdits.push({ type: 'delete', oldIdx: i - 1, line: oldLines[i - 1] });
79
- i--;
80
- }
81
- }
82
- rawEdits.reverse();
83
- // Group edit operations into chunks
84
- const chunks = [];
85
- let currentChunk = null;
86
- let oldLineCursor = 0;
87
- for (const edit of rawEdits) {
88
- if (edit.type === 'equal') {
89
- if (currentChunk) {
90
- chunks.push(currentChunk);
91
- currentChunk = null;
92
- }
93
- oldLineCursor++;
94
- }
95
- else {
96
- if (!currentChunk) {
97
- currentChunk = {
98
- old_i: oldLineCursor,
99
- oldLines: [],
100
- newLines: [],
101
- };
102
- }
103
- if (edit.type === 'delete') {
104
- currentChunk.oldLines.push(edit.line);
105
- oldLineCursor++;
106
- }
107
- else if (edit.type === 'insert') {
108
- currentChunk.newLines.push(edit.line);
109
- }
110
- }
111
- }
112
- if (currentChunk) {
113
- chunks.push(currentChunk);
114
- }
115
- return chunks;
116
- }
117
- /**
118
- * Main line diff helper function for text files.
119
- */
120
- export function getLineDiffChunks(opts) {
121
- const lc = `${lcFile}[${getLineDiffChunks.name}]`;
122
- const { oldData, newData, fileEncoding = 'utf8', maxLines = 10000, force = false, } = opts;
123
- // Check for binary data
124
- const oldIsBin = oldData ? isBinaryBuffer(oldData) : false;
125
- const newIsBin = isBinaryBuffer(newData);
126
- if ((oldIsBin || newIsBin) && !force) {
127
- if (logalot) {
128
- console.log(`${lc} Binary data detected, skipping line diff.`);
129
- }
130
- return { chunks: [], treatedAsBinary: true };
131
- }
132
- const oldLines = decodeToLines(oldData, fileEncoding);
133
- const newLines = decodeToLines(newData, fileEncoding);
134
- // Check max lines threshold
135
- if ((oldLines.length > maxLines || newLines.length > maxLines) && !force) {
136
- if (logalot) {
137
- console.log(`${lc} Line count exceeds limit (${maxLines}), skipping line diff.`);
138
- }
139
- return { chunks: [], tooBig: true };
140
- }
141
- const chunks = computeLineLcsDiff(oldLines, newLines);
142
- return { chunks };
143
- }
144
- //# sourceMappingURL=line-diff-helper.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"line-diff-helper.mjs","sourceRoot":"","sources":["../../../src/engine/diff/line-diff-helper.mts"],"names":[],"mappings":"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"}