borgmcp 2.6.1 → 2.7.1

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.
@@ -1,6 +1,12 @@
1
1
  import { NEW_CUBE_TEMPLATE_PRESENTATIONS, LEGACY_DEFAULT_TEMPLATE_LABEL, } from 'borgmcp-shared/templates';
2
2
  import { shellEscape } from './shell-escape.js';
3
3
  import { BorgServerError, CubeCreationConfirmationError, CubeCreationOutcomeUnknownError, } from './server-errors.js';
4
+ const NEW_CUBE_TEMPLATE_NAMES = NEW_CUBE_TEMPLATE_PRESENTATIONS.map(({ name }) => name);
5
+ const NEW_CUBE_TEMPLATE_OPTIONS = NEW_CUBE_TEMPLATE_NAMES.join('|');
6
+ const NEW_CUBE_TEMPLATE_LIST = NEW_CUBE_TEMPLATE_NAMES.join(', ');
7
+ function parseNewCubeTemplate(value) {
8
+ return NEW_CUBE_TEMPLATE_PRESENTATIONS.find(({ name }) => name === value)?.name;
9
+ }
4
10
  export class RepositoryAssociationSaveError extends Error {
5
11
  constructor() {
6
12
  super('repository association could not be saved');
@@ -65,7 +71,7 @@ function renderResult(deps, input) {
65
71
  lines.push('No drone was created.', `Next: borg assimilate --host ${shellEscape(input.serverOrigin)}`);
66
72
  }
67
73
  else {
68
- lines.push('Continuing with role and seat setup...');
74
+ lines.push('Continuing with role and seat setup');
69
75
  }
70
76
  resultWriter(`${lines.join('\n')}\n`);
71
77
  }
@@ -76,6 +82,7 @@ export async function initializeRepositoryCube(input, deps) {
76
82
  input.flags.template !== undefined || input.flags.noTemplate === true || input.flags.yes === true;
77
83
  const creationOptionsUnused = association !== null && creationOptionsRequested;
78
84
  if (association) {
85
+ deps.write(`Checking for this repository's cube on ${input.serverOrigin}…\n`);
79
86
  const cube = await deps.getCube(association.cubeId);
80
87
  const response = {
81
88
  result: 'resolved',
@@ -133,6 +140,7 @@ export async function initializeRepositoryCube(input, deps) {
133
140
  });
134
141
  return { kind: 'success', creation: { response, cube }, existing: true };
135
142
  };
143
+ deps.write(`Checking for this repository's cube on ${input.serverOrigin}…\n`);
136
144
  const serverAssociation = await deps.resolveAssociation(repository, input.context.derivedName);
137
145
  if (serverAssociation.result === 'resolved') {
138
146
  return saveResolvedAssociation(serverAssociation, {
@@ -155,8 +163,13 @@ export async function initializeRepositoryCube(input, deps) {
155
163
  return { kind: 'stop', code: 1 };
156
164
  }
157
165
  if (!deps.isTTY() || input.flags.yes) {
158
- deps.write('Adopting an existing cube requires interactive confirmation; --yes is not accepted here.\n' +
159
- 'Rerun without --yes in an interactive terminal. No cube, repository binding, or drone was created.\n');
166
+ const retryCommand = input.mode === 'cube-init'
167
+ ? `borg server cube init --host ${shellEscape(input.serverOrigin)}`
168
+ : `borg assimilate --host ${shellEscape(input.serverOrigin)}`;
169
+ deps.write(`Found existing cube '${matches[0].name}' on ${input.serverOrigin}.\n` +
170
+ 'Linking a repository to an existing cube requires one interactive confirmation.\n' +
171
+ `Run ${retryCommand} --cube-name ${shellEscape(matches[0].name)} once in an interactive terminal to link it; scripted runs work from then on.\n` +
172
+ 'No cube, repository binding, or drone was created.\n');
160
173
  return { kind: 'stop', code: 1 };
161
174
  }
162
175
  deps.write(`Found an existing cube matching this repository:\n` +
@@ -164,18 +177,19 @@ export async function initializeRepositoryCube(input, deps) {
164
177
  ` repository: ${input.context.root}\n` +
165
178
  ` server: ${input.serverOrigin}\n`);
166
179
  while (true) {
167
- const answer = await ask(deps, 'Link this repository to that cube? [y/N]: ', 'adoption');
180
+ const answer = await ask(deps, 'Link this repository to that cube? [Y/n]: ', 'adoption');
168
181
  if ('stop' in answer)
169
182
  return { kind: 'stop', code: answer.stop };
170
183
  const confirmation = answer.value.trim().toLowerCase();
171
- if (confirmation === 'y' || confirmation === 'yes')
184
+ if (confirmation === '' || confirmation === 'y' || confirmation === 'yes')
172
185
  break;
173
- if (confirmation === '' || confirmation === 'n' || confirmation === 'no') {
186
+ if (confirmation === 'n' || confirmation === 'no') {
174
187
  deps.write('No cube, repository binding, or drone was created.\n');
175
188
  return { kind: 'stop', code: 0 };
176
189
  }
177
190
  deps.write('Enter y or n.\n');
178
191
  }
192
+ deps.write(`Linking this repository to cube '${matches[0].name}'…\n`);
179
193
  const associated = await deps.associateCube({
180
194
  cubeId: matches[0].id,
181
195
  workingRepoName: input.context.derivedName,
@@ -189,7 +203,11 @@ export async function initializeRepositoryCube(input, deps) {
189
203
  if (confirmed.result !== 'resolved' || confirmed.cube_id !== associated.cube_id) {
190
204
  throw new RepositoryAssociationConfirmationError();
191
205
  }
192
- return await saveResolvedAssociation(confirmed, { adopted: true, creationOptionsUnused: creationOptionsRequested });
206
+ return await saveResolvedAssociation(confirmed, {
207
+ adopted: true,
208
+ creationOptionsUnused: input.flags.template !== undefined ||
209
+ input.flags.noTemplate === true,
210
+ });
193
211
  }
194
212
  catch (error) {
195
213
  if (error instanceof RepositoryAssociationSaveError)
@@ -208,16 +226,19 @@ export async function initializeRepositoryCube(input, deps) {
208
226
  return { kind: 'stop', code: 1 };
209
227
  }
210
228
  if (input.flags.noTemplate) {
211
- deps.write('--no-template is not supported for repository cube creation. Use --template software-dev or --template starter.\n');
229
+ deps.write(`--no-template is not supported for repository cube creation. Use --template ${NEW_CUBE_TEMPLATE_OPTIONS}.\n`);
212
230
  return { kind: 'stop', code: 1 };
213
231
  }
214
- if (input.flags.template !== undefined && input.flags.template !== 'software-dev' && input.flags.template !== 'starter') {
232
+ const requestedTemplate = input.flags.template === undefined
233
+ ? undefined
234
+ : parseNewCubeTemplate(input.flags.template);
235
+ if (input.flags.template !== undefined && requestedTemplate === undefined) {
215
236
  const safe = input.flags.template.replace(/[\u0000-\u001f\u007f]/g, '?').slice(0, 120);
216
- deps.write(`Unknown template '${safe}'. Use software-dev or starter.\n`);
237
+ deps.write(`Unknown template '${safe}'. Available templates: ${NEW_CUBE_TEMPLATE_LIST}.\n`);
217
238
  return { kind: 'stop', code: 1 };
218
239
  }
219
240
  if (!deps.isTTY() && !input.flags.yes && (!input.flags.cubeName || !input.flags.template)) {
220
- deps.write('Non-interactive cube creation requires --cube-name <name> and --template software-dev|starter, or --yes to use repository defaults.\n');
241
+ deps.write(`Non-interactive cube creation requires --cube-name <name> and --template ${NEW_CUBE_TEMPLATE_OPTIONS}, or --yes to use repository defaults.\n`);
221
242
  return { kind: 'stop', code: 1 };
222
243
  }
223
244
  deps.write(`Create a cube for this repository\n` +
@@ -244,7 +265,7 @@ export async function initializeRepositoryCube(input, deps) {
244
265
  if (editedNameAdoption)
245
266
  return editedNameAdoption;
246
267
  }
247
- let template = input.flags.template;
268
+ let template = requestedTemplate;
248
269
  if (!template && deps.isTTY() && !input.flags.yes) {
249
270
  let menu = 'Choose a template:\n';
250
271
  for (let i = 0; i < NEW_CUBE_TEMPLATE_PRESENTATIONS.length; i += 1) {
@@ -259,24 +280,21 @@ export async function initializeRepositoryCube(input, deps) {
259
280
  if ('stop' in answer)
260
281
  return { kind: 'stop', code: answer.stop };
261
282
  const selected = answer.value.trim();
262
- if (selected === '' || selected === '1')
263
- template = 'software-dev';
264
- else if (selected === '2')
265
- template = 'starter';
283
+ const selectedIndex = selected === ''
284
+ ? 0
285
+ : /^[1-9]\d*$/.test(selected) ? Number(selected) - 1 : -1;
286
+ const selectedPresentation = NEW_CUBE_TEMPLATE_PRESENTATIONS[selectedIndex];
287
+ if (selectedPresentation)
288
+ template = selectedPresentation.name;
266
289
  else
267
- deps.write('Choose 1 or 2.\n');
290
+ deps.write(`Choose 1-${NEW_CUBE_TEMPLATE_PRESENTATIONS.length}.\n`);
268
291
  }
269
292
  }
270
- template ??= 'software-dev';
293
+ template ??= NEW_CUBE_TEMPLATE_PRESENTATIONS[0].name;
271
294
  if (deps.isTTY() && !input.flags.yes) {
272
- deps.write(`Create this cube?\n` +
273
- ` Name: ${name}\n` +
274
- ` Template: ${presentation(template).label}\n` +
275
- ` Repository: ${input.context.root}\n` +
276
- ` Server: ${input.serverOrigin}\n`);
277
295
  let confirmed = false;
278
296
  while (!confirmed) {
279
- const answer = await ask(deps, 'Create cube? [Y/n]: ');
297
+ const answer = await ask(deps, `Create cube '${name}' (${presentation(template).label}) on ${input.serverOrigin}? [Y/n]: `);
280
298
  if ('stop' in answer)
281
299
  return { kind: 'stop', code: answer.stop };
282
300
  const confirmation = answer.value.trim().toLowerCase();
@@ -291,7 +309,7 @@ export async function initializeRepositoryCube(input, deps) {
291
309
  deps.write('Enter y or n.\n');
292
310
  }
293
311
  }
294
- deps.write('Creating cube...\n');
312
+ deps.write(`Creating cube '${name}'…\n`);
295
313
  const workingRepoName = input.context.derivedName;
296
314
  let creation;
297
315
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"repository-cube-init.js","sourceRoot":"","sources":["../src/repository-cube-init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repository-cube-init.js","sourceRoot":"","sources":["../src/repository-cube-init.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,+BAA+B,EAC/B,6BAA6B,GAC9B,MAAM,0BAA0B,CAAC;AASlC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAKhD,OAAO,EACL,eAAe,EACf,6BAA6B,EAC7B,+BAA+B,GAChC,MAAM,oBAAoB,CAAC;AAgB5B,MAAM,uBAAuB,GAC3B,+BAA+B,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;AAC1D,MAAM,yBAAyB,GAAG,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACpE,MAAM,sBAAsB,GAAG,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAElE,SAAS,oBAAoB,CAAC,KAAa;IACzC,OAAO,+BAA+B,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,IAAI,CAAC;AAClF,CAAC;AAwCD,MAAM,OAAO,8BAA+B,SAAQ,KAAK;IACvD;QACE,KAAK,CAAC,2CAA2C,CAAC,CAAC;QACnD,IAAI,CAAC,IAAI,GAAG,gCAAgC,CAAC;IAC/C,CAAC;CACF;AAED,MAAM,OAAO,sCAAuC,SAAQ,KAAK;IAC/D;QACE,KAAK,CAAC,kEAAkE,CAAC,CAAC;QAC1E,IAAI,CAAC,IAAI,GAAG,wCAAwC,CAAC;IACvD,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAC/C;QACE,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;IACvC,CAAC;CACF;AAED,MAAM,UAAU,GAAG,oGAAoG,CAAC;AAExH,MAAM,UAAU,uBAAuB,CAAC,KAAa;IACnD,OAAO,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,GAAG,IAAI,+BAA+B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAChG,CAAC;AAED,SAAS,YAAY,CAAC,QAAsB;IAC1C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,6BAA6B,EAAE,CAAC;IAClE,CAAC;IACD,OAAO,+BAA+B,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,QAAQ,CAAE,CAAC;AAC3F,CAAC;AAED,KAAK,UAAU,GAAG,CAChB,IAA4B,EAC5B,OAAe,EACf,YAAqC,UAAU;IAE/C,IAAI,CAAC;QACH,OAAO,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;IAC/C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,sBAAsB,EAAE,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,UAAU,SAAS,kEAAkE,CAAC,CAAC;YAClG,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,2BAA2B,SAAS,wDAAwD,CAAC,CAAC;QACzG,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACrB,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CACnB,IAA4B,EAC5B,KAQC;IAED,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,KAAK,CAAC;IACpD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO;QAC3B,CAAC,CAAC,gDAAgD;QAClD,CAAC,CAAC,KAAK,CAAC,QAAQ;YACd,CAAC,CAAC,2BAA2B;YAC7B,CAAC,CAAC,eAAe,CAAC;IACtB,MAAM,KAAK,GAAG;QACZ,KAAK,CAAC,IAAI,KAAK,WAAW;YACxB,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,GAAG,IAAI,OAAO,EAAE;YAClE,CAAC,CAAC,OAAO;QACX,WAAW,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE;QAChC,eAAe,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE;QAC5D,iBAAiB,KAAK,CAAC,IAAI,EAAE;QAC7B,aAAa,KAAK,CAAC,YAAY,EAAE;KAClC,CAAC;IACF,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,gFAAgF,CAAC,CAAC;IAC/F,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CACR,uBAAuB,EACvB,gCAAgC,WAAW,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAClE,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;IACrD,CAAC;IACD,YAAY,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,KAM9C,EAAE,IAA4B;IAC7B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IAC1D,MAAM,wBAAwB,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS;QACjE,KAAK,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC,UAAU,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC;IACpG,MAAM,qBAAqB,GAAG,WAAW,KAAK,IAAI,IAAI,wBAAwB,CAAC;IAC/E,IAAI,WAAW,EAAE,CAAC;QAChB,IAAI,CAAC,KAAK,CAAC,0CAA0C,KAAK,CAAC,YAAY,KAAK,CAAC,CAAC;QAC9E,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAuB;YACnC,MAAM,EAAE,UAAU;YAClB,OAAO,EAAE,WAAW,CAAC,MAAM;YAC3B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,iBAAiB,EAAE,WAAW,CAAC,eAAe;YAC9C,UAAU;YACV,QAAQ,EAAE,WAAW,CAAC,QAAQ;YAC9B,kBAAkB,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE;YAC3E,sBAAsB,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,IAAI,EAAE;YAC5E,MAAM,EAAE,QAAQ;SACjB,CAAC;QACF,YAAY,CAAC,IAAI,EAAE;YACjB,QAAQ,EAAE,IAAI;YACd,QAAQ;YACR,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI;YACxB,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,qBAAqB;SACtB,CAAC,CAAC;QACH,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC3E,CAAC;IAED,MAAM,uBAAuB,GAAG,KAAK,EACnC,QAAgC,EAChC,OAA6D,EAC1B,EAAE;QACrC,IACE,QAAQ,CAAC,UAAU,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI;YAC5C,QAAQ,CAAC,UAAU,CAAC,KAAK,KAAK,UAAU,CAAC,KAAK;YAC9C,QAAQ,CAAC,iBAAiB,KAAK,KAAK,CAAC,OAAO,CAAC,WAAW,EACxD,CAAC;YACD,MAAM,IAAI,sCAAsC,EAAE,CAAC;QACrD,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAClD,IACE,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,OAAO;YAC5B,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI;YAC3B,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,kBAAkB,CAAC;YACnE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,sBAAsB,CAAC,EACvE,CAAC;YACD,MAAM,IAAI,sCAAsC,EAAE,CAAC;QACrD,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE;gBACrC,MAAM,EAAE,QAAQ,CAAC,OAAO;gBACxB,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,eAAe,EAAE,QAAQ,CAAC,iBAAiB;gBAC3C,QAAQ,EAAE,QAAQ,CAAC,QAAQ;aAC5B,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,8BAA8B,EAAE,CAAC;QAC7C,CAAC;QACD,YAAY,CAAC,IAAI,EAAE;YACjB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ;YACR,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI;YACxB,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;SACrD,CAAC,CAAC;QACH,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC3E,CAAC,CAAC;IAEF,IAAI,CAAC,KAAK,CAAC,0CAA0C,KAAK,CAAC,YAAY,KAAK,CAAC,CAAC;IAC9E,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC/F,IAAI,iBAAiB,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAC5C,OAAO,uBAAuB,CAAC,iBAAiB,EAAE;YAChD,OAAO,EAAE,KAAK;YACd,qBAAqB,EAAE,wBAAwB;SAChD,CAAC,CAAC;IACL,CAAC;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;IAC/E,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC,EAAE,CAAC;QAC3C,IAAI,CAAC,KAAK,CAAC,GAAG,UAAU,IAAI,CAAC,CAAC;QAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACnC,CAAC;IACD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;IAC/C,MAAM,eAAe,GAAG,KAAK,EAAE,IAAY,EAA4C,EAAE;QACvF,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QACrE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACtC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,2CAA2C,IAAI,2HAA2H,CAAC,CAAC;YACvL,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QACnC,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YACrC,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,KAAK,WAAW;gBAC7C,CAAC,CAAC,gCAAgC,WAAW,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;gBACnE,CAAC,CAAC,0BAA0B,WAAW,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;YAChE,IAAI,CAAC,KAAK,CACR,wBAAwB,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,KAAK,CAAC,YAAY,KAAK;gBACtE,mFAAmF;gBACnF,OAAO,YAAY,gBAAgB,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iFAAiF;gBAChJ,sDAAsD,CACvD,CAAC;YACF,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QACnC,CAAC;QACD,IAAI,CAAC,KAAK,CACR,oDAAoD;YACpD,iBAAiB,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI;YACpC,iBAAiB,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI;YACvC,iBAAiB,KAAK,CAAC,YAAY,IAAI,CACxC,CAAC;QACF,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,4CAA4C,EAAE,UAAU,CAAC,CAAC;YACzF,IAAI,MAAM,IAAI,MAAM;gBAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;YACjE,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACvD,IAAI,YAAY,KAAK,EAAE,IAAI,YAAY,KAAK,GAAG,IAAI,YAAY,KAAK,KAAK;gBAAE,MAAM;YACjF,IAAI,YAAY,KAAK,GAAG,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;gBAClD,IAAI,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;gBACnE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YACnC,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAChC,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,oCAAoC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC;QACtE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC;YAC1C,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;YACrB,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW;YAC1C,UAAU;SACX,CAAC,CAAC;QACH,IAAI,UAAU,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,IAAI,sCAAsC,EAAE,CAAC;QACrD,CAAC;QACD,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACvF,IAAI,SAAS,CAAC,MAAM,KAAK,UAAU,IAAI,SAAS,CAAC,OAAO,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC;gBAChF,MAAM,IAAI,sCAAsC,EAAE,CAAC;YACrD,CAAC;YACD,OAAO,MAAM,uBAAuB,CAAC,SAAS,EAAE;gBAC9C,OAAO,EAAE,IAAI;gBACb,qBAAqB,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS;oBACvD,KAAK,CAAC,KAAK,CAAC,UAAU,KAAK,IAAI;aAClC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,8BAA8B;gBAAE,MAAM,KAAK,CAAC;YACjE,MAAM,IAAI,sCAAsC,EAAE,CAAC;QACrD,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,CAAC;IAC7D,IAAI,gBAAgB;QAAE,OAAO,gBAAgB,CAAC;IAE9C,IAAI,KAAK,CAAC,SAAS,KAAK,KAAK,EAAE,CAAC;QAC9B,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,KAAK,WAAW;YAC7C,CAAC,CAAC,gCAAgC,WAAW,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;YACnE,CAAC,CAAC,0BAA0B,WAAW,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;QAChE,IAAI,CAAC,KAAK,CACR,gDAAgD,KAAK,CAAC,YAAY,mEAAmE,YAAY,KAAK,CACvJ,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACnC,CAAC;IAED,IAAI,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,+EAA+E,yBAAyB,KAAK,CAAC,CAAC;QAC1H,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACnC,CAAC;IACD,MAAM,iBAAiB,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS;QAC1D,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;QAC1E,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACvF,IAAI,CAAC,KAAK,CAAC,qBAAqB,IAAI,2BAA2B,sBAAsB,KAAK,CAAC,CAAC;QAC5F,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACnC,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1F,IAAI,CAAC,KAAK,CAAC,4EAA4E,yBAAyB,0CAA0C,CAAC,CAAC;QAC5J,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACnC,CAAC;IAED,IAAI,CAAC,KAAK,CACR,qCAAqC;QACrC,eAAe,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI;QACrC,WAAW,KAAK,CAAC,YAAY,IAAI,CAClC,CAAC;IAEF,IAAI,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;IACrE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAC9D,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,cAAc,KAAK,CAAC,OAAO,CAAC,WAAW,KAAK,CAAC,CAAC;YAC7E,IAAI,MAAM,IAAI,MAAM;gBAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;YACjE,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;YACxD,IAAI,uBAAuB,CAAC,IAAI,CAAC;gBAAE,MAAM;YACzC,IAAI,CAAC,KAAK,CAAC,GAAG,UAAU,IAAI,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IACD,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,GAAG,UAAU,IAAI,CAAC,CAAC;QAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACnC,CAAC;IACD,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QAC1B,MAAM,kBAAkB,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,kBAAkB;YAAE,OAAO,kBAAkB,CAAC;IACpD,CAAC;IAED,IAAI,QAAQ,GAAG,iBAAiB,CAAC;IACjC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAClD,IAAI,IAAI,GAAG,sBAAsB,CAAC;QAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,+BAA+B,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACnE,MAAM,CAAC,GAAG,+BAA+B,CAAC,CAAC,CAAC,CAAC;YAC7C,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,IAAI,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,MAAM,IAAI,CAAC;YAC5C,IAAI,IAAI,QAAQ,CAAC,CAAC,iBAAiB,IAAI,CAAC;QAC1C,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjB,OAAO,CAAC,QAAQ,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;YACjD,IAAI,MAAM,IAAI,MAAM;gBAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;YACjE,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACrC,MAAM,aAAa,GAAG,QAAQ,KAAK,EAAE;gBACnC,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,MAAM,oBAAoB,GAAG,+BAA+B,CAAC,aAAa,CAAC,CAAC;YAC5E,IAAI,oBAAoB;gBAAE,QAAQ,GAAG,oBAAoB,CAAC,IAAI,CAAC;;gBAC1D,IAAI,CAAC,KAAK,CAAC,YAAY,+BAA+B,CAAC,MAAM,KAAK,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IACD,QAAQ,KAAK,+BAA+B,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAErD,IAAI,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACrC,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,OAAO,CAAC,SAAS,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,MAAM,GAAG,CACtB,IAAI,EACJ,gBAAgB,IAAI,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC,KAAK,QAAQ,KAAK,CAAC,YAAY,WAAW,CAC5F,CAAC;YACF,IAAI,MAAM,IAAI,MAAM;gBAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;YACjE,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACvD,IAAI,YAAY,KAAK,EAAE,IAAI,YAAY,KAAK,GAAG,IAAI,YAAY,KAAK,KAAK,EAAE,CAAC;gBAC1E,SAAS,GAAG,IAAI,CAAC;gBACjB,MAAM;YACR,CAAC;YACD,IAAI,YAAY,KAAK,GAAG,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;gBAClD,IAAI,CAAC,KAAK,CAAC,+EAA+E,CAAC,CAAC;gBAC5F,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YACnC,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,kBAAkB,IAAI,MAAM,CAAC,CAAC;IACzC,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;IAClD,IAAI,QAAgC,CAAC;IACrC,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;IACpF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IACE,KAAK,YAAY,eAAe;YAChC,KAAK,YAAY,6BAA6B;YAC9C,KAAK,YAAY,+BAA+B,EAChD,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QACD,MAAM,IAAI,+BAA+B,EAAE,CAAC;IAC9C,CAAC;IACD,IAAI,SAAmC,CAAC;IACxC,IAAI,CAAC;QACH,SAAS,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IACzE,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,6BAA6B,CAAC,uEAAuE,CAAC,CAAC;IACnH,CAAC;IACD,IACE,SAAS,CAAC,MAAM,KAAK,UAAU;QAC/B,SAAS,CAAC,UAAU,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI;QAC7C,SAAS,CAAC,UAAU,CAAC,KAAK,KAAK,UAAU,CAAC,KAAK;QAC/C,SAAS,CAAC,iBAAiB,KAAK,eAAe;QAC/C,SAAS,CAAC,OAAO,KAAK,QAAQ,CAAC,QAAQ,CAAC,OAAO;QAC/C,SAAS,CAAC,IAAI,KAAK,QAAQ,CAAC,QAAQ,CAAC,IAAI;QACzC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,SAAS,CAAC,OAAO;QACtC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI;QACrC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,SAAS,CAAC,kBAAkB,CAAC;QAC7E,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,SAAS,CAAC,sBAAsB,CAAC,EACjF,CAAC;QACD,MAAM,IAAI,6BAA6B,CAAC,0FAA0F,CAAC,CAAC;IACtI,CAAC;IACD,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE;YACrC,MAAM,EAAE,SAAS,CAAC,OAAO;YACzB,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,eAAe,EAAE,SAAS,CAAC,iBAAiB;YAC5C,QAAQ,EAAE,SAAS,CAAC,QAAQ;SAC7B,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,8BAA8B,EAAE,CAAC;IAC7C,CAAC;IACD,YAAY,CAAC,IAAI,EAAE;QACjB,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,KAAK,UAAU;QACjD,QAAQ,EAAE,SAAS;QACnB,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI;QACxB,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,qBAAqB,EAAE,KAAK;KAC7B,CAAC,CAAC;IACH,OAAO;QACL,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE;QACtD,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,KAAK,UAAU;KAClD,CAAC;AACJ,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { CreateCubeRepository, CubeTemplate } from 'borgmcp-shared/protocol';
1
+ import { type CreateCubeRepository, type CubeTemplate } from 'borgmcp-shared/protocol';
2
2
  export interface GitRepositoryContext {
3
3
  root: string;
4
4
  commonDir: string;
@@ -1 +1 @@
1
- {"version":3,"file":"repository-identity.d.ts","sourceRoot":"","sources":["../src/repository-identity.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAalF,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,OAAO,CAAC,oBAAoB,EAAE;QAAE,IAAI,EAAE,QAAQ,CAAA;KAAE,CAAC,GAAG,IAAI,CAAC;IAC3E,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,YAAY,CAAC;CACxB;AAQD,MAAM,WAAW,sBAAsB;IACrC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK;QAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IAC5F,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAClD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAYD,wBAAsB,2BAA2B,CAC/C,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,sBAA2B,GAChC,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAyBtC;AA0ED,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,oBAAoB,EAC7B,IAAI,GAAE,sBAA2B,GAChC,OAAO,CAAC,oBAAoB,CAAC,CAa/B;AAMD,wBAAsB,wBAAwB,CAC5C,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,oBAAoB,EAChC,IAAI,GAAE,sBAA2B,GAChC,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAIvC;AAED,wBAAsB,yBAAyB,CAC7C,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,oBAAoB,EAChC,WAAW,EAAE,qBAAqB,EAClC,IAAI,GAAE,sBAA2B,GAChC,OAAO,CAAC,IAAI,CAAC,CAKf"}
1
+ {"version":3,"file":"repository-identity.d.ts","sourceRoot":"","sources":["../src/repository-identity.ts"],"names":[],"mappings":"AAIA,OAAO,EAAkB,KAAK,oBAAoB,EAAE,KAAK,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAavG,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,OAAO,CAAC,oBAAoB,EAAE;QAAE,IAAI,EAAE,QAAQ,CAAA;KAAE,CAAC,GAAG,IAAI,CAAC;IAC3E,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,YAAY,CAAC;CACxB;AAQD,MAAM,WAAW,sBAAsB;IACrC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK;QAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IAC5F,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAClD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAYD,wBAAsB,2BAA2B,CAC/C,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,sBAA2B,GAChC,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAyBtC;AA0ED,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,oBAAoB,EAC7B,IAAI,GAAE,sBAA2B,GAChC,OAAO,CAAC,oBAAoB,CAAC,CAa/B;AAMD,wBAAsB,wBAAwB,CAC5C,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,oBAAoB,EAChC,IAAI,GAAE,sBAA2B,GAChC,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAIvC;AAED,wBAAsB,yBAAyB,CAC7C,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,oBAAoB,EAChC,WAAW,EAAE,qBAAqB,EAClC,IAAI,GAAE,sBAA2B,GAChC,OAAO,CAAC,IAAI,CAAC,CAKf"}
@@ -2,6 +2,7 @@ import { createHmac, randomBytes, randomUUID } from 'node:crypto';
2
2
  import { spawnSync } from 'node:child_process';
3
3
  import { basename, isAbsolute, join } from 'node:path';
4
4
  import { realpath } from 'node:fs/promises';
5
+ import { CUBE_TEMPLATES } from 'borgmcp-shared/protocol';
5
6
  import { canonicalizeWorkingRepoIdentity } from './working-repo.js';
6
7
  import { normalizeCubeName } from './cube-name.js';
7
8
  import { borgConfigRoot, ensurePrivateBorgConfigRoot } from './private-root.js';
@@ -82,7 +83,7 @@ function parseState(raw) {
82
83
  !DISPLAY_NAME_RE.test(value.name) ||
83
84
  typeof value.workingRepoName !== 'string' || Buffer.byteLength(value.workingRepoName, 'utf8') > 120 ||
84
85
  !DISPLAY_NAME_RE.test(value.workingRepoName) ||
85
- (value.template !== 'software-dev' && value.template !== 'starter' && value.template !== 'default')) {
86
+ !CUBE_TEMPLATES.some((template) => template === value.template)) {
86
87
  throw new Error('Borg repository identity store is malformed or unsupported');
87
88
  }
88
89
  }
@@ -1 +1 @@
1
- {"version":3,"file":"repository-identity.js","sourceRoot":"","sources":["../src/repository-identity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repository-identity.js","sourceRoot":"","sources":["../src/repository-identity.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,7 @@ The extraction copied the monorepo's `client/src/` production boundary and top-l
22
22
  recovery, `2.0.2`, `2.0.3`, `2.0.4`, `2.0.5`, and `2.0.6` successors were
23
23
  published and registry-verified. The immutable `2.0.7` workflow failed before
24
24
  package creation or npm publication. The `2.0.8`, `2.0.9`, `2.0.10`, `2.0.11`,
25
- `2.1.0`, and `2.1.1` successors were published, and `2.2.0` was subsequently published, and `2.3.0` was subsequently published, and `2.4.0` was subsequently published, and `2.4.1` was subsequently published, and `2.5.0` was subsequently published, and `2.6.0` was subsequently published, so the next candidate identity is `2.6.1`. Extraction and
25
+ `2.1.0`, and `2.1.1` successors were published, and `2.2.0` was subsequently published, and `2.3.0` was subsequently published, and `2.4.0` was subsequently published, and `2.4.1` was subsequently published, and `2.5.0` was subsequently published, and `2.6.0` was subsequently published, and `2.6.1` was subsequently published, and `2.7.0` was subsequently published, so the next candidate identity is `2.7.1`. Extraction and
26
26
  versioning do not authorize publication.
27
27
 
28
28
  ## Review Holds
@@ -42,7 +42,7 @@ resolves to the audited registry `borgmcp-shared@0.7.0` with integrity
42
42
  `sha512-CLpQo3P/fE9GzC/R7Xw61LWxxsgcVLwmpGb5Ot5PDRe1Bvnf+EB31kiBdU5rvyvvPhiK4oUQtJAZE4ULFRAA2A==`.
43
43
  The matching `borgmcp-server@0.6.0` release is published with integrity
44
44
  `sha512-AUNn82ivcuWgcL6kPDI+6yNzJ1hf8F7NwWDRuZr60fInOe4FQPGxg0CD2kvuQlEB5c+OOv5qegPXQe1H8ENCLA==`
45
- and pins the same `borgmcp-shared@0.7.0` contract. Client `borgmcp@2.6.0` is published. The immutable `v2.0.7`
45
+ and pins the same `borgmcp-shared@0.7.0` contract. Client `borgmcp@2.7.0` is published. The immutable `v2.0.7`
46
46
  attempt failed before publication and remains preserved. Publication of the next
47
- candidate remains gated by reviewed `v2.6.1` source, a fresh annotated tag, and
47
+ candidate remains gated by reviewed `v2.7.1` source, a fresh annotated tag, and
48
48
  the exact-artifact and protected-publication gates.
@@ -37,7 +37,8 @@ Commands:
37
37
  Run borg server <command> --help for server command options.
38
38
  ```
39
39
 
40
- `borg server cube init --help` prints:
40
+ `borg server cube init --help` derives accepted template names from the pinned
41
+ shared release. Relevant options include:
41
42
 
42
43
  ```text
43
44
  borg server cube init (borgmcp <version>) — initialize this Git repository's cube without creating a drone
@@ -49,7 +50,7 @@ Options:
49
50
  --host <host> Borg server host or URL (bare hosts default to HTTPS)
50
51
  --enroll Prompt for a hidden enrollment invitation
51
52
  --cube-name <name> Repository cube name (otherwise edit the proposed name)
52
- --template software-dev|starter New-cube template (default: software-dev)
53
+ --template <name> New-cube template (default: recommended template)
53
54
  --yes, -y Accept new-cube defaults; never adopt by name
54
55
  --help, -h Show this help
55
56
 
@@ -102,11 +103,12 @@ match displays the cube, repository, and server and requires explicit interactiv
102
103
  confirmation before the server atomically associates it; multiple matches fail
103
104
  closed. `--yes` never adopts a cube by name. With no match, an authorized owner
104
105
  continues to the creation guide, which shows the repository and server, proposes
105
- an editable name, offers the Software Development and Starter templates, and
106
- asks for one confirmation. `--cube-name <name>` and `--template
107
- software-dev|starter` supply those creation values directly; `--yes` accepts the
108
- repository default name and Software Development template. `borg server cube
109
- init` stops after authoritative cube readback and never creates a drone. Bare
106
+ an editable name, offers every new-cube template shipped by the pinned shared
107
+ release with the recommended template first, and asks for one confirmation.
108
+ `--cube-name <name>` and `--template <name>` supply those creation values
109
+ directly; run either command with `--help` for the accepted template names.
110
+ `--yes` accepts the repository default name and recommended template. `borg
111
+ server cube init` stops after authoritative cube readback and never creates a drone. Bare
110
112
  repositories fail closed.
111
113
 
112
114
  For repositories with a canonical public `origin`, that origin is the stable
@@ -131,8 +133,8 @@ interactive terminal, or pass `borg assimilate --host <host>` to use an
131
133
  existing server. The server must be running and trusted before assimilation.
132
134
  An owner enrollment carrying the persisted `create_cube`
133
135
  capability creates one idempotent cube per repository during normal
134
- assimilation or `borg server cube init`, using Software Development or Starter;
135
- repeating an
136
+ assimilation or `borg server cube init`, using a template shipped by the pinned
137
+ shared release; repeating an
136
138
  ambiguous request does not duplicate the cube, and distinct repositories can
137
139
  create distinct bounded cubes. An ordinary enrolled client is denied before a
138
140
  create request is sent. Cloud-only capabilities fail explicitly rather than
package/docs/RELEASING.md CHANGED
@@ -148,8 +148,18 @@ Never move, replace, reuse, or rerun that tag or workflow. The annotated `v2.6.0
148
148
  `ef90006de0005e2fe2b35d36907a4656352e4abf`. Workflow run `30421261350`, attempt 1,
149
149
  successfully published that exact source as `borgmcp@2.6.0`; the same-run artifact report records integrity
150
150
  `sha512-KvJ5kuyMXH6Vd9tImV0zvXWhSj2Y68r09mAO3TqhsGAQM2XERcBPeEmrdp6VI1Z3KYMPjdg0bRvRW7CGonFl9w==`.
151
+ Never move, replace, reuse, or rerun that tag or workflow. The annotated `v2.6.1` tag object
152
+ `e65b9d43c4a5a7c12a4fafc6e3f1024f6d99c023` peels to protected-main commit
153
+ `902847186f5c4fc00f3610ee027e8f929b977670`. Workflow run `30427148267`, attempt 1,
154
+ successfully published that exact source as `borgmcp@2.6.1`; the same-run artifact report records integrity
155
+ `sha512-N0NIsD2D39d98vvjMkcFwMSn/UXHuHMdMTcuk3awfo6t5FHyd7BYhBsQXhpDuvdJK/02S8g0OdvfHUb827siYQ==`.
156
+ Never move, replace, reuse, or rerun that tag or workflow. The annotated `v2.7.0` tag object
157
+ `a9a7f75114548b6c383168164f0f59bb05c02b85` peels to protected-main commit
158
+ `a8d3c572dee3b90cf2a898768c45a1f46270fe11`. Workflow run `30440435955`, attempt 1,
159
+ successfully published that exact source as `borgmcp@2.7.0`; the same-run artifact report records integrity
160
+ `sha512-qn7ljuq/UwYzQJ5pWliLqD7Q5mlwk287ObOXbSV5FOcs+JdoXjFlb9NVC6bFoQzjHaWixCX600EAEtRZ0UeNPw==`.
151
161
  Never move, replace, reuse, or rerun that tag or workflow. The next candidate
152
- uses the unused `v2.6.1` identity from a fresh reviewed protected-main commit
162
+ uses the unused `v2.7.1` identity from a fresh reviewed protected-main commit
153
163
  and requires the complete release gate again.
154
164
 
155
165
  ## Release Prerequisites
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "borgmcp",
3
- "version": "2.6.1",
3
+ "version": "2.7.1",
4
4
  "description": "Coordinate AI coding agents in shared cubes. Works with Claude Code, Codex, and OpenCode.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -46,6 +46,7 @@ import { installBorgPlugin } from './opencode-plugin.js';
46
46
  import { computeOpenCodePort, connectOpenCodeDrone, createOpenCodeLaunchKickoff, injectInitialKickoff } from './opencode-drone.js';
47
47
  import { ensureCliMcpConfigured } from './ensure-mcp-config.js';
48
48
  import { normalizeServerEndpoint } from './server-endpoint.js';
49
+ import { DEFAULT_LOCAL_SERVER_ORIGIN } from './server-handshake.js';
49
50
  import {
50
51
  BorgServerError,
51
52
  CubeCreationConfirmationError,
@@ -394,14 +395,26 @@ async function selectAssimilationAuthority(
394
395
  // found"; an explicitly selected endpoint remains fail-closed below.
395
396
  }
396
397
 
398
+ let hostPrompt: string;
397
399
  if (detected) {
398
400
  const answer = await deps.prompt(
399
401
  `Local Borg server detected at ${detected}.\nConnect this project to it? [Y/n]: `,
400
402
  );
401
403
  if (affirmative(answer)) return { kind: 'server', apiUrl: detected };
404
+ hostPrompt =
405
+ 'Enter another Borg server host or URL (e.g. 127.0.0.1:7091 or https://server.local:7091; bare hosts default to HTTPS).\n' +
406
+ 'Borg server host or URL: ';
407
+ } else {
408
+ const rerunCommand = mode === 'cube-init' ? 'borg server cube init' : 'borg assimilate';
409
+ hostPrompt =
410
+ `No running Borg server was found at ${DEFAULT_LOCAL_SERVER_ORIGIN} (the default).\n` +
411
+ '- If your server runs on another host or port, enter it below (e.g. 127.0.0.1:7091 or https://server.local:7091; bare hosts default to HTTPS).\n' +
412
+ `- If your server is installed but stopped, run \`borg server start\`, then rerun \`${rerunCommand}\`.\n` +
413
+ '- If you do not have a server yet, cancel (Ctrl-C) and run `borg server setup`.\n' +
414
+ 'Borg server host or URL: ';
402
415
  }
403
416
 
404
- const host = await deps.prompt('Borg server host or URL: ');
417
+ const host = await deps.prompt(hostPrompt);
405
418
  try {
406
419
  return { kind: 'server', apiUrl: normalizeServerEndpoint(host) };
407
420
  } catch (error) {
package/src/cli-help.ts CHANGED
@@ -6,6 +6,11 @@
6
6
  * and cli-platform.ts.
7
7
  */
8
8
 
9
+ import { NEW_CUBE_TEMPLATE_PRESENTATIONS } from 'borgmcp-shared/templates';
10
+
11
+ const NEW_CUBE_TEMPLATE_OPTIONS = NEW_CUBE_TEMPLATE_PRESENTATIONS.map(({ name }) => name).join('|');
12
+ const DEFAULT_NEW_CUBE_TEMPLATE = NEW_CUBE_TEMPLATE_PRESENTATIONS[0].name;
13
+
9
14
  /** True for the standard help flags `--help` / `-h`. */
10
15
  export function isHelpFlag(arg: string | undefined): boolean {
11
16
  return arg === '--help' || arg === '-h';
@@ -91,7 +96,7 @@ export function cubeInitHelpText(version: string): string {
91
96
  ` --host <host> Borg server host or URL (bare hosts default to HTTPS)\n` +
92
97
  ` --enroll Prompt for a hidden enrollment invitation\n` +
93
98
  ` --cube-name <name> Repository cube name (otherwise edit the proposed name)\n` +
94
- ` --template software-dev|starter New-cube template (default: software-dev)\n` +
99
+ ` --template ${NEW_CUBE_TEMPLATE_OPTIONS} New-cube template (default: ${DEFAULT_NEW_CUBE_TEMPLATE})\n` +
95
100
  ` --yes, -y Accept new-cube defaults; never adopt by name\n` +
96
101
  ` --help, -h Show this help\n\n` +
97
102
  `An existing repository association skips all prompts. One accessible exact-name legacy\n` +
@@ -123,7 +128,7 @@ export function assimilateHelpText(version: string): string {
123
128
  ` --cube-name <name> Repository cube name (otherwise edit the proposed name)\n` +
124
129
  ` --host <host> Borg server host or URL (bare hosts default to HTTPS)\n` +
125
130
  ` --enroll Prompt for a hidden enrollment invitation in the operator terminal\n` +
126
- ` --template software-dev|starter New-cube template (default: software-dev)\n` +
131
+ ` --template ${NEW_CUBE_TEMPLATE_OPTIONS} New-cube template (default: ${DEFAULT_NEW_CUBE_TEMPLATE})\n` +
127
132
  ` --no-template Unsupported for repository cube creation\n` +
128
133
  ` --cli claude|codex|opencode Agent CLI to launch (default: claude)\n` +
129
134
  ` --model claude:<model> Legacy Claude model override (configure models in the agent CLI)\n` +
@@ -60,7 +60,7 @@ export type AgentKind = 'claude' | 'codex' | 'opencode';
60
60
  * Agent-branched on the existing env-agnostic signal (BORG_SESSION-style
61
61
  * `isCodexRemoteWakeEnabled`), NOT on a mutable server-recorded field:
62
62
  * - claude: arm the inbox-file tail Monitor, drain unread entries on every
63
- * wake, and re-arm the Monitor if it exits or is missing.
63
+ * wake, and re-arm the Monitor after an exit or whenever none is armed.
64
64
  * - codex: Borg's activity stream reaches the app-server remote-control inbox
65
65
  * channel; each wake is followed by an unread-log drain. Manual full regen
66
66
  * + drain is a degraded fallback when remote control is unavailable.
@@ -97,7 +97,7 @@ export function wakePathArming(
97
97
  'Arm your wake path before working:',
98
98
  `1. **Inbox Monitor** (wake path) — run a persistent Monitor on \`${monitorCommand}\` so cube posts wake you in real time.`,
99
99
  '2. **On every wake** — drain `borg_read-log unread_only=true`. If empty, resume prior work without a full regen or liveness post; safety probes may still wake.',
100
- '3. **Monitor recovery** — if the Monitor exits or is missing, re-arm it when the exit notification wakes you.',
100
+ '3. **Monitor recovery** — re-arm the Monitor when its exit notification wakes you, and whenever you notice no Monitor is armed.',
101
101
  ].join('\n');
102
102
  }
103
103