@ibgib/vcs-gib 0.0.34 → 0.0.36

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.
@@ -2,5 +2,5 @@
2
2
  * @module AUTO-GENERATED-version
3
3
  * Auto-generated version constant. Do NOT edit directly.
4
4
  */
5
- export declare const AUTO_GENERATED_VERSION = "0.0.34";
5
+ export declare const AUTO_GENERATED_VERSION = "0.0.36";
6
6
  //# sourceMappingURL=AUTO-GENERATED-version.d.mts.map
@@ -2,5 +2,5 @@
2
2
  * @module AUTO-GENERATED-version
3
3
  * Auto-generated version constant. Do NOT edit directly.
4
4
  */
5
- export const AUTO_GENERATED_VERSION = '0.0.34';
5
+ export const AUTO_GENERATED_VERSION = '0.0.36';
6
6
  //# sourceMappingURL=AUTO-GENERATED-version.mjs.map
@@ -19,12 +19,17 @@ export interface BootstrapVcsMetaspaceOpts {
19
19
  * Default space name for non-interactive headless testing. Defaults to 'vcs_space'
20
20
  */
21
21
  defaultSpaceName?: string;
22
+ /**
23
+ * If true, throws if .vcsgib is not found during upward discovery without initializing spaces.
24
+ */
25
+ mustExist?: boolean;
22
26
  }
23
27
  export interface BootstrapVcsMetaspaceResult {
24
28
  metaspace: Metaspace_Nodespace;
25
29
  localSpace: IbGibSpaceAny;
26
30
  vcsPath: string;
27
31
  repoRoot: string;
32
+ foundVcsPath?: string;
28
33
  }
