@cargo-ai/cdk 1.0.7 → 1.0.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.
Files changed (40) hide show
  1. package/README.md +0 -43
  2. package/build/src/cli/auth.d.ts.map +1 -1
  3. package/build/src/cli/auth.js +16 -12
  4. package/build/src/cli/commands/deploy.d.ts.map +1 -1
  5. package/build/src/cli/commands/deploy.js +81 -107
  6. package/build/src/cli/commands/from.d.ts.map +1 -1
  7. package/build/src/cli/commands/from.js +18 -8
  8. package/build/src/cli/commands/init.d.ts.map +1 -1
  9. package/build/src/cli/commands/init.js +13 -8
  10. package/build/src/cli/commands/inputTypes.d.ts +8 -0
  11. package/build/src/cli/commands/inputTypes.d.ts.map +1 -1
  12. package/build/src/cli/commands/inputTypes.js +117 -13
  13. package/build/src/cli/commands/types.d.ts.map +1 -1
  14. package/build/src/cli/commands/types.js +32 -13
  15. package/build/src/cli/io.js +2 -2
  16. package/build/src/cli/version.d.ts.map +1 -1
  17. package/build/src/cli/version.js +10 -6
  18. package/build/src/deploy/apply.d.ts.map +1 -1
  19. package/build/src/deploy/apply.js +37 -30
  20. package/build/src/deploy/compile.d.ts.map +1 -1
  21. package/build/src/deploy/compile.js +7 -5
  22. package/build/src/deploy/destroy.d.ts.map +1 -1
  23. package/build/src/deploy/destroy.js +24 -14
  24. package/build/src/deploy/executors.live.d.ts.map +1 -1
  25. package/build/src/deploy/executors.live.js +202 -173
  26. package/build/src/deploy/import.js +2 -2
  27. package/build/src/deploy/index.js +1 -1
  28. package/build/src/deploy/lock.d.ts.map +1 -1
  29. package/build/src/deploy/lock.js +13 -10
  30. package/build/src/deploy/readers.live.d.ts.map +1 -1
  31. package/build/src/deploy/readers.live.js +27 -15
  32. package/build/src/deploy/refresh.d.ts.map +1 -1
  33. package/build/src/deploy/refresh.js +20 -18
  34. package/build/src/refs.d.ts.map +1 -1
  35. package/build/src/refs.js +5 -1
  36. package/build/src/resources/actions.d.ts +1 -1
  37. package/build/src/resources/actions.d.ts.map +1 -1
  38. package/build/src/resources/actions.js +3 -2
  39. package/build/tsconfig.tsbuildinfo +1 -1
  40. package/package.json +3 -3
@@ -142,6 +142,9 @@ export function liveReaders(api) {
142
142
  }
143
143
  },
