borgmcp 0.9.45 → 0.9.47

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.
@@ -7,6 +7,10 @@ export interface RoleLike {
7
7
  id: string;
8
8
  name: string;
9
9
  }
10
+ export declare class EmptyRoleRecipientError extends Error {
11
+ readonly recipient: string;
12
+ constructor(recipient: string);
13
+ }
10
14
  export declare function normalizeDirectLogRecipients(value: unknown): string[];
11
15
  export declare function resolveDirectLogRecipientIds(recipients: string[], drones: DroneLike[], roles?: RoleLike[]): string[];
12
16
  //# sourceMappingURL=direct-log.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"direct-log.d.ts","sourceRoot":"","sources":["../src/direct-log.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,CAQrE;AAED,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,MAAM,EAAE,EACpB,MAAM,EAAE,SAAS,EAAE,EACnB,KAAK,GAAE,QAAQ,EAAO,GACrB,MAAM,EAAE,CAwCV"}
1
+ {"version":3,"file":"direct-log.d.ts","sourceRoot":"","sources":["../src/direct-log.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;gBAEf,SAAS,EAAE,MAAM;CAO9B;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,CAQrE;AAED,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,MAAM,EAAE,EACpB,MAAM,EAAE,SAAS,EAAE,EACnB,KAAK,GAAE,QAAQ,EAAO,GACrB,MAAM,EAAE,CAsCV"}
@@ -1,4 +1,12 @@
1
1
  import { roleSlug } from './role-resolver.js';
2
+ export class EmptyRoleRecipientError extends Error {
3
+ recipient;
4
+ constructor(recipient) {
5
+ super(`Direct-message role recipient has no active drones: ${recipient}. Use borg:roster to find active recipients, or omit to broadcast if your role can broadcast.`);
6
+ this.name = 'EmptyRoleRecipientError';
7
+ this.recipient = recipient;
8
+ }
9
+ }
2
10
  export function normalizeDirectLogRecipients(value) {
3
11
  if (value == null)
4
12
  return [];
@@ -31,7 +39,7 @@ export function resolveDirectLogRecipientIds(recipients, drones, roles = []) {
31
39
  }
32
40
  const roleDrones = drones.filter((drone) => drone.role_id === uniqueRoleIds[0]);
33
41
  if (roleDrones.length === 0) {
34
- throw new Error(`Direct-message role recipient has no active drones: ${recipient}. Use borg:roster to find active recipients, or omit to broadcast if your role can broadcast.`);
42
+ throw new EmptyRoleRecipientError(recipient);
35
43
  }
36
44
  for (const drone of roleDrones)
37
45
  ids.add(drone.id);
@@ -1 +1 @@
1
- {"version":3,"file":"direct-log.js","sourceRoot":"","sources":["../src/direct-log.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"direct-log.js","sourceRoot":"","sources":["../src/direct-log.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -13,8 +13,8 @@
13
13
  import { Server } from '@modelcontextprotocol/sdk/server/index.js';
14
14
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
15
15
  import { CallToolRequestSchema, ListToolsRequestSchema, ListPromptsRequestSchema, GetPromptRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
16
- import { assimilate, getCubeInfo, getRoleInfo, getRoster, readLog, appendLog, ackLogEntry, regen, listCubes, createCube, updateCube, deleteCube, createRole, updateRole, deleteRole, reassignDrone, getCube, checkSubscriptionStatus, createSubscription, syncRoles, whoami, API_URL, } from './remote-client.js';
17
- import { getTemplate, listTemplateNames, resolveCubeDirectiveForCreate, resolveCubeDirectiveForApply, } from './templates.js';
16
+ import { assimilate, getCubeInfo, getRoleInfo, getRoster, readLog, appendLog, ackLogEntry, regen, listCubes, createCube, updateCube, deleteCube, createRole, updateRole, patchRoleSection, patchTaxonomyClass, deleteRole, reassignDrone, getCube, checkSubscriptionStatus, createSubscription, syncRoles, applyTemplate, whoami, API_URL, } from './remote-client.js';
17
+ import { getTemplate, listTemplateNames, resolveCubeDirectiveForCreate, resolveCubeDirectiveForApply, resolveMessageTaxonomyForCreate, } from './templates.js';
18
18
  import { getActiveCube, setActiveCube, inboxPathForDrone, getProjectCliPreference } from './cubes.js';
19
19
  import { addSessionStartHook, addUserPromptSubmitHook } from './config-utils.js';
20
20
  import { humanAgo, formatLogEntryMarkdown, formatRegenMarkdown, getDronePlaybook } from './regen-format.js';
@@ -23,50 +23,28 @@ import { renderRoleList } from './list-roles-render.js';
23
23
  import { getPackageVersion, getOnDiskVersion, handleVersionFlag } from './version.js';
24
24
  import { renderStreamStatus, checkInboxMonitorHealthy, formatWakePathPrefix, shouldShowWakePathWarning, } from './stream-status.js';
25
25
  import { renderRoster } from './roster-render.js';
26
+ import { renderSyncRolesResult } from './sync-roles-render.js';
26
27
  import { initConsolePrefix, consolePrefix } from './console-prefix.js';
27
28
  import { isCodexRemoteWakeEnabled } from './codex-app-wake.js';
28
29
  import { lifecycleSignalForMessage, recordLifecycleLog, shouldSuppressLifecycleLog, } from './lifecycle-log-guard.js';
29
- import { normalizeDirectLogRecipients, resolveDirectLogRecipientIds, } from './direct-log.js';
30
+ import { normalizeDirectLogRecipients, } from './direct-log.js';
31
+ import { resolveLogRoutingDefaults } from './message-routing.js';
30
32
  import open from 'open';
31
33
  import os from 'os';
32
34
  /**
33
- * Apply a template's roles to a cube. Roles are merged by name:
34
- * - existing role with same name → updateRole with the template's fields
35
- * - no existing role with that name createRole
36
- * Returns counts for the caller to report.
35
+ * Apply a template's roles + message_taxonomy to a cube.
36
+ *
37
+ * gh#473 PR2 delegates to the NON-CLOBBERING server route. New roles
38
+ * are inserted; existing template-named roles get ADD fragments (template
39
+ * sections/classes the cube lacks) auto-applied, but EVOLVED (conflicting)
40
+ * fragments are surfaced server-side and KEPT — never silently
41
+ * overwritten. The old per-role blanket `updateRole`/whole-taxonomy
42
+ * `updateCube` overwrite path is removed. Operators who want to take the
43
+ * template version of a conflicting fragment use `borg:sync-roles` with a
44
+ * `decisions` map. Returns `{ created, updated }` for the caller's toast.
37
45
  */
38
- async function applyTemplateToCube(cubeId, templateRoles) {
39
- const { roles: existing } = await getCube(cubeId);
40
- const byName = new Map(existing.map((r) => [r.name, r]));
41
- let created = 0;
42
- let updated = 0;
43
- for (const tr of templateRoles) {
44
- const match = byName.get(tr.name);
45
- if (match) {
46
- await updateRole(match.id, {
47
- short_description: tr.short_description,
48
- detailed_description: tr.detailed_description,
49
- is_default: tr.is_default === true,
50
- is_human_seat: tr.is_human_seat === true,
51
- can_broadcast: tr.can_broadcast === true,
52
- receives_all_direct: tr.receives_all_direct === true,
53
- });
54
- updated += 1;
55
- }
56
- else {
57
- await createRole(cubeId, {
58
- name: tr.name,
59
- short_description: tr.short_description,
60
- detailed_description: tr.detailed_description,
61
- is_default: tr.is_default === true,
62
- is_human_seat: tr.is_human_seat === true,
63
- can_broadcast: tr.can_broadcast === true,
64
- receives_all_direct: tr.receives_all_direct === true,
65
- });
66
- created += 1;
67
- }
68
- }
69
- return { created, updated };
46
+ async function applyTemplateToCube(cubeId, template) {
47
+ return await applyTemplate(cubeId, template.name);
70
48
  }
71
49
  /**
72
50
  * Throw a friendly error if the client has not been assimilated to a cube.
@@ -307,7 +285,7 @@ async function main() {
307
285
  },
308
286
  {
309
287
  name: 'borg:log',
310
- description: 'Append a message to the cube\'s activity log. By default the entry is broadcast to all drones; pass `to: [...]` to send a direct entry delivered only to the addressed drone(s) plus observer roles. When strict broadcast-gating is active, only roles granted broadcast permission may broadcast other roles address their entries with `to:`.',
288
+ description: 'Append a message to the cube\'s activity log. By default entries broadcast to all drones. When a cube declares a message taxonomy, borg:log applies class-based smart defaults: prefix-matched directed classes route to their default recipients unless you pass `to:`, `class:`, or explicit visibility. Pass `to: [...]` to direct by exact drone label, drone id, role name, or role slug.',
311
289
  inputSchema: {
312
290
  type: 'object',
313
291
  properties: {
@@ -317,6 +295,10 @@ async function main() {
317
295
  items: { type: 'string' },
318
296
  description: 'Optional direct-message recipients by exact drone label, drone id, role name, or role slug (resolves to all drones in that role). Omit to broadcast.',
319
297
  },
298
+ class: {
299
+ type: 'string',
300
+ description: 'Optional declared message class. Overrides prefix auto-classification when the cube declares a message taxonomy.',
301
+ },
320
302
  },
321
303
  required: ['message'],
322
304
  },
@@ -366,6 +348,30 @@ async function main() {
366
348
  required: ['cube_id'],
367
349
  },
368
350
  },
351
+ {
352
+ name: 'borg:patch-taxonomy-class',
353
+ description: "Surgically patch ONE message-class within a cube's message_taxonomy, leaving other classes unchanged. Use this instead of borg:update-cube when adding/changing a single class so you don't resend (and risk clobbering) the whole taxonomy. action=add appends a new class; action=replace overwrites the class with the same name (case-insensitive); action=remove drops a class. The whole resulting taxonomy is re-validated (non-overlapping prefixes, unique class names, directed classes need default_to) — a single-class patch that breaks a cross-class rule against an untouched class is rejected.",
354
+ inputSchema: {
355
+ type: 'object',
356
+ properties: {
357
+ cube_id: { type: 'string', description: 'UUID of the cube to patch.' },
358
+ action: { type: 'string', enum: ['add', 'replace', 'remove'], description: 'add / replace / remove a single class.' },
359
+ class_def: {
360
+ type: 'object',
361
+ description: 'The class definition (for add/replace). Shape: { class, prefixes?, routing: "broadcast"|"directed", default_to? }.',
362
+ properties: {
363
+ class: { type: 'string', description: 'Unique class name.' },
364
+ prefixes: { type: 'array', items: { type: 'string' }, description: 'Message prefixes routed by this class.' },
365
+ routing: { type: 'string', enum: ['broadcast', 'directed'], description: 'Routing mode.' },
366
+ default_to: { type: 'array', items: { type: 'string' }, description: 'Default recipients (required for directed classes).' },
367
+ },
368
+ required: ['class', 'routing'],
369
+ },
370
+ class: { type: 'string', description: 'For remove only: the name of the class to drop (case-insensitive).' },
371
+ },
372
+ required: ['cube_id', 'action'],
373
+ },
374
+ },
369
375
  {
370
376
  name: 'borg:delete-cube',
371
377
  description: 'Delete a cube and all its roles, drones, and log entries. Irreversible — confirm with the user before invoking unless the cube is clearly disposable.',
@@ -413,6 +419,21 @@ async function main() {
413
419
  required: ['role_id'],
414
420
  },
415
421
  },
422
+ {
423
+ name: 'borg:patch-role-section',
424
+ description: "Surgically patch ONE named section of a role's detailed_description, leaving the rest of the field byte-identical. Sections are delimited by plain-label lines (e.g. `Workflow:`, `Project conventions:`) — NOT markdown headings; text before the first label is the preamble. Use this instead of borg:update-role when changing a single section so you don't have to resend (and risk clobbering) the whole playbook. action=replace overwrites a section's body; action=insert adds a new section (optionally after a named one, else appended); action=delete removes a section.",
425
+ inputSchema: {
426
+ type: 'object',
427
+ properties: {
428
+ role_id: { type: 'string', description: 'UUID of the role to patch.' },
429
+ action: { type: 'string', enum: ['replace', 'insert', 'delete'], description: 'replace / insert / delete a single section.' },
430
+ heading: { type: 'string', description: 'The section label WITHOUT the trailing colon (e.g. "Workflow"). Matched case-insensitively.' },
431
+ body: { type: 'string', description: 'New text BELOW the heading (for replace/insert). Omit for delete.' },
432
+ after: { type: 'string', description: 'For insert only: place the new section after the section with this heading. Omit/null to append at the end.' },
433
+ },
434
+ required: ['role_id', 'action', 'heading'],
435
+ },
436
+ },
416
437
  {
417
438
  name: 'borg:delete-role',
418
439
  description: 'Delete a role. Refuses if any drone is still assigned — reassign or evict those drones from the dashboard first.',
@@ -466,7 +487,7 @@ async function main() {
466
487
  },
467
488
  {
468
489
  name: 'borg:apply-template',
469
- description: 'Apply a named template to an existing cube. Roles are merged by name: existing roles with the same name get their fields overwritten; new ones are created. Use this to retrofit an existing cube with a richer role set (e.g. add Coordinator/Reviewer/UX Expert to a cube that started bare).',
490
+ description: 'Apply a named template to an existing cube, NON-CLOBBERINGLY. Roles are merged by name: new roles are created; existing template-named roles get template sections/classes the cube LACKS auto-applied, but EVOLVED (conflicting) text is preserved, never overwritten. Use this to retrofit an existing cube with a richer role set (e.g. add Coordinator/Reviewer/UX Expert). To review + selectively accept conflicting fragments, use borg:sync-roles (which surfaces each conflict + takes per-fragment accept decisions).',
470
491
  inputSchema: {
471
492
  type: 'object',
472
493
  properties: {
@@ -478,13 +499,18 @@ async function main() {
478
499
  },
479
500
  {
480
501
  name: 'borg:sync-roles',
481
- description: 'Sync an existing cube\'s roles against the current built-in template. Unlike apply-template (which unconditionally overwrites), sync-roles shows a diff of what would change and only applies with explicit --apply. Use this to bring existing cubes up to date with template improvements (e.g. updated role descriptions from new sprints) without overwriting custom roles.',
502
+ description: 'Non-clobbering sync of an existing cube\'s roles + message_taxonomy against the current built-in template. The dry-run (default) classifies each FRAGMENT (role-text section, short_description, role flags, or taxonomy class) as ADD (the cube lacks it — safe auto-apply), UNCHANGED, or CONFLICT (the cube has EVOLVED text that differs from the template). On apply, ADDs auto-apply; CONFLICTs are applied ONLY when you explicitly accept them via `decisions` (keyed on the stable fragment key shown in the dry-run, e.g. `role:Builder:section:Workflow`). Unspecified conflicts default to KEEP (reject) your cube\'s evolved coordination text is NEVER silently overwritten. Custom roles (names not in the template) are never touched.',
482
503
  inputSchema: {
483
504
  type: 'object',
484
505
  properties: {
485
506
  cube_id: { type: 'string', description: 'UUID of the cube to sync.' },
486
507
  template_name: { type: 'string', description: 'Template to sync against (default: software-dev).' },
487
- apply: { type: 'boolean', description: 'If true, apply changes. If false (default), dry-run only — preview what would change.' },
508
+ apply: { type: 'boolean', description: 'If true, commit (auto-apply ADDs + accepted conflicts). If false (default), dry-run only — classify + surface conflicts.' },
509
+ decisions: {
510
+ type: 'object',
511
+ description: 'Per-conflict accept/reject map, keyed on the fragment key from the dry-run (e.g. {"role:Builder:section:Workflow":"accept"}). Unspecified conflicts default to "reject" (keep the cube version).',
512
+ additionalProperties: { type: 'string', enum: ['accept', 'reject'] },
513
+ },
488
514
  },
489
515
  required: ['cube_id'],
490
516
  },
@@ -832,17 +858,19 @@ async function main() {
832
858
  }
833
859
  }
834
860
  const recipients = normalizeDirectLogRecipients(args?.to);
835
- let appendOpts = {};
836
- if (recipients.length > 0) {
837
- const { drones, roles } = await getRoster(active.sessionToken, active.apiUrl);
838
- appendOpts = {
839
- visibility: 'direct',
840
- recipientDroneIds: resolveDirectLogRecipientIds(recipients, drones, roles),
841
- };
842
- }
861
+ const explicitClass = typeof args?.class === 'string' ? args.class : null;
862
+ const { drones, roles, message_taxonomy: messageTaxonomy } = await getRoster(active.sessionToken, active.apiUrl);
863
+ const { appendOpts, echo } = resolveLogRoutingDefaults({
864
+ message,
865
+ taxonomy: messageTaxonomy ?? null,
866
+ drones,
867
+ roles,
868
+ explicitClass,
869
+ explicitRecipients: recipients,
870
+ });
843
871
  const result = await appendLog(active.sessionToken, active.apiUrl, message, appendOpts);
844
872
  await recordLifecycleLog(active, message);
845
- const text = `Logged to cube "${active.name}" as ${active.droneLabel}. (entry id: ${result.entry.id})`;
873
+ const text = `Logged to cube "${active.name}" as ${active.droneLabel}. (entry id: ${result.entry.id})${echo ? `\n${echo}` : ''}`;
846
874
  return { content: [{ type: 'text', text }] };
847
875
  }
848
876
  case 'borg:ack': {
@@ -890,12 +918,15 @@ async function main() {
890
918
  // v0.9.2: createCube now returns the flat shape directly
891
919
  // (see remote-client unwrap). `cube.id` / `cube.name` work
892
920
  // verbatim on the returned object.
893
- const cube = await createCube(name, resolvedCubeDirective);
921
+ const resolvedMessageTaxonomy = resolveMessageTaxonomyForCreate(undefined, template);
922
+ const cube = await createCube(name, resolvedCubeDirective, {
923
+ message_taxonomy: resolvedMessageTaxonomy,
924
+ });
894
925
  // Apply template roles if requested. Merges by name: any role the
895
926
  // server auto-seeded (e.g. "Drone") that the template doesn't
896
927
  // also include stays put; templated roles upsert.
897
928
  if (template) {
898
- const summary = await applyTemplateToCube(cube.id, template.roles);
929
+ const summary = await applyTemplateToCube(cube.id, template);
899
930
  const cubeDirectiveNote = resolvedCubeDirective !== cubeDirective
900
931
  ? ' Template cube directive applied (operator passed empty).'
901
932
  : '';
@@ -919,6 +950,34 @@ async function main() {
919
950
  const { cube } = await updateCube(cubeId, updates);
920
951
  return { content: [{ type: 'text', text: `Updated cube **${cube.name}** (id: ${cube.id}).` }] };
921
952
  }
953
+ case 'borg:patch-taxonomy-class': {
954
+ const cubeId = args?.cube_id;
955
+ if (!cubeId)
956
+ throw new Error('cube_id is required');
957
+ const action = args?.action;
958
+ if (action !== 'add' && action !== 'replace' && action !== 'remove') {
959
+ throw new Error('action must be one of: add, replace, remove.');
960
+ }
961
+ let cube;
962
+ let label;
963
+ if (action === 'remove') {
964
+ const className = args?.class;
965
+ if (!className)
966
+ throw new Error('class is required for remove.');
967
+ ({ cube } = await patchTaxonomyClass(cubeId, { action, class: className }));
968
+ label = className;
969
+ }
970
+ else {
971
+ const classDef = args?.class_def;
972
+ if (classDef == null || typeof classDef !== 'object' || Array.isArray(classDef)) {
973
+ throw new Error('class_def (object) is required for add/replace.');
974
+ }
975
+ ({ cube } = await patchTaxonomyClass(cubeId, { action, class_def: classDef }));
976
+ label = String(classDef.class ?? '');
977
+ }
978
+ const verb = action === 'add' ? 'Added' : action === 'replace' ? 'Replaced' : 'Removed';
979
+ return { content: [{ type: 'text', text: `${verb} taxonomy class **${label}** in cube **${cube.name}** (id: ${cube.id}).` }] };
980
+ }
922
981
  case 'borg:delete-cube': {
923
982
  const cubeId = args?.cube_id;
924
983
  if (!cubeId)
@@ -990,6 +1049,37 @@ async function main() {
990
1049
  const tag = tags ? ` (${tags})` : '';
991
1050
  return { content: [{ type: 'text', text: `Updated role **${role.name}**${tag} (id: ${role.id}).` }] };
992
1051
  }
1052
+ case 'borg:patch-role-section': {
1053
+ const roleId = args?.role_id;
1054
+ if (!roleId)
1055
+ throw new Error('role_id is required');
1056
+ const action = args?.action;
1057
+ if (action !== 'replace' && action !== 'insert' && action !== 'delete') {
1058
+ throw new Error('action must be one of: replace, insert, delete.');
1059
+ }
1060
+ const heading = args?.heading;
1061
+ if (!heading)
1062
+ throw new Error('heading is required');
1063
+ let role;
1064
+ if (action === 'delete') {
1065
+ ({ role } = await patchRoleSection(roleId, { action, heading }));
1066
+ }
1067
+ else {
1068
+ const body = args?.body;
1069
+ if (typeof body !== 'string') {
1070
+ throw new Error('body is required for replace/insert (pass empty string for an empty section).');
1071
+ }
1072
+ if (action === 'insert') {
1073
+ const after = (typeof args?.after === 'string' ? args.after : null);
1074
+ ({ role } = await patchRoleSection(roleId, { action, heading, body, after }));
1075
+ }
1076
+ else {
1077
+ ({ role } = await patchRoleSection(roleId, { action, heading, body }));
1078
+ }
1079
+ }
1080
+ const verb = action === 'replace' ? 'Replaced' : action === 'insert' ? 'Inserted' : 'Deleted';
1081
+ return { content: [{ type: 'text', text: `${verb} section **${heading}** in role **${role.name}** (id: ${role.id}).` }] };
1082
+ }
993
1083
  case 'borg:delete-role': {
994
1084
  const roleId = args?.role_id;
995
1085
  if (!roleId)
@@ -1049,45 +1139,17 @@ async function main() {
1049
1139
  const cubeId = args?.cube_id;
1050
1140
  const templateName = args?.template_name || 'software-dev';
1051
1141
  const apply = args?.apply === true;
1142
+ // gh#473 PR2 — per-conflict-fragment accept/reject decisions.
1143
+ // Keyed on the stable fragment key surfaced by the dry-run (e.g.
1144
+ // `role:Builder:section:Workflow`). Unspecified conflicts default
1145
+ // to REJECT (keep the cube's evolved text).
1146
+ const decisions = args?.decisions && typeof args.decisions === 'object'
1147
+ ? args.decisions
1148
+ : undefined;
1052
1149
  if (!cubeId)
1053
1150
  throw new Error('cube_id is required');
1054
- const result = await syncRoles(cubeId, templateName, apply);
1055
- const mode = result.dryRun ? '**DRY RUN** (pass `apply: true` to commit)' : '**APPLIED**';
1056
- const lines = [
1057
- `## borg:sync-roles — ${mode}`,
1058
- `Template: ${templateName}`,
1059
- '',
1060
- ];
1061
- if (result.updated.length > 0) {
1062
- lines.push(`**Updated** (${result.updated.length}):`);
1063
- if (result.dryRun) {
1064
- lines.push('> **Warning**: `--apply` will OVERWRITE these fields with template text. If you\'ve customized any of these roles, review the before/after below before applying.');
1065
- }
1066
- for (const u of result.updated) {
1067
- lines.push(`- **${u.name}** — fields: ${u.fields.join(', ')}`);
1068
- if (u.changes) {
1069
- for (const c of u.changes) {
1070
- lines.push(` - \`${c.field}\`: "${c.before}" → "${c.after}"`);
1071
- }
1072
- }
1073
- }
1074
- }
1075
- if (result.added.length > 0) {
1076
- lines.push(`**Added** (${result.added.length}):`);
1077
- for (const a of result.added) {
1078
- lines.push(`- ${a.name}`);
1079
- }
1080
- }
1081
- if (result.unchanged.length > 0) {
1082
- lines.push(`**Unchanged** (${result.unchanged.length}): ${result.unchanged.map((u) => u.name).join(', ')}`);
1083
- }
1084
- if (result.skipped.length > 0) {
1085
- lines.push(`**Skipped** (${result.skipped.length}):`);
1086
- for (const s of result.skipped) {
1087
- lines.push(`- ${s.name} — ${s.reason}`);
1088
- }
1089
- }
1090
- return { content: [{ type: 'text', text: lines.join('\n') }] };
1151
+ const result = await syncRoles(cubeId, templateName, apply, decisions);
1152
+ return { content: [{ type: 'text', text: renderSyncRolesResult(result, templateName) }] };
1091
1153
  }
1092
1154
  case 'borg:apply-template': {
1093
1155
  const cubeId = args?.cube_id;
@@ -1100,7 +1162,7 @@ async function main() {
1100
1162
  if (!template) {
1101
1163
  throw new Error(`Unknown template "${templateName}". Available: ${listTemplateNames().join(', ')}`);
1102
1164
  }
1103
- const summary = await applyTemplateToCube(cubeId, template.roles);
1165
+ const summary = await applyTemplateToCube(cubeId, template);
1104
1166
  // Sprint 14: optionally write template's cube_directive to the
1105
1167
  // cube. No-clobber discipline — only fills empty directives,
1106
1168
  // never overwrites operator-customized text.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}