@ibgib/vcs-gib 0.0.30 → 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,137 +0,0 @@
1
- /**
2
- * @module item-types
3
- *
4
- * Baseline type definitions for B2tFS filesystem item IbGibs.
5
- */
6
-
7
- import { IbGibAddr, TransformResult } from '@ibgib/ts-gib/dist/types.mjs';
8
- import { IbGibData_V1, IbGibRel8ns_V1, IbGib_V1 } from '@ibgib/ts-gib/dist/V1/types.mjs';
9
- import { CommentIbGib_V1 } from '@ibgib/core-gib/dist/common/comment/comment-types.mjs';
10
-
11
- import { SpaceQualifiedIbGibAddr } from '../index/index-types.mjs';
12
- import { LineDiffChunk } from '../diff/line-diff-helper.mjs';
13
-
14
- /**
15
- * Filesystem projection type: file or folder.
16
- */
17
- export type B2tFSType = 'file' | 'folder';
18
-
19
- export const B2tFSType = {
20
- file: 'file' as 'file',
21
- folder: 'folder' as 'folder',
22
- } satisfies { [key: string]: B2tFSType };
23
-
24
- export const B2TFS_TYPE_VALUES: B2tFSType[] = Object.values(B2tFSType);
25
-
26
- /**
27
- * Rel8n names used by B2tFS items.
28
- */
29
- export const B2TFS_CHILD_ITEM_REL8N_NAME = 'b2tfs_child';
30
- export const BINARY_REL8N_NAME = 'bin';
31
-
32
- /**
33
- * Intrinsic data payload for B2tFS item IbGibs.
34
- */
35
- export interface B2tFSItemData_V1 extends IbGibData_V1 {
36
- /**
37
- * Raw filesystem name of file or folder (e.g. 'index.mts')
38
- */
39
- name: string;
40
- /**
41
- * SHA-256 hash of raw name
42
- */
43
- nameHash: string;
44
- /**
45
- * Filesystem item type ('file' | 'folder')
46
- */
47
- fsType: B2tFSType;
48
- /**
49
- * Filter patterns for folders (e.g. from .ibgibignore)
50
- */
51
- filterPatterns?: string[];
52
- /**
53
- * File name sans extension
54
- */
55
- fileNameSansExt?: string;
56
- /**
57
- * File extension (e.g. 'mts')
58
- */
59
- fileExt?: string;
60
- /**
61
- * SHA-256 hash of file contents
62
- */
63
- fileHash?: string;
64
- /**
65
- * File encoding (defaults to 'utf8')
66
- */
67
- fileEncoding?: string;
68
- /**
69
- * Grouping UUID for atomic diff transactions
70
- */
71
- diffTransactionId: string;
72
- }
73
-
74
- /**
75
- * Extrinsic relationships (DAG links) for B2tFS item IbGibs.
76
- */
77
- export interface B2tFSItemRel8ns_V1 extends IbGibRel8ns_V1 {
78
- /**
79
- * Links to child B2tFS item addresses (for folders)
80
- */
81
- [B2TFS_CHILD_ITEM_REL8N_NAME]?: IbGibAddr[];
82
- /**
83
- * Links to binary content payload IbGibs (for files)
84
- */
85
- [BINARY_REL8N_NAME]?: IbGibAddr[];
86
- /**
87
- * Links to commit message comment IbGibs
88
- */
89
- comment?: IbGibAddr[];
90
- }
91
-
92
- /**
93
- * B2tFS Item IbGib object structure.
94
- */
95
- export interface B2tFSItemIbGib_V1 extends IbGib_V1<B2tFSItemData_V1, B2tFSItemRel8ns_V1> {
96
- data: B2tFSItemData_V1;
97
- }
98
-
99
- /**
100
- * Diff information tree structure.
101
- */
102
- export interface B2tFSItemDiffInfo {
103
- fsType?: B2tFSType;
104
- fsName?: string;
105
- timestampInTicks: string;
106
- diffTransactionId: string;
107
- existingItemSQAddr?: SpaceQualifiedIbGibAddr;
108
- newItemSQAddr?: SpaceQualifiedIbGibAddr;
109
- existingItem?: B2tFSItemIbGib_V1;
110
- newItem?: B2tFSItemIbGib_V1;
111
- transformResults?: TransformResult<IbGib_V1>[];
112
- applyCommentText?: string;
113
- applyCommentIbGib?: CommentIbGib_V1;
114
- childDiffs?: B2tFSItemDiffInfo[];
115
- errorMsg?: string;
116
- ignored?: boolean;
117
- inputPath?: string;
118
- }
119
-
120
- export interface B2tFSItemDiffInfo_Folder extends B2tFSItemDiffInfo {
121
- fsType: 'folder';
122
- childNamesAdded: string[];
123
- childAddrsAdded: string[];
124
- childNamesRemoved: string[];
125
- childAddrsRemoved: string[];
126
- childNamesModified: string[];
127
- childAddrsModified: { [prevAddr: string]: string };
128
- filterPatterns: string[];
129
- }
130
-
131
- export interface B2tFSItemDiffInfo_File extends B2tFSItemDiffInfo {
132
- fsType: 'file';
133
- fileEncoding?: string;
134
- oldData?: Uint8Array;
135
- newData: Uint8Array;
136
- lineChunks?: LineDiffChunk[];
137
- }
@@ -1,92 +0,0 @@
1
- /**
2
- * @module item.respec.node
3
- *
4
- * Unit tests for createB2tFSItemIbGib and evolveB2tFSItemIbGib timeline transforms.
5
- */
6
-
7
- import {
8
- respecfully, ifWe, iReckon
9
- } from '@ibgib/helper-gib/dist/respec-gib/respec-gib.mjs';
10
- import { getIbGibAddr } from '@ibgib/ts-gib/dist/helper.mjs';
11
- import { getGibInfo } from '@ibgib/ts-gib/dist/V1/transforms/transform-helper.mjs';
12
-
13
- import { createB2tFSItemIbGib, evolveB2tFSItemIbGib } from './item-helper.mjs';
14
- import { B2tFSItemIbGib_V1 } from './item-types.mjs';
15
-
16
- const lc = `[apps/vcs-gib/src/engine/item/item.respec.node.mts]`;
17
-
18
- await respecfully(lc, `B2tFS Item Timeline Transforms`, async () => {
19
-
20
- await respecfully(lc, `createB2tFSItemIbGib`, async () => {
21
- await ifWe(lc, `creates brand-new file item with TJP and DNA`, async () => {
22
- const res = await createB2tFSItemIbGib({
23
- fsType: 'file',
24
- name: 'test.txt',
25
- data: {
26
- fileHash: 'hash_abc_123',
27
- },
28
- });
29
-
30
- const item = res.newIbGib as B2tFSItemIbGib_V1;
31
- iReckon(lc, item).isGonnaBeTruthy();
32
- iReckon(lc, item.data?.name).willEqual('test.txt');
33
- iReckon(lc, item.data?.fileHash).willEqual('hash_abc_123');
34
- iReckon(lc, item.rel8ns?.ancestor).isGonnaBeTruthy();
35
- iReckon(lc, item.rel8ns?.tjp).isGonnaBeTruthy();
36
-
37
- const gibInfo = getGibInfo({ gib: item.gib });
38
- iReckon(lc, gibInfo.tjpGib).isGonnaBeTruthy();
39
- iReckon(lc, gibInfo.punctiliarHash).isGonnaBeTruthy();
40
- });
41
-
42
- await ifWe(lc, `creates brand-new folder item`, async () => {
43
- const res = await createB2tFSItemIbGib({
44
- fsType: 'folder',
45
- name: 'src',
46
- });
47
-
48
- const item = res.newIbGib as B2tFSItemIbGib_V1;
49
- iReckon(lc, item).isGonnaBeTruthy();
50
- iReckon(lc, item.data?.fsType).willEqual('folder');
51
- iReckon(lc, item.data?.name).willEqual('src');
52
- });
53
- });
54
-
55
- await respecfully(lc, `evolveB2tFSItemIbGib`, async () => {
56
- await ifWe(lc, `evolves existing item via mut8/rel8, generating two-part timeline gib and rel8ns.past`, async () => {
57
- const createRes = await createB2tFSItemIbGib({
58
- fsType: 'file',
59
- name: 'config.json',
60
- data: {
61
- fileHash: 'hash_v1',
62
- },
63
- });
64
-
65
- const initialItem = createRes.newIbGib as B2tFSItemIbGib_V1;
66
- const initialAddr = getIbGibAddr({ ibGib: initialItem });
67
- const initialGibInfo = getGibInfo({ gib: initialItem.gib });
68
-
69
- // Evolve item with updated fileHash
70
- const evolveRes = await evolveB2tFSItemIbGib({
71
- existingItem: initialItem,
72
- dataToUpdate: {
73
- fileHash: 'hash_v2',
74
- },
75
- });
76
-
77
- const evolvedItem = evolveRes.newIbGib as B2tFSItemIbGib_V1;
78
- const evolvedAddr = getIbGibAddr({ ibGib: evolvedItem });
79
- const evolvedGibInfo = getGibInfo({ gib: evolvedItem.gib });
80
-
81
- iReckon(lc, evolvedItem.data?.fileHash).willEqual('hash_v2');
82
- iReckon(lc, evolvedItem.rel8ns?.past).includes(initialAddr);
83
- iReckon(lc, evolvedItem.rel8ns?.ancestor).isGonnaBeTruthy();
84
- iReckon(lc, evolvedItem.rel8ns?.tjp).willEqual(initialItem.rel8ns?.tjp);
85
-
86
- // Verify two-part composite timeline gib address
87
- iReckon(lc, evolvedGibInfo.tjpGib).willEqual(initialGibInfo.tjpGib);
88
- iReckon(lc, evolvedGibInfo.punctiliarHash).isGonnaBeTruthy();
89
- iReckon(lc, evolvedGibInfo.punctiliarHash !== initialGibInfo.punctiliarHash).isGonnaBeTrue();
90
- });
91
- });
92
- });