29
34
  /**
30
35
  * Bootstraps Metaspace_Nodespace and initializes the local repository space.
@@ -1 +1 @@
1
- {"version":3,"file":"node-bootstrap.d.mts","sourceRoot":"","sources":["../../src/bootstrap/node-bootstrap.mts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,EAAE,aAAa,EAAE,MAAM,sDAAsD,CAAC;AAGrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0FAA0F,CAAC;AAW/H,MAAM,WAAW,yBAAyB;IACtC;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,2BAA2B;IACxC,SAAS,EAAE,mBAAmB,CAAC;IAC/B,UAAU,EAAE,aAAa,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CACvC,IAAI,GAAE,yBAA8B,GACrC,OAAO,CAAC,2BAA2B,CAAC,CAuItC"}
1
+ {"version":3,"file":"node-bootstrap.d.mts","sourceRoot":"","sources":["../../src/bootstrap/node-bootstrap.mts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,EAAE,aAAa,EAAE,MAAM,sDAAsD,CAAC;AAGrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0FAA0F,CAAC;AAW/H,MAAM,WAAW,yBAAyB;IACtC;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,2BAA2B;IACxC,SAAS,EAAE,mBAAmB,CAAC;IAC/B,UAAU,EAAE,aAAa,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CACvC,IAAI,GAAE,yBAA8B,GACrC,OAAO,CAAC,2BAA2B,CAAC,CA4ItC"}
@@ -57,6 +57,9 @@ export async function bootstrapVcsMetaspace(opts = {}) {
57
57
  }
58
58
  currentDir = parentDir;
59
59
  }
60
+ if (opts.mustExist && !foundVcsPath) {
61
+ throw new Error(`fatal: not an ibgib repository (or any of the parent directories): ${vcsFolderName}`);
62
+ }
60
63
  const vcsPath = foundVcsPath || path.resolve(repoPath, vcsFolderName);
61
64
  if (!foundVcsPath) {
62
65
  repoRoot = path.resolve(repoPath);
@@ -145,6 +148,7 @@ export async function bootstrapVcsMetaspace(opts = {}) {
145
148
  localSpace,
146
149
  vcsPath,
147
150
  repoRoot,
151
+ foundVcsPath,
148
152
  };
149
153
  }
150
154
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"node-bootstrap.mjs","sourceRoot":"","sources":["../../src/bootstrap/node-bootstrap.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node-bootstrap.mjs","sourceRoot":"","sources":["../../src/bootstrap/node-bootstrap.mts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAElC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,iDAAiD,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,uDAAuD,CAAC;AAE/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,qDAAqD,CAAC;AAC3F,OAAO,EAAE,oBAAoB,EAAE,MAAM,iEAAiE,CAAC;AACvG,OAAO,EAAE,mBAAmB,EAAE,MAAM,0FAA0F,CAAC;AAC/H,OAAO,EAAE,sBAAsB,EAAE,MAAM,uFAAuF,CAAC;AAC/H,OAAO,EAAE,qCAAqC,EAAE,MAAM,0FAA0F,CAAC;AACjJ,OAAO,EAAE,qBAAqB,EAAE,2BAA2B,EAAE,MAAM,iGAAiG,CAAC;AAErK,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8DAA8D,CAAC;AAEtG,MAAM,MAAM,GAAG,kBAAkB,CAAC;AAClC,MAAM,OAAO,GAAG,gBAAgB,CAAC;AA6BjC;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACvC,IAAI,GAA8B,EAAE;IAEpC,MAAM,EAAE,GAAG,GAAG,MAAM,IAAI,qBAAqB,CAAC,IAAI,GAAG,CAAC;IACtD,IAAI,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,2BAA2B,CAAC,CAAC;QAAC,CAAC;QAE/D,oBAAoB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,sBAAsB,EAAE,CAAC,CAAC;QAE7E,MAAM,EACF,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,EACxB,aAAa,GAAG,SAAS,GAC5B,GAAG,IAAI,CAAC;QAET,IAAI,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,YAAgC,CAAC;QACrC,IAAI,QAAQ,GAAG,UAAU,CAAC;QAE1B,OAAO,IAAI,EAAE,CAAC;YACV,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;YAC9D,IAAI,MAAM,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC;gBACD,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAC7C,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;oBACrB,MAAM,GAAG,IAAI,CAAC;gBAClB,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACL,MAAM,GAAG,KAAK,CAAC;YACnB,CAAC;YAED,IAAI,MAAM,EAAE,CAAC;gBACT,YAAY,GAAG,gBAAgB,CAAC;gBAChC,QAAQ,GAAG,UAAU,CAAC;gBACtB,MAAM;YACV,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAC3C,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;gBAC3B,MAAM;YACV,CAAC;YACD,UAAU,GAAG,SAAS,CAAC;QAC3B,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,YAAY,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,sEAAsE,aAAa,EAAE,CAAC,CAAC;QAC3G,CAAC;QAED,MAAM,OAAO,GAAG,YAAY,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QACtE,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;QAC7E,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,IAAI,OAAO,WAAW,EAAE,CAAC;QAEvE,IAAI,OAAO,EAAE,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,0CAA0C,OAAO,eAAe,QAAQ,eAAe,CAAC,CAAC;QAAC,CAAC;QAE3H,kCAAkC;QAClC,MAAM,SAAS,GAAG,IAAI,mBAAmB,CAAC,SAAS,CAAC,CAAC;QACrD,SAAS,CAAC,iBAAiB,GAAG,KAAK,EAAE,QAAQ,EAAE,EAAE;YAC7C,MAAM,oBAAoB,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpF,CAAC,CAAC;QAEF,MAAM,SAAS,CAAC,UAAU,CAAC;YACvB,SAAS,EAAE,gBAAgB;YAC3B,gBAAgB,EAAE;gBACd,kBAAkB,EAAE,GAAG,EAAE;oBACrB,MAAM,aAAa,GAAG;wBAClB,GAAG,KAAK,CAAC,qCAAqC,CAAC;wBAC/C,OAAO,EAAE,OAAO;qBACnB,CAAC;oBACF,MAAM,SAAS,GAAG,IAAI,sBAAsB,CAAC,aAAa,CAAC,CAAC;oBAC5D,SAAS,CAAC,GAAG,GAAG,KAAK,CAAC;oBACtB,OAAO,SAAS,CAAC;gBACrB,CAAC;gBACD,0BAA0B,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;oBAC5C,IAAI,SAAS,EAAE,CAAC;wBAAE,SAAiB,CAAC,OAAO,GAAG,OAAO,CAAC;oBAAC,CAAC;oBACxD,MAAM,KAAK,GAAG,MAAM,qBAAqB,CAAC,SAAS,CAAC,CAAC;oBACrD,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;wBACtB,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;wBAC7B,KAAK,CAAC,GAAG,GAAG,MAAM,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC7D,CAAC;oBACD,OAAO,KAAK,CAAC;gBACjB,CAAC;gBACD,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;oBAC7B,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;wBAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;oBAAC,CAAC;oBACnE,MAAM,KAAK,GAAG,MAAM,2BAA2B,CAAC,QAAQ,CAAC,CAAC;oBAC1D,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;wBACtB,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;oBACjC,CAAC;oBACD,OAAO,KAAK,CAAC;gBACjB,CAAC;aACJ;YACD,UAAU,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;gBACvC,IAAI,OAAO,EAAE,CAAC;oBAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,KAAK,KAAK,GAAG,wCAAwC,CAAC,CAAC;gBAAC,CAAC;YACzG,CAAC;YACD,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;gBACxC,IAAI,OAAO,EAAE,CAAC;oBAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,aAAa,KAAK,KAAK,GAAG,eAAe,CAAC,CAAC;gBAAC,CAAC;gBAC7E,OAAO,gBAAgB,CAAC;YAC5B,CAAC;YACD,mBAAmB,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBAC5C,IAAI,OAAO,EAAE,CAAC;oBAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,GAAG,wCAAwC,CAAC,CAAC;gBAAC,CAAC;gBACzG,OAAO,IAAI,CAAC;YAChB,CAAC;SACJ,CAAC,CAAC;QAEH,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;YAC5B,MAAM,KAAK,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,iBAAiB,CAAC;YACjD,IAAI,EAAE,KAAK;SACd,CAAC,CAAC;QAEH,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;QAC9F,CAAC;QAED,IAAI,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YACzD,UAAU,CAAC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACtC,CAAC;QAED,MAAM,UAAU,CAAC,WAAW,CAAC;QAE7B,IAAI,OAAO,EAAE,CAAC;YACV,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,EAAE,IAAI,IAAI,UAAU,CAAC,EAAE,CAAC;YACzD,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,yCAAyC,SAAS,eAAe,CAAC,CAAC;QACxF,CAAC;QAED,OAAO;YACH,SAAS;YACT,UAAU;YACV,OAAO;YACP,QAAQ;YACR,YAAY;SACf,CAAC;IACN,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,KAAK,EAAE,OAAO,IAAI,KAAK,eAAe,CAAC,CAAC;QAC/D,MAAM,KAAK,CAAC;IAChB,CAAC;YAAS,CAAC;QACP,IAAI,OAAO,EAAE,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;QAAC,CAAC;IACjE,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"cli-init-cmd.d.mts","sourceRoot":"","sources":["../../../src/cli/commands/cli-init-cmd.mts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgBH,MAAM,WAAW,WAAW;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,wBAAsB,cAAc,CAAC,EACjC,SAAyB,EACzB,aAAyB,EACzB,iBAA6C,EAC7C,KAAa,GAChB,GAAE,WAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,CAqC3C"}
1
+ {"version":3,"file":"cli-init-cmd.d.mts","sourceRoot":"","sources":["../../../src/cli/commands/cli-init-cmd.mts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAiBH,MAAM,WAAW,WAAW;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,wBAAsB,cAAc,CAAC,EACjC,SAAyB,EACzB,aAAyB,EACzB,iBAA6C,EAC7C,KAAa,GAChB,GAAE,WAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,CAoD3C"}
@@ -10,6 +10,7 @@ import { VcsRepository } from '@ibgib/core-gib/dist/vcs/vcs-repository.mjs';
10
10
  import { B2TFS_BRANCH_DEFAULT_NAME } from '@ibgib/core-gib/dist/vcs/branch/branch-constants.mjs';
11
11
  import { GLOBAL_LOG_A_LOT } from '../../vcs-gib-constants.mjs';
12
12
  import { bootstrapVcsMetaspace } from '../../bootstrap/node-bootstrap.mjs';
13
+ import { getB2tFSIndexIbGib } from '@ibgib/core-gib/dist/vcs/index/index-helper.mjs';
13
14
  const lcFile = `[init-cmd]`;
14
15
  const logalot = GLOBAL_LOG_A_LOT;
15
16
  export async function executeInitCmd({ targetDir = process.cwd(), vcsFolderName = '.vcsgib', defaultBranchName = B2TFS_BRANCH_DEFAULT_NAME, quiet = false, } = {}) {
@@ -18,11 +19,25 @@ export async function executeInitCmd({ targetDir = process.cwd(), vcsFolderName
18
19
  // 1. Ensure target directory exists
19
20
  await fs.mkdir(absTargetDir, { recursive: true });
20
21
  // 2. Bootstrap Metaspace and localSpace (creates .vcsgib on disk)
21
- const { metaspace, localSpace } = await bootstrapVcsMetaspace({
22
+ const { metaspace, localSpace, foundVcsPath } = await bootstrapVcsMetaspace({
22
23
  repoPath: absTargetDir,
23
24
  vcsFolderName,
24
25
  defaultSpaceName: `vcs_${path.basename(absTargetDir).replace(/[^a-zA-Z0-9_\-]/g, '_')}`,
25
26
  });
27
+ if (foundVcsPath) {
28
+ const existingIndex = await getB2tFSIndexIbGib({ space: localSpace, metaspace });
29
+ if (existingIndex) {
30
+ if (!quiet) {
31
+ console.log(`Reinitialized existing ibgib repository in ${vcsPath}`);
32
+ }
33
+ return {
34
+ vcsPath,
35
+ spaceId: existingIndex.data.activeSpaceId,
36
+ branchName: existingIndex.data.activeBranchName || defaultBranchName,
37
+ rootItemIb: '',
38
+ };
39
+ }
40
+ }
26
41
  // 3. Facade instantiation and domain init
27
42
  const repo = new VcsRepository({
28
43
  metaspace,
@@ -1 +1 @@
1
- {"version":3,"file":"cli-init-cmd.mjs","sourceRoot":"","sources":["../../../src/cli/commands/cli-init-cmd.mts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAGlC,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,sDAAsD,CAAC;AAEjG,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAG3E,MAAM,MAAM,GAAG,YAAY,CAAC;AAC5B,MAAM,OAAO,GAAG,gBAAgB,CAAC;AAgBjC,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,EACjC,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,EACzB,aAAa,GAAG,SAAS,EACzB,iBAAiB,GAAG,yBAAyB,EAC7C,KAAK,GAAG,KAAK,GAChB,GAAgB,EAAE;IACf,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IAEvD,oCAAoC;IACpC,MAAM,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAElD,kEAAkE;IAClE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,MAAM,qBAAqB,CAAC;QAC1D,QAAQ,EAAE,YAAY;QACtB,aAAa;QACb,gBAAgB,EAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,EAAE;KAC1F,CAAC,CAAC;IAEH,0CAA0C;IAC1C,MAAM,IAAI,GAAG,IAAI,aAAa,CAAC;QAC3B,SAAS;QACT,UAAU;QACV,QAAQ,EAAE,YAAY;QACtB,aAAa;KAChB,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC;QAC5B,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,MAAM;QACrD,UAAU,EAAE,iBAAiB;KAChC,CAAC,CAAC;IAEH,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,yCAAyC,OAAO,aAAa,iBAAiB,GAAG,CAAC,CAAC;IACnG,CAAC;IAED,OAAO;QACH,OAAO;QACP,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE;KAClC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"cli-init-cmd.mjs","sourceRoot":"","sources":["../../../src/cli/commands/cli-init-cmd.mts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAGlC,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,sDAAsD,CAAC;AAEjG,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AAGrF,MAAM,MAAM,GAAG,YAAY,CAAC;AAC5B,MAAM,OAAO,GAAG,gBAAgB,CAAC;AAgBjC,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,EACjC,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,EACzB,aAAa,GAAG,SAAS,EACzB,iBAAiB,GAAG,yBAAyB,EAC7C,KAAK,GAAG,KAAK,GAChB,GAAgB,EAAE;IACf,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IAEvD,oCAAoC;IACpC,MAAM,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAElD,kEAAkE;IAClE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,MAAM,qBAAqB,CAAC;QACxE,QAAQ,EAAE,YAAY;QACtB,aAAa;QACb,gBAAgB,EAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,EAAE;KAC1F,CAAC,CAAC;IAEH,IAAI,YAAY,EAAE,CAAC;QACf,MAAM,aAAa,GAAG,MAAM,kBAAkB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;QACjF,IAAI,aAAa,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,EAAE,CAAC;gBACT,OAAO,CAAC,GAAG,CAAC,8CAA8C,OAAO,EAAE,CAAC,CAAC;YACzE,CAAC;YACD,OAAO;gBACH,OAAO;gBACP,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,aAAa;gBACzC,UAAU,EAAE,aAAa,CAAC,IAAI,CAAC,gBAAgB,IAAI,iBAAiB;gBACpE,UAAU,EAAE,EAAE;aACjB,CAAC;QACN,CAAC;IACL,CAAC;IAED,0CAA0C;IAC1C,MAAM,IAAI,GAAG,IAAI,aAAa,CAAC;QAC3B,SAAS;QACT,UAAU;QACV,QAAQ,EAAE,YAAY;QACtB,aAAa;KAChB,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC;QAC5B,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,MAAM;QACrD,UAAU,EAAE,iBAAiB;KAChC,CAAC,CAAC;IAEH,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,yCAAyC,OAAO,aAAa,iBAAiB,GAAG,CAAC,CAAC;IACnG,CAAC;IAED,OAAO;QACH,OAAO;QACP,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE;KAClC,CAAC;AACN,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"vcs-cli-main.d.mts","sourceRoot":"","sources":["../../src/cli/vcs-cli-main.mts"],"names":[],"mappings":";AACA;;;;;GAKG;AAuBH,MAAM,WAAW,WAAW;IACxB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,wBAAgB,QAAQ,IAAI,IAAI,CAiC/B;AAED,wBAAgB,WAAW,IAAI,IAAI,CAElC;AAED,wBAAsB,IAAI,CAAC,EACvB,IAA4B,GAC/B,GAAE,WAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAsHpC"}
1
+ {"version":3,"file":"vcs-cli-main.d.mts","sourceRoot":"","sources":["../../src/cli/vcs-cli-main.mts"],"names":[],"mappings":";AACA;;;;;GAKG;AAuBH,MAAM,WAAW,WAAW;IACxB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,wBAAgB,QAAQ,IAAI,IAAI,CAiC/B;AAED,wBAAgB,WAAW,IAAI,IAAI,CAElC;AAED,wBAAsB,IAAI,CAAC,EACvB,IAA4B,GAC/B,GAAE,WAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAwIpC"}
@@ -168,7 +168,28 @@ export async function main({ argv = process.argv.slice(2), } = {}) {
168
168
  return 0;
169
169
  }
170
170
  catch (error) {
171
- console.error(`Error: ${extractErrorMsg(error)} (E: genuuid)`);
171
+ let rawMsg = extractErrorMsg(error);
172
+ // Strip trailing internal UUID / error markers like (E: ...)
173
+ const cleanMsg = rawMsg.replace(/\s*\(E:\s*[a-f0-9-]+\)\s*$/i, '').trim();
174
+ if (cleanMsg.startsWith('fatal:') || cleanMsg.startsWith('error:')) {
175
+ console.error(cleanMsg);
176
+ }
177
+ else if (cleanMsg.toLowerCase().includes('nothing to commit')) {
178
+ console.error('nothing to commit, working tree clean');
179
+ }
180
+ else if (cleanMsg.toLowerCase().includes('already exists')) {
181
+ const branchMatch = cleanMsg.match(/["']([^"']+)["']/);
182
+ const name = branchMatch ? branchMatch[1] : '';
183
+ console.error(name ? `fatal: a branch named '${name}' already exists.` : `fatal: ${cleanMsg}`);
184
+ }
185
+ else if (cleanMsg.toLowerCase().includes('not found in indexibgib') || cleanMsg.toLowerCase().includes('not found on branch')) {
186
+ const branchMatch = cleanMsg.match(/\(([^)]+)\)/) || cleanMsg.match(/['"]([^'"]+)['"]/);
187
+ const name = branchMatch ? branchMatch[1] : '';
188
+ console.error(name ? `error: pathspec '${name}' did not match any file(s) known to ibgib` : `error: ${cleanMsg}`);
189
+ }
190
+ else {
191
+ console.error(`fatal: ${cleanMsg}`);
192
+ }
172
193
  return 1;
173
194
  }
174
195
  finally {
@@ -1 +1 @@
1
- {"version":3,"file":"vcs-cli-main.mjs","sourceRoot":"","sources":["../../src/cli/vcs-cli-main.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vcs-cli-main.mjs","sourceRoot":"","sources":["../../src/cli/vcs-cli-main.mts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"vcs-repo-helper.d.mts","sourceRoot":"","sources":["../../src/cli/vcs-repo-helper.mts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,aAAa,EAAmC,MAAM,6CAA6C,CAAC;AAY7G,MAAM,WAAW,qBAAqB;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,uBAAuB;IACpC,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAsB,iBAAiB,CAAC,EACpC,SAAyB,EACzB,aAAyB,EACzB,UAAU,GACb,GAAE,qBAA0B,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAyE/D"}
1
+ {"version":3,"file":"vcs-repo-helper.d.mts","sourceRoot":"","sources":["../../src/cli/vcs-repo-helper.mts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,aAAa,EAAmC,MAAM,6CAA6C,CAAC;AAY7G,MAAM,WAAW,qBAAqB;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,uBAAuB;IACpC,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAsB,iBAAiB,CAAC,EACpC,SAAyB,EACzB,aAAyB,EACzB,UAAU,GACb,GAAE,qBAA0B,GAAG,OAAO,CAAC,uBAAuB,CAAC,CA8E/D"}
@@ -22,14 +22,18 @@ export async function openVcsRepository({ targetDir = process.cwd(), vcsFolderNa
22
22
  }
23
23
  const absTargetDir = path.resolve(targetDir);
24
24
  // 1. Locate repository root and bootstrap Node localSpace
25
- const { metaspace, localSpace, vcsPath, repoRoot } = await bootstrapVcsMetaspace({
25
+ const { metaspace, localSpace, vcsPath, repoRoot, foundVcsPath } = await bootstrapVcsMetaspace({
26
26
  repoPath: absTargetDir,
27
27
  vcsFolderName,
28
+ mustExist: true,
28
29
  });
30
+ if (!foundVcsPath) {
31
+ throw new Error(`fatal: not an ibgib repository (or any of the parent directories): ${vcsFolderName}`);
32
+ }
29
33
  // 2. Fetch authoritative in-band index from localSpace
30
34
  const indexIbGib = await getB2tFSIndexIbGib({ space: localSpace, metaspace });
31
35
  if (!indexIbGib) {
32
- throw new Error(`Not an ibgib repository (index not found in ${vcsPath})`);
36
+ throw new Error(`fatal: not an ibgib repository (index not found in ${vcsPath})`);
33
37
  }
34
38
  // 3. Determine active branch and worktree directory
35
39
  const activeBranchName = branchName || resolveContextualBranchName({
@@ -1 +1 @@
1
- {"version":3,"file":"vcs-repo-helper.mjs","sourceRoot":"","sources":["../../src/cli/vcs-repo-helper.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vcs-repo-helper.mjs","sourceRoot":"","sources":["../../src/cli/vcs-repo-helper.mts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ibgib/vcs-gib",
3
- "version": "0.0.34",
3
+ "version": "0.0.36",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "dist/index.mjs",
@@ -22,7 +22,7 @@
22
22
  "@ibgib/helper-gib": "^0.0.39",
23
23
  "@ibgib/ts-gib": "^0.5.36",
24
24
  "@ibgib/encrypt-gib": "^0.3.3",
25
- "@ibgib/core-gib": "^0.1.80",
26
- "@ibgib/node-gib": "^0.0.25"
25
+ "@ibgib/core-gib": "^0.1.81",
26
+ "@ibgib/node-gib": "^0.0.26"
27
27
  }
28
28
  }
@@ -2,4 +2,4 @@
2
2
  * @module AUTO-GENERATED-version
3
3
  * Auto-generated version constant. Do NOT edit directly.
4
4
  */
5
- export const AUTO_GENERATED_VERSION = '0.0.34';
5
+ export const AUTO_GENERATED_VERSION = '0.0.36';
@@ -37,6 +37,10 @@ export interface BootstrapVcsMetaspaceOpts {
37
37
  * Default space name for non-interactive headless testing. Defaults to 'vcs_space'
38
38
  */
39
39
  defaultSpaceName?: string;
40
+ /**
41
+ * If true, throws if .vcsgib is not found during upward discovery without initializing spaces.
42
+ */
43
+ mustExist?: boolean;
40
44
  }
41
45
 
42
46
  export interface BootstrapVcsMetaspaceResult {
@@ -44,6 +48,7 @@ export interface BootstrapVcsMetaspaceResult {
44
48
  localSpace: IbGibSpaceAny;
45
49
  vcsPath: string;
46
50
  repoRoot: string;
51
+ foundVcsPath?: string;
47
52
  }
48
53
 
49
54
  /**
@@ -94,6 +99,10 @@ export async function bootstrapVcsMetaspace(
94
99
  currentDir = parentDir;
95
100
  }
96
101
 
102
+ if (opts.mustExist && !foundVcsPath) {
103
+ throw new Error(`fatal: not an ibgib repository (or any of the parent directories): ${vcsFolderName}`);
104
+ }
105
+
97
106
  const vcsPath = foundVcsPath || path.resolve(repoPath, vcsFolderName);
98
107
  if (!foundVcsPath) {
99
108
  repoRoot = path.resolve(repoPath);
@@ -181,6 +190,7 @@ export async function bootstrapVcsMetaspace(
181
190
  localSpace,
182
191
  vcsPath,
183
192
  repoRoot,
193
+ foundVcsPath,
184
194
  };
185
195
  } catch (error: any) {
186
196
  console.error(`${lc} ${error?.message || error} (E: genuuid)`);
@@ -316,4 +316,124 @@ await respecfully(lc, `Full E2E CLI Integration Spec`, async () => {
316
316
  }
317
317
  });
318
318
 
319
+ await ifWe(lc, `fails gracefully with fatal error message on uninitialized repository`, async () => {
320
+ const uninitDir = path.join(process.cwd(), `.test_cli_e2e_uninit_${Date.now()}`);
321
+ await fs.mkdir(uninitDir, { recursive: true });
322
+
323
+ const origCwd = process.cwd();
324
+ const origError = console.error;
325
+ let capturedErrors: string[] = [];
326
+
327
+ console.error = (...args: any[]) => {
328
+ capturedErrors.push(args.join(' '));
329
+ };
330
+
331
+ try {
332
+ process.chdir(uninitDir);
333
+
334
+ // Execute status, commit, log, branch, checkout in uninitialized directory
335
+ const statusExitCode = await main({ argv: ['status'] });
336
+ iReckon(lc, statusExitCode).willEqual(1);
337
+
338
+ const commitExitCode = await main({ argv: ['commit', '-m', 'test'] });
339
+ iReckon(lc, commitExitCode).willEqual(1);
340
+
341
+ const logExitCode = await main({ argv: ['log'] });
342
+ iReckon(lc, logExitCode).willEqual(1);
343
+
344
+ const branchExitCode = await main({ argv: ['branch'] });
345
+ iReckon(lc, branchExitCode).willEqual(1);
346
+
347
+ const checkoutExitCode = await main({ argv: ['checkout', 'main'] });
348
+ iReckon(lc, checkoutExitCode).willEqual(1);
349
+
350
+ // Verify clean error messages without storage stack traces
351
+ const hasFatalMsg = capturedErrors.some(e => e.includes('fatal: not an ibgib repository'));
352
+ iReckon(lc, hasFatalMsg).isGonnaBeTrue();
353
+
354
+ const hasStorageError = capturedErrors.some(e => e.includes('couldn\'t get special'));
355
+ iReckon(lc, hasStorageError).isGonnaBeFalse();
356
+ } finally {
357
+ process.chdir(origCwd);
358
+ console.error = origError;
359
+ await fs.rm(uninitDir, { recursive: true, force: true });
360
+ }
361
+ });
362
+
363
+ await ifWe(lc, `preserves worktree state when checkout is executed from within secondary worktree`, async () => {
364
+ const testDir = path.join(process.cwd(), `.test_cli_e2e_worktree_${Date.now()}`);
365
+ const vcsFolderName = '.vcsgib';
366
+
367
+ const origCwd = process.cwd();
368
+
369
+ try {
370
+ process.chdir(testDir);
371
+ } catch {
372
+ await fs.mkdir(testDir, { recursive: true });
373
+ process.chdir(testDir);
374
+ }
375
+
376
+ try {
377
+ // 1. Init main repo
378
+ await executeInitCmd({
379
+ targetDir: testDir,
380
+ vcsFolderName,
381
+ quiet: true,
382
+ });
383
+
384
+ await fs.writeFile(path.join(testDir, 'main.txt'), 'content on main\n', 'utf8');
385
+ await executeAddCmd({ targetDir: testDir, vcsFolderName, all: true, quiet: true });
386
+ await executeCommitCmd({ targetDir: testDir, vcsFolderName, message: 'Commit on main', quiet: true });
387
+
388
+ // 2. Create feature branch
389
+ await executeBranchCmd({
390
+ targetDir: testDir,
391
+ vcsFolderName,
392
+ branchName: 'feature-strings',
393
+ quiet: true,
394
+ });
395
+
396
+ const worktreeDir = path.join(testDir, 'b', 'feature-strings');
397
+ await fs.mkdir(worktreeDir, { recursive: true });
398
+ const worktreeFile = path.join(worktreeDir, 'feature.txt');
399
+ await fs.writeFile(worktreeFile, 'content on feature branch\n', 'utf8');
400
+
401
+ // 3. Commit within secondary worktree
402
+ await executeAddCmd({ targetDir: worktreeDir, vcsFolderName, all: true, quiet: true });
403
+ await executeCommitCmd({ targetDir: worktreeDir, vcsFolderName, message: 'Commit on feature', quiet: true });
404
+
405
+ // 4. Run checkout main from within the secondary worktree directory
406
+ process.chdir(worktreeDir);
407
+ const checkoutRes = await executeCheckoutCmd({
408
+ targetDir: worktreeDir,
409
+ vcsFolderName,
410
+ branchName: 'main',
411
+ quiet: true,
412
+ });
413
+
414
+ iReckon(lc, checkoutRes.currentBranch).willEqual('main');
415
+
416
+ // 5. Verify feature.txt still exists untouched in b/feature-strings
417
+ const featureFileExists = await fs.stat(worktreeFile).then(s => s.isFile()).catch(() => false);
418
+ iReckon(lc, featureFileExists).isGonnaBeTrue();
419
+
420
+ const featureContent = await fs.readFile(worktreeFile, 'utf8');
421
+ iReckon(lc, featureContent).willEqual('content on feature branch\n');
422
+
423
+ // 6. Verify log from inside worktree succeeds and reflects feature branch history
424
+ const logRes = await executeLogCmd({
425
+ targetDir: worktreeDir,
426
+ vcsFolderName,
427
+ quiet: true,
428
+ });
429
+ iReckon(lc, logRes.branchName).willEqual('feature-strings');
430
+ iReckon(lc, logRes.commits.length).willEqual(2);
431
+ iReckon(lc, logRes.commits[0].message).willEqual('Commit on feature');
432
+ iReckon(lc, logRes.commits[1].message).willEqual('Commit on main');
433
+ } finally {
434
+ process.chdir(origCwd);
435
+ await fs.rm(testDir, { recursive: true, force: true });
436
+ }
437
+ });
438
+
319
439
  });
@@ -14,6 +14,7 @@ import { B2TFS_BRANCH_DEFAULT_NAME } from '@ibgib/core-gib/dist/vcs/branch/branc
14
14
 
15
15
  import { GLOBAL_LOG_A_LOT } from '../../vcs-gib-constants.mjs';
16
16
  import { bootstrapVcsMetaspace } from '../../bootstrap/node-bootstrap.mjs';
17
+ import { getB2tFSIndexIbGib } from '@ibgib/core-gib/dist/vcs/index/index-helper.mjs';
17
18
  import { writeVcsIndexProjectionToDisk } from '../vcs-projection-helper.mjs';
18
19
 
19
20
  const lcFile = `[init-cmd]`;
@@ -46,12 +47,27 @@ export async function executeInitCmd({
46
47
  await fs.mkdir(absTargetDir, { recursive: true });
47
48
 
48
49
  // 2. Bootstrap Metaspace and localSpace (creates .vcsgib on disk)
49
- const { metaspace, localSpace } = await bootstrapVcsMetaspace({
50
+ const { metaspace, localSpace, foundVcsPath } = await bootstrapVcsMetaspace({
50
51
  repoPath: absTargetDir,
51
52
  vcsFolderName,
52
53
  defaultSpaceName: `vcs_${path.basename(absTargetDir).replace(/[^a-zA-Z0-9_\-]/g, '_')}`,
53
54
  });
54
55
 
56
+ if (foundVcsPath) {
57
+ const existingIndex = await getB2tFSIndexIbGib({ space: localSpace, metaspace });
58
+ if (existingIndex) {
59
+ if (!quiet) {
60
+ console.log(`Reinitialized existing ibgib repository in ${vcsPath}`);
61
+ }
62
+ return {
63
+ vcsPath,
64
+ spaceId: existingIndex.data.activeSpaceId,
65
+ branchName: existingIndex.data.activeBranchName || defaultBranchName,
66
+ rootItemIb: '',
67
+ };
68
+ }
69
+ }
70
+
55
71
  // 3. Facade instantiation and domain init
56
72
  const repo = new VcsRepository({
57
73
  metaspace,
@@ -183,7 +183,25 @@ export async function main({
183
183
 
184
184
  return 0;
185
185
  } catch (error) {
186
- console.error(`Error: ${extractErrorMsg(error)} (E: genuuid)`);
186
+ let rawMsg = extractErrorMsg(error);
187
+ // Strip trailing internal UUID / error markers like (E: ...)
188
+ const cleanMsg = rawMsg.replace(/\s*\(E:\s*[a-f0-9-]+\)\s*$/i, '').trim();
189
+
190
+ if (cleanMsg.startsWith('fatal:') || cleanMsg.startsWith('error:')) {
191
+ console.error(cleanMsg);
192
+ } else if (cleanMsg.toLowerCase().includes('nothing to commit')) {
193
+ console.error('nothing to commit, working tree clean');
194
+ } else if (cleanMsg.toLowerCase().includes('already exists')) {
195
+ const branchMatch = cleanMsg.match(/["']([^"']+)["']/);
196
+ const name = branchMatch ? branchMatch[1] : '';
197
+ console.error(name ? `fatal: a branch named '${name}' already exists.` : `fatal: ${cleanMsg}`);
198
+ } else if (cleanMsg.toLowerCase().includes('not found in indexibgib') || cleanMsg.toLowerCase().includes('not found on branch')) {
199
+ const branchMatch = cleanMsg.match(/\(([^)]+)\)/) || cleanMsg.match(/['"]([^'"]+)['"]/);
200
+ const name = branchMatch ? branchMatch[1] : '';
201
+ console.error(name ? `error: pathspec '${name}' did not match any file(s) known to ibgib` : `error: ${cleanMsg}`);
202
+ } else {
203
+ console.error(`fatal: ${cleanMsg}`);
204
+ }
187
205
  return 1;
188
206
  } finally {
189
207
  if (logalot) {
@@ -45,15 +45,20 @@ export async function openVcsRepository({
45
45
  const absTargetDir = path.resolve(targetDir);
46
46
 
47
47
  // 1. Locate repository root and bootstrap Node localSpace
48
- const { metaspace, localSpace, vcsPath, repoRoot } = await bootstrapVcsMetaspace({
48
+ const { metaspace, localSpace, vcsPath, repoRoot, foundVcsPath } = await bootstrapVcsMetaspace({
49
49
  repoPath: absTargetDir,
50
50
  vcsFolderName,
51
+ mustExist: true,
51
52
  });
52
53
 
54
+ if (!foundVcsPath) {
55
+ throw new Error(`fatal: not an ibgib repository (or any of the parent directories): ${vcsFolderName}`);
56
+ }
57
+
53
58
  // 2. Fetch authoritative in-band index from localSpace
54
59
  const indexIbGib = await getB2tFSIndexIbGib({ space: localSpace, metaspace });
55
60
  if (!indexIbGib) {
56
- throw new Error(`Not an ibgib repository (index not found in ${vcsPath})`);
61
+ throw new Error(`fatal: not an ibgib repository (index not found in ${vcsPath})`);
57
62
  }
58
63
 
59
64
  // 3. Determine active branch and worktree directory