144
144
  async agent(entry) {
145
+ // Scope the not-found => GONE decision to the agent row only; the release
146
+ // fetch runs after (agentRelease maps its own not-found to null — "no
147
+ // deployed release yet", which must not be read as the agent being gone).
145
148
  let row;
146
149
  try {
147
150
  const { agent } = await api.ai.agent.get(entry.uuid);
@@ -159,10 +162,17 @@ export function liveReaders(api) {
159
162
  return present({ row, release: await agentRelease(entry.uuid) });
160
163
  },
161
164
  async play(entry) {
162
- const { plays } = await api.orchestration.play.list();
163
- const play = plays.find((p) => p["uuid"] === entry.uuid);
164
- if (play === undefined)
165
- return GONE;
165
+ // Scope the not-found => GONE decision to the play row only; the workflow
166
+ // fetch runs after (workflowNodes maps its own not-found to null — "no
167
+ // deployed workflow yet", which must not be read as the play being gone).
168
+ let play;
169
+ try {
170
+ const result = await api.orchestration.play.get(entry.uuid);
171
+ play = result.play;
172
+ }
173
+ catch (error) {
174
+ return goneOrThrow(error);
175
+ }
166
176
  const row = pick(play, [
167
177
  "name",
168
178
  "description",
@@ -177,10 +187,16 @@ export function liveReaders(api) {
177
187
  return present({ row, workflow: await workflowNodes(wf) });
178
188
  },
179
189
  async tool(entry) {
180
- const { tools } = await api.orchestration.tool.all();
181
- const tool = tools.find((t) => t["uuid"] === entry.uuid);
182
- if (tool === undefined)
183
- return GONE;
190
+ // See `play`: only the tool row's not-found means GONE; the workflow
191
+ // fetch's not-found (null) does not.
192
+ let tool;
193
+ try {
194
+ const result = await api.orchestration.tool.get(entry.uuid);
195
+ tool = result.tool;
196
+ }
197
+ catch (error) {
198
+ return goneOrThrow(error);
199
+ }
184
200
  const row = pick(tool, [
185
201
  "name",
186
202
  "icon",
@@ -325,15 +341,11 @@ export function liveReaders(api) {
325
341
  return goneOrThrow(error);
326
342
  }
327
343
  },
328
- // No per-uuid get list all and find by the state uuid. Fingerprint only
329
- // the join fields the executor reconciles.
344
+ // Fingerprint only the join fields the executor reconciles.
330
345
  async relationship(entry) {
331
346
  try {
332
- const { relationships } = await api.storage.relationship.all();
333
- const found = relationships.find((r) => r.uuid === entry.uuid);
334
- if (found === undefined)
335
- return GONE;
336
- return present(pick(found, [
347
+ const { relationship } = await api.storage.relationship.get(entry.uuid);
348
+ return present(pick(relationship, [
337
349
  "fromModelUuid",
338
350
  "fromColumnSlug",
339
351
  "fromPropertySlug",
@@ -1 +1 @@
1
- {"version":3,"file":"refresh.d.ts","sourceRoot":"","sources":["../../../src/deploy/refresh.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAKtD,MAAM,MAAM,QAAQ,GAAG;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAKjE,MAAM,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,UAAU,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAClE,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;AAE3D,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;AAE3E,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,WAAW,CAAC;CACrB,CAAC;AAEF,gFAAgF;AAChF,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAQlD;AAMD;;;;;;GAMG;AACH,wBAAsB,WAAW,CAC/B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,EAAE,CAAC,CA4BvB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,KAAK,CAavE"}
1
+ {"version":3,"file":"refresh.d.ts","sourceRoot":"","sources":["../../../src/deploy/refresh.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAKtD,MAAM,MAAM,QAAQ,GAAG;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAKjE,MAAM,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,UAAU,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAClE,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;AAE3D,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;AAE3E,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,WAAW,CAAC;CACrB,CAAC;AAEF,gFAAgF;AAChF,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAQlD;AAoBD;;;;;;GAMG;AACH,wBAAsB,WAAW,CAC/B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,EAAE,CAAC,CAuBvB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,KAAK,CAavE"}
@@ -16,6 +16,17 @@ export function fingerprint(value) {
16
16
  function kindOf(id) {
17
17
  return id.slice(0, id.indexOf(":"));
18
18
  }
19
+ // Read one resource live, tolerating failures. A read error (network, auth,
20
+ // unexpected) must NOT look like a deletion — return undefined so detectDrift
21
+ // records "unknown" rather than mass-recreating on a transient failure.
22
+ async function readLive(reader, entry) {
23
+ try {
24
+ return reader === undefined ? { exists: true } : await reader(entry);
25
+ }
26
+ catch {
27
+ return undefined;
28
+ }
29
+ }
19
30
  /**
20
31
  * Read every state-tracked resource live and classify drift:
21
32
  * - deleted — gone from the workspace (re-deploy would recreate it)
@@ -28,27 +39,18 @@ export async function detectDrift(state, readers) {
28
39
  for (const [id, entry] of Object.entries(state.resources)) {
29
40
  const kind = kindOf(id);
30
41
  const reader = readers[kind];
31
- // A read error (network, auth, unexpected) must NOT look like a deletion —
32
- // record it as "unknown" so `deploy --refresh` never mass-recreates on a
33
- // transient failure.
34
- let live;
35
- try {
36
- live = reader === undefined ? { exists: true } : await reader(entry);
37
- }
38
- catch {
42
+ const live = await readLive(reader, entry);
43
+ if (live === undefined) {
39
44
  drift.push({ id, kind, status: "unknown" });
40
45
  continue;
41
46
  }
42
- let status;
43
- if (!live.exists) {
44
- status = "deleted";
45
- }
46
- else if (entry.live === undefined || live.fingerprint === undefined) {
47
- status = "unknown";
48
- }
49
- else {
50
- status = live.fingerprint === entry.live ? "unchanged" : "modified";
51
- }
47
+ const status = live.exists === false
48
+ ? "deleted"
49
+ : entry.live === undefined || live.fingerprint === undefined
50
+ ? "unknown"
51
+ : live.fingerprint === entry.live
52
+ ? "unchanged"
53
+ : "modified";
52
54
  drift.push({ id, kind, status });
53
55
  }
54
56
  return drift;
@@ -1 +1 @@
1
- {"version":3,"file":"refs.d.ts","sourceRoot":"","sources":["../../src/refs.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAEvC,MAAM,MAAM,eAAe,GACvB,WAAW,GACX,SAAS,GACT,OAAO,GACP,QAAQ,GACR,MAAM,GACN,MAAM,GACN,OAAO,GACP,QAAQ,GACR,SAAS,CAAC;AAEd,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,IAAI;IACrE,QAAQ,CAAC,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;AACpD,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;AAChD,MAAM,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;AAC5C,MAAM,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;AAC9C,MAAM,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAC1C,MAAM,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAC1C,MAAM,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;AAC5C,MAAM,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;AAC9C,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;AAEhD,uEAAuE;AACvE,eAAO,MAAM,YAAY,SAAU,MAAM,KAAG,YAG1C,CAAC;AACH,+EAA+E;AAC/E,eAAO,MAAM,UAAU,SAAU,MAAM,KAAG,UAGxC,CAAC;AACH,sCAAsC;AACtC,eAAO,MAAM,QAAQ,SAAU,MAAM,KAAG,QAGtC,CAAC;AACH,kCAAkC;AAClC,eAAO,MAAM,SAAS,SAAU,MAAM,KAAG,SAGvC,CAAC;AACH,+EAA+E;AAC/E,eAAO,MAAM,OAAO,SAAU,MAAM,KAAG,OAAuC,CAAC;AAC/E,gFAAgF;AAChF,eAAO,MAAM,SAAS,SAAU,MAAM,KAAG,SAGvC,CAAC;AACH,mCAAmC;AACnC,eAAO,MAAM,UAAU,SAAU,MAAM,KAAG,UAGxC,CAAC;AAKH;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,KAAK,GAAG,MAAM,CAAC;IACvC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,cAClB;IAAE,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,cACjD,MAAM,gBACJ,MAAM,KACnB,kBAKD,CAAC;AAEH,iEAAiE;AACjE,eAAO,MAAM,OAAO,QAAS;IAAE,IAAI,EAAE,KAAK,GAAG,MAAM,CAAA;CAAE,KAAG,KAAK,GAAG,MACtD,CAAC"}
1
+ {"version":3,"file":"refs.d.ts","sourceRoot":"","sources":["../../src/refs.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAEvC,MAAM,MAAM,eAAe,GACvB,WAAW,GACX,SAAS,GACT,OAAO,GACP,QAAQ,GACR,MAAM,GACN,MAAM,GACN,OAAO,GACP,QAAQ,GACR,SAAS,CAAC;AAEd,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,IAAI;IACrE,QAAQ,CAAC,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;AACpD,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;AAChD,MAAM,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;AAC5C,MAAM,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;AAC9C,MAAM,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAC1C,MAAM,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAC1C,MAAM,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;AAC5C,MAAM,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;AAC9C,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;AAEhD,uEAAuE;AACvE,eAAO,MAAM,YAAY,SAAU,MAAM,KAAG,YAG1C,CAAC;AACH,+EAA+E;AAC/E,eAAO,MAAM,UAAU,SAAU,MAAM,KAAG,UAGxC,CAAC;AACH,sCAAsC;AACtC,eAAO,MAAM,QAAQ,SAAU,MAAM,KAAG,QAGtC,CAAC;AACH,kCAAkC;AAClC,eAAO,MAAM,SAAS,SAAU,MAAM,KAAG,SAGvC,CAAC;AACH,+EAA+E;AAC/E,eAAO,MAAM,OAAO,SAAU,MAAM,KAAG,OAAuC,CAAC;AAC/E,gFAAgF;AAChF,eAAO,MAAM,SAAS,SAAU,MAAM,KAAG,SAGvC,CAAC;AACH,mCAAmC;AACnC,eAAO,MAAM,UAAU,SAAU,MAAM,KAAG,UAGxC,CAAC;AAKH;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,KAAK,GAAG,MAAM,CAAC;IACvC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,cAClB;IAAE,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,cACjD,MAAM,gBACJ,MAAM,KACnB,kBAUD,CAAC;AAEH,iEAAiE;AACjE,eAAO,MAAM,OAAO,QAAS;IAAE,IAAI,EAAE,KAAK,GAAG,MAAM,CAAA;CAAE,KAAG,KAAK,GAAG,MACtD,CAAC"}
package/build/src/refs.js CHANGED
@@ -46,7 +46,11 @@ export const segmentRef = (uuid) => ({
46
46
  export const connectorActionRef = (connector, actionSlug, integration) => ({
47
47
  resource: "connectorAction",
48
48
  connectorUuid: connector.uuid,
49
- integration: integration ?? connector.integrationSlug ?? "",
49
+ integration: integration !== undefined
50
+ ? integration
51
+ : connector.integrationSlug !== undefined
52
+ ? connector.integrationSlug
53
+ : "",
50
54
  actionSlug,
51
55
  });
52
56
  /** Extract the uuid from a handle or ref (both carry `uuid`). */
@@ -46,6 +46,6 @@ export type NormalizedUses = {
46
46
  subAgents: unknown[];
47
47
  connectorActions: unknown[];
48
48
  };
49
- export declare function normalizeUses(uses: readonly AgentUse[] | undefined): NormalizedUses;
49
+ export declare function normalizeUses(rawUses: readonly AgentUse[] | undefined): NormalizedUses;
50
50
  export {};
51
51
  //# sourceMappingURL=actions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../src/resources/actions.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,kBAAkB,EAAW,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,sFAAsF;AACtF,MAAM,MAAM,aAAa,GAAG;IAC1B,0CAA0C;IAC1C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,0DAA0D;IAC1D,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,2EAA2E;IAC3E,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;CACtC,CAAC;AAEF,6EAA6E;AAC7E,MAAM,MAAM,sBAAsB,GAAG,aAAa,GAAG;IACnD,qEAAqE;IACrE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC3C,CAAC;AAEF,yDAAyD;AACzD,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,wEAAwE;AACxE,KAAK,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;AAEtD;;;;;;;;;GASG;AACH,MAAM,MAAM,QAAQ,GAChB,WAAW,CAAC,MAAM,CAAC,GACnB,WAAW,CAAC,OAAO,CAAC,GACpB,kBAAkB,GAClB,WAAW,GACX,CAAC,aAAa,GAAG;IACf,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;CAC1D,CAAC,GACF,CAAC,sBAAsB,GAAG;IAAE,QAAQ,CAAC,GAAG,EAAE,kBAAkB,CAAA;CAAE,CAAC,GAC/D,CAAC,YAAY,GAAG;IAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAA;CAAE,CAAC,CAAC;AAoBnD,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,SAAS,EAAE,OAAO,EAAE,CAAC;IACrB,gBAAgB,EAAE,OAAO,EAAE,CAAC;CAC7B,CAAC;AAIF,wBAAgB,aAAa,CAC3B,IAAI,EAAE,SAAS,QAAQ,EAAE,GAAG,SAAS,GACpC,cAAc,CAgEhB"}
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../src/resources/actions.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,kBAAkB,EAAW,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,sFAAsF;AACtF,MAAM,MAAM,aAAa,GAAG;IAC1B,0CAA0C;IAC1C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,0DAA0D;IAC1D,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,2EAA2E;IAC3E,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;CACtC,CAAC;AAEF,6EAA6E;AAC7E,MAAM,MAAM,sBAAsB,GAAG,aAAa,GAAG;IACnD,qEAAqE;IACrE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC3C,CAAC;AAEF,yDAAyD;AACzD,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,wEAAwE;AACxE,KAAK,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;AAEtD;;;;;;;;;GASG;AACH,MAAM,MAAM,QAAQ,GAChB,WAAW,CAAC,MAAM,CAAC,GACnB,WAAW,CAAC,OAAO,CAAC,GACpB,kBAAkB,GAClB,WAAW,GACX,CAAC,aAAa,GAAG;IACf,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;CAC1D,CAAC,GACF,CAAC,sBAAsB,GAAG;IAAE,QAAQ,CAAC,GAAG,EAAE,kBAAkB,CAAA;CAAE,CAAC,GAC/D,CAAC,YAAY,GAAG;IAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAA;CAAE,CAAC,CAAC;AAoBnD,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,SAAS,EAAE,OAAO,EAAE,CAAC;IACrB,gBAAgB,EAAE,OAAO,EAAE,CAAC;CAC7B,CAAC;AAIF,wBAAgB,aAAa,CAC3B,OAAO,EAAE,SAAS,QAAQ,EAAE,GAAG,SAAS,GACvC,cAAc,CAkEhB"}
@@ -15,12 +15,13 @@ function normalizeOptions(opts) {
15
15
  }
16
16
  // Split the `uses` array into the four release buckets, keyed off each ref's
17
17
  // `resource` discriminator.
18
- export function normalizeUses(uses) {
18
+ export function normalizeUses(rawUses) {
19
19
  const models = [];
20
20
  const tools = [];
21
21
  const subAgents = [];
22
22
  const connectorActions = [];
23
- for (const use of uses ?? []) {
23
+ const uses = rawUses === undefined ? [] : rawUses;
24
+ for (const use of uses) {
24
25
  const wrapped = "ref" in use;
25
26
  const ref = wrapped ? use.ref : use;
26
27
  const opts = wrapped ? use : {};