@uipath/maestro-builder-sdk 6.66.8 → 6.66.9

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.
@@ -213,6 +213,12 @@ export function serializeInlineAgent(s, ctx) {
213
213
  // agent's resources[] for agent-tool resource nodes" (MST-9265's own wording)
214
214
  // — derived, so a recompile is not a diff.
215
215
  const toolRefs = s.tools === undefined ? [] : Array.isArray(s.tools) ? s.tools : [s.tools];
216
+ // A connector tool with no library cannot be lowered, but it is not the
217
+ // agent's only rule: the refusal is held until the whole agent has been
218
+ // judged (its other tools, their labels, every resource's nodeId and
219
+ // source), then thrown. Thrown at the tool, it hid those, and `check` (which
220
+ // drops LIBRARY_REQUIRED, failing open) passed the agent (#1518).
221
+ let libraryRequired;
216
222
  for (const tr of toolRefs) {
217
223
  // An entry that is no object (null, a hole, a string) has no kind at all.
218
224
  if (tr === null || typeof tr !== 'object')
@@ -268,7 +274,12 @@ export function serializeInlineAgent(s, ctx) {
268
274
  const where = `inline agent "${step}"'s connector tool "${tr.connector}/${tr.operation}"`;
269
275
  ctx.resolveBinding(tr.connection, 'connection', where, { key: tr.connector, action: tr.operation });
270
276
  ctx.resolveBinding(tr.folder, 'folder', where, { key: tr.connector, action: tr.operation });
271
- throw new CompileRefusal('LIBRARY_REQUIRED', `inline agent "${step}"'s connector tool needs a library (pass --library / set $FLOW_SDK_LIBRARY_JSON).`);
277
+ // Its node id is still claimed, as with a library, so the ids derived
278
+ // for the tools after it, and another resource's `nodeId` that takes
279
+ // one, are judged as compile with a library judges them.
280
+ ctx.resourceNodeId(tr.nodeId, `${step}Tool`, `inline agent "${step}": connector tool "${tr.name ?? tr.operation}"`);
281
+ libraryRequired ??= new CompileRefusal('LIBRARY_REQUIRED', `inline agent "${step}"'s connector tool needs a library (pass --library / set $FLOW_SDK_LIBRARY_JSON).`);
282
+ continue;
272
283
  }
273
284
  const rc = ctx.library.resolve(tr.connector, tr.operation, tr.version, tr.object);
274
285
  // An entry `prepare` synthesized from Integration Service compiles in BPMN
@@ -538,6 +549,8 @@ export function serializeInlineAgent(s, ctx) {
538
549
  }
539
550
  if (compositeInput)
540
551
  throw compositeInput;
552
+ if (libraryRequired)
553
+ throw libraryRequired;
541
554
  return {
542
555
  definition: { source: 'snapshot', nodeType: def.nodeType, version: def.version, manifest: def },
543
556
  // Unlike the published families the inline agent KEEPS no node-level model:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uipath/maestro-builder-sdk",
3
- "version": "6.66.8",
3
+ "version": "6.66.9",
4
4
  "description": "Build UiPath Flow, Case, and BPMN artifacts by writing TypeScript.",
5
5
  "license": "MIT",
6
6
  "homepage": "https://docs.uipath.com/maestro",
@@ -100,5 +100,5 @@
100
100
  "@types/node": "^22.7.0",
101
101
  "esbuild": "^0.28.1"
102
102
  },
103
- "gitref": "4800f0ca4d2a58eed272d12640145fc039e43a16"
103
+ "gitref": "91832f175b4f44a12bd4b0046fccd7bbeb968172"
104
104
  }