@toolproof-core/lib 1.0.9 → 1.0.11

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 +1 @@
1
- {"version":3,"file":"bindInputRoleToResource.d.ts","sourceRoot":"","sources":["../../src/utils/bindInputRoleToResource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,YAAY,EAIZ,mBAAmB,EACnB,iBAAiB,EACpB,MAAM,wBAAwB,CAAC;AAKhC,wBAAgB,2BAA2B,CACvC,aAAa,EAAE,iBAAiB,EAChC,MAAM,EAAE,mBAAmB,EAC3B,QAAQ,EAAE,YAAY,GACvB,iBAAiB,CASnB;AAED,wBAAgB,2BAA2B,CACvC,aAAa,EAAE,iBAAiB,EAChC,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE,mBAAmB,GAC5B,iBAAiB,CA+DnB;AAED,wBAAgB,gCAAgC,CAC5C,aAAa,EAAE,iBAAiB,EAChC,MAAM,EAAE,mBAAmB,GAC5B,iBAAiB,CAWnB"}
1
+ {"version":3,"file":"bindInputRoleToResource.d.ts","sourceRoot":"","sources":["../../src/utils/bindInputRoleToResource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,YAAY,EAKZ,mBAAmB,EACnB,iBAAiB,EACpB,MAAM,wBAAwB,CAAC;AAKhC,wBAAgB,2BAA2B,CACvC,aAAa,EAAE,iBAAiB,EAChC,MAAM,EAAE,mBAAmB,EAC3B,QAAQ,EAAE,YAAY,GACvB,iBAAiB,CASnB;AAED,wBAAgB,2BAA2B,CACvC,aAAa,EAAE,iBAAiB,EAChC,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE,mBAAmB,GAC5B,iBAAiB,CA6DnB;AAED,wBAAgB,gCAAgC,CAC5C,aAAa,EAAE,iBAAiB,EAChC,MAAM,EAAE,mBAAmB,GAC5B,iBAAiB,CAWnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"bindInputRoleToResource.js","sourceRoot":"","sources":["../../src/utils/bindInputRoleToResource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bindInputRoleToResource.js","sourceRoot":"","sources":["../../src/utils/bindInputRoleToResource.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAGjE,MAAM,UAAU,2BAA2B,CACvC,aAAgC,EAChC,MAA2B,EAC3B,QAAsB;IAEtB,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;IACzD,OAAO;QACH,GAAG,aAAa;QAChB,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE;YACpB,GAAG,MAAM;YACT,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,QAAQ;SACxC;KACJ,CAAC;AACN,CAAC;AAED,MAAM,UAAU,2BAA2B,CACvC,aAAgC,EAChC,MAA2B,EAC3B,MAA2B;IAE3B,MAAM,WAAW,GAAG,aAAa,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAIpF,CAAC;IACF,IAAI,CAAC,WAAW,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,uCAAuC,MAAM,CAAC,aAAa,KAAK,MAAM,CAAC,kBAAkB,GAAG,CAAC,CAAC;IAClH,CAAC;IAED,MAAM,MAAM,GAAG,oBAAoB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;IAEzD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;QACnE,OAAO;YACH,GAAG,aAAa;YAChB,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE;gBACpB,GAAG,MAAM;gBACT,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC,KAAK;aAC5C;SACJ,CAAC;IACN,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;QAC9D,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC;QAC7B,MAAM,aAAa,GAAwB;YACvC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;YAC9C,iBAAiB,EAAE,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO;SAC/D,CAAC;QAEF,OAAO;YACH,GAAG,aAAa;YAChB,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE;gBACpB,GAAG,MAAM;gBACT,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,aAAa;aAC7C;SACJ,CAAC;IACN,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,eAAe,EAAE,CAAC;QACtE,MAAM,cAAc,GAA+B;YAC/C,QAAQ,EAAE,WAAW,CAAC,QAAQ;YAC9B,kBAAkB,EAAE,WAAW,CAAC,kBAAkB;YAClD,eAAe,EAAE;gBACb,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;aAChD;YACD,iBAAiB,EAAE,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,cAAc;SACtE,CAAC;QAEF,OAAO;YACH,GAAG,aAAa;YAChB,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE;gBACpB,GAAG,MAAM;gBACT,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,cAAc;aAC9C;SACJ,CAAC;IACN,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,qCAAqC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,gCAAgC,CAC5C,aAAgC,EAChC,MAA2B;IAE3B,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IACrD,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC;QAAE,OAAO,aAAa,CAAC;IAE/D,MAAM,UAAU,GAAG,EAAE,GAAG,MAAM,EAA6B,CAAC;IAC5D,OAAO,UAAU,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAE7C,OAAO;QACH,GAAG,aAAa;QAChB,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,UAAiB;KAC5C,CAAC;AACN,CAAC"}
@@ -1,9 +1,10 @@
1
1
  import type { RawStrategyJson, JobIdentityJson, JobJson, JobStepJson, ResourceRoleJson, ResourceIdentityJson, ResourceTypeIdentityJson, ResourceJson } from '@toolproof-core/schema';
2
2
  export declare function extractJobHandlesFromRawStrategy(rawStrategy: RawStrategyJson): JobIdentityJson[];
3
3
  export declare function extractJobStepsFromRawStrategy(rawStrategy: RawStrategyJson): JobStepJson[];
4
- export declare function extractResourceRolesFromRawStrategy(rawStrategy: RawStrategyJson, jobMap: Map<JobIdentityJson, JobJson>): ResourceRoleJson[];
5
- export declare function extractResourceMapForResourceType<TResource extends ResourceJson = ResourceJson>(resourcesByTypeDict: Partial<Record<ResourceTypeIdentityJson, TResource[]>>, resourceTypeHandle: ResourceTypeIdentityJson): Map<ResourceIdentityJson, TResource>;
6
- export declare function extractNucleusMapForResourceType<TKey extends string = string, TNucleus extends {
4
+ export declare function extractRolesFromRawStrategy(rawStrategy: RawStrategyJson, jobMap: Map<JobIdentityJson, JobJson>): ResourceRoleJson[];
5
+ export declare function extractSingleNonErrorOutputTypeHandle(job: JobJson): ResourceTypeIdentityJson | null;
6
+ export declare function extractResourceMapForType<TResource extends ResourceJson = ResourceJson>(resourcesByTypeDict: Partial<Record<ResourceTypeIdentityJson, TResource[]>>, resourceTypeHandle: ResourceTypeIdentityJson): Map<ResourceIdentityJson, TResource>;
7
+ export declare function extractNucleusMapForType<TKey extends string = string, TNucleus extends {
7
8
  identity: string | number | boolean;
8
9
  } = {
9
10
  identity: string | number | boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"extractData.d.ts","sourceRoot":"","sources":["../../src/utils/extractData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,eAAe,EACf,eAAe,EACf,OAAO,EAEP,WAAW,EAGX,gBAAgB,EAChB,oBAAoB,EACpB,wBAAwB,EACxB,YAAY,EACf,MAAM,wBAAwB,CAAC;AAIhC,wBAAgB,gCAAgC,CAAC,WAAW,EAAE,eAAe,GAAG,eAAe,EAAE,CAOhG;AAED,wBAAgB,8BAA8B,CAAC,WAAW,EAAE,eAAe,GAAG,WAAW,EAAE,CA2C1F;AAGD,wBAAgB,mCAAmC,CAAC,WAAW,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,GAAG,gBAAgB,EAAE,CAuB3I;AAGD,wBAAgB,iCAAiC,CAAC,SAAS,SAAS,YAAY,GAAG,YAAY,EAC3F,mBAAmB,EAAE,OAAO,CAAC,MAAM,CAAC,wBAAwB,EAAE,SAAS,EAAE,CAAC,CAAC,EAC3E,kBAAkB,EAAE,wBAAwB,GAC7C,GAAG,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAStC;AAGD,wBAAgB,gCAAgC,CAC5C,IAAI,SAAS,MAAM,GAAG,MAAM,EAC5B,QAAQ,SAAS;IAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;CAAE,GAAG;IAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;CAAE,EAClG,SAAS,SAAS,YAAY,GAAG,YAAY,EAE7C,mBAAmB,EAAE,OAAO,CAAC,MAAM,CAAC,wBAAwB,EAAE,SAAS,EAAE,CAAC,CAAC,EAC3E,kBAAkB,EAAE,wBAAwB,GAC7C,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAyBrB"}
1
+ {"version":3,"file":"extractData.d.ts","sourceRoot":"","sources":["../../src/utils/extractData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,eAAe,EACf,eAAe,EACf,OAAO,EAEP,WAAW,EAGX,gBAAgB,EAChB,oBAAoB,EACpB,wBAAwB,EACxB,YAAY,EACf,MAAM,wBAAwB,CAAC;AAIhC,wBAAgB,gCAAgC,CAAC,WAAW,EAAE,eAAe,GAAG,eAAe,EAAE,CAOhG;AAED,wBAAgB,8BAA8B,CAAC,WAAW,EAAE,eAAe,GAAG,WAAW,EAAE,CA2C1F;AAGD,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,GAAG,gBAAgB,EAAE,CAuBnI;AAED,wBAAgB,qCAAqC,CAAC,GAAG,EAAE,OAAO,GAAG,wBAAwB,GAAG,IAAI,CAQnG;AAID,wBAAgB,yBAAyB,CAAC,SAAS,SAAS,YAAY,GAAG,YAAY,EACnF,mBAAmB,EAAE,OAAO,CAAC,MAAM,CAAC,wBAAwB,EAAE,SAAS,EAAE,CAAC,CAAC,EAC3E,kBAAkB,EAAE,wBAAwB,GAC7C,GAAG,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAStC;AAGD,wBAAgB,wBAAwB,CACpC,IAAI,SAAS,MAAM,GAAG,MAAM,EAC5B,QAAQ,SAAS;IAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;CAAE,GAAG;IAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;CAAE,EAClG,SAAS,SAAS,YAAY,GAAG,YAAY,EAE7C,mBAAmB,EAAE,OAAO,CAAC,MAAM,CAAC,wBAAwB,EAAE,SAAS,EAAE,CAAC,CAAC,EAC3E,kBAAkB,EAAE,wBAAwB,GAC7C,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAyBrB"}
@@ -47,7 +47,7 @@ export function extractJobStepsFromRawStrategy(rawStrategy) {
47
47
  }
48
48
  return jobSteps;
49
49
  }
50
- export function extractResourceRolesFromRawStrategy(rawStrategy, jobMap) {
50
+ export function extractRolesFromRawStrategy(rawStrategy, jobMap) {
51
51
  const map = new Map();
52
52
  const jobHandles = extractJobHandlesFromRawStrategy(rawStrategy);
53
53
  for (const jobHandle of jobHandles) {
@@ -69,7 +69,16 @@ export function extractResourceRolesFromRawStrategy(rawStrategy, jobMap) {
69
69
  }
70
70
  return Array.from(map.values());
71
71
  }
72
- export function extractResourceMapForResourceType(resourcesByTypeDict, resourceTypeHandle) {
72
+ export function extractSingleNonErrorOutputTypeHandle(job) {
73
+ const errorRoleId = CONSTANTS.Cosmos.ROLE_ErrorOutput;
74
+ const outputEntries = Object.entries(job.roles.outputDict).filter(([roleId]) => roleId !== errorRoleId);
75
+ if (!outputEntries || !outputEntries[0] || outputEntries.length !== 1) {
76
+ throw new Error(`Job ${job.identity} must have exactly one non-error output role to be branchable/loopable`);
77
+ } // ATTENTION_PUREIFY
78
+ const outputRole = outputEntries[0][1];
79
+ return outputRole.resourceTypeHandle;
80
+ }
81
+ export function extractResourceMapForType(resourcesByTypeDict, resourceTypeHandle) {
73
82
  const resources = resourcesByTypeDict[resourceTypeHandle] ?? [];
74
83
  const map = new Map();
75
84
  for (const resource of resources) {
@@ -78,8 +87,8 @@ export function extractResourceMapForResourceType(resourcesByTypeDict, resourceT
78
87
  return map;
79
88
  }
80
89
  // ATTENTION: should only need standalone type as type parameter, then we could extract the nuclueus type and identity type
81
- export function extractNucleusMapForResourceType(resourcesByTypeDict, resourceTypeHandle) {
82
- const resourceMap = extractResourceMapForResourceType(resourcesByTypeDict, resourceTypeHandle);
90
+ export function extractNucleusMapForType(resourcesByTypeDict, resourceTypeHandle) {
91
+ const resourceMap = extractResourceMapForType(resourcesByTypeDict, resourceTypeHandle);
83
92
  const out = new Map();
84
93
  for (const resource of resourceMap.values()) {
85
94
  const data = resource.nucleus;
@@ -1 +1 @@
1
- {"version":3,"file":"extractData.js","sourceRoot":"","sources":["../../src/utils/extractData.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extractData.js","sourceRoot":"","sources":["../../src/utils/extractData.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"resolveResourceChain.d.ts","sourceRoot":"","sources":["../../src/utils/resolveResourceChain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EAEnB,2BAA2B,EAC3B,iBAAiB,EACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,MAAM,MAAM,aAAa,GACnB;IAAE,MAAM,EAAE,OAAO,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,YAAY,CAAC;IAAC,KAAK,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,mBAAmB,EAAE,CAAA;CAAE,GACnH;IAAE,MAAM,EAAE,OAAO,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC;IAAC,KAAK,EAAE,mBAAmB,CAAC;IAAC,IAAI,EAAE,mBAAmB,EAAE,CAAA;CAAE,GACrH;IAAE,MAAM,EAAE,OAAO,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,eAAe,CAAC;IAAC,KAAK,EAAE,2BAA2B,CAAC;IAAC,IAAI,EAAE,mBAAmB,EAAE,CAAA;CAAE,GACrI;IAAE,MAAM,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,WAAW,GAAG,OAAO,GAAG,gBAAgB,CAAC;IAAC,IAAI,EAAE,mBAAmB,EAAE,CAAA;CAAE,CAAC;AAE9G,wBAAgB,oBAAoB,CAChC,aAAa,EAAE,iBAAiB,EAChC,KAAK,EAAE,mBAAmB,EAC1B,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7B,aAAa,CA8Cf"}
1
+ {"version":3,"file":"resolveResourceChain.d.ts","sourceRoot":"","sources":["../../src/utils/resolveResourceChain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EAEnB,2BAA2B,EAE3B,iBAAiB,EACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,MAAM,MAAM,aAAa,GACnB;IAAE,MAAM,EAAE,OAAO,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,YAAY,CAAC;IAAC,KAAK,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,mBAAmB,EAAE,CAAA;CAAE,GACnH;IAAE,MAAM,EAAE,OAAO,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC;IAAC,KAAK,EAAE,mBAAmB,CAAC;IAAC,IAAI,EAAE,mBAAmB,EAAE,CAAA;CAAE,GACrH;IAAE,MAAM,EAAE,OAAO,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,eAAe,CAAC;IAAC,KAAK,EAAE,2BAA2B,CAAC;IAAC,IAAI,EAAE,mBAAmB,EAAE,CAAA;CAAE,GACrI;IAAE,MAAM,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,WAAW,GAAG,OAAO,GAAG,gBAAgB,CAAC;IAAC,IAAI,EAAE,mBAAmB,EAAE,CAAA;CAAE,CAAC;AAE9G,wBAAgB,oBAAoB,CAChC,aAAa,EAAE,iBAAiB,EAChC,KAAK,EAAE,mBAAmB,EAC1B,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7B,aAAa,CA4Cf"}
@@ -1 +1 @@
1
- {"version":3,"file":"resolveResourceChain.js","sourceRoot":"","sources":["../../src/utils/resolveResourceChain.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAQtD,MAAM,UAAU,oBAAoB,CAChC,aAAgC,EAChC,KAA0B,EAC1B,IAA4B;IAE5B,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,IAAI,GAA0B,EAAE,CAAC;IACvC,IAAI,OAAO,GAAwB,KAAK,CAAC;IAEzC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnB,MAAM,QAAQ,GAAG,GAAG,OAAO,CAAC,aAAa,KAAK,OAAO,CAAC,kBAAkB,EAAE,CAAC;QAC3E,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxB,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3D,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEtB,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACpD,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QACxE,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAM9C,CAAC;QACF,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QAEvE,IAAI,KAAK,CAAC,iBAAiB,KAAK,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;YAC7E,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,YAAY,EAAE,KAAK,EAAE,KAAqB,EAAE,IAAI,EAAE,CAAC;QAC1G,CAAC;QACD,IAAI,KAAK,CAAC,iBAAiB,KAAK,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;YACxE,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,EAAE,KAAK,EAAE,KAA4B,EAAE,IAAI,EAAE,CAAC;QAC5G,CAAC;QACD,IAAI,KAAK,CAAC,iBAAiB,KAAK,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,eAAe,EAAE,CAAC;YAChF,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,eAAe,EAAE,KAAK,EAAE,KAAoC,EAAE,IAAI,EAAE,CAAC;QAC5H,CAAC;QAED,uCAAuC;QACvC,IAAI,KAAK,CAAC,iBAAiB,KAAK,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,cAAc,EAAE,CAAC;YAC/E,OAAO,GAAI,KAAoC,CAAC,eAAe,CAAC;YAChE,SAAS;QACb,CAAC;QAED,eAAe;QACf,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IAC/D,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;AACpE,CAAC"}
1
+ {"version":3,"file":"resolveResourceChain.js","sourceRoot":"","sources":["../../src/utils/resolveResourceChain.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAQtD,MAAM,UAAU,oBAAoB,CAChC,aAAgC,EAChC,KAA0B,EAC1B,IAA4B;IAE5B,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,IAAI,GAA0B,EAAE,CAAC;IACvC,IAAI,OAAO,GAAwB,KAAK,CAAC;IAEzC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnB,MAAM,QAAQ,GAAG,GAAG,OAAO,CAAC,aAAa,KAAK,OAAO,CAAC,kBAAkB,EAAE,CAAC;QAC3E,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxB,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3D,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEtB,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACpD,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QACxE,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAI9C,CAAC;QACF,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QAEvE,IAAI,KAAK,CAAC,iBAAiB,KAAK,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;YAC7E,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,YAAY,EAAE,KAAK,EAAE,KAAqB,EAAE,IAAI,EAAE,CAAC;QAC1G,CAAC;QACD,IAAI,KAAK,CAAC,iBAAiB,KAAK,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;YACxE,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,EAAE,KAAK,EAAE,KAA4B,EAAE,IAAI,EAAE,CAAC;QAC5G,CAAC;QACD,IAAI,KAAK,CAAC,iBAAiB,KAAK,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,eAAe,EAAE,CAAC;YAChF,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,eAAe,EAAE,KAAK,EAAE,KAAoC,EAAE,IAAI,EAAE,CAAC;QAC5H,CAAC;QAED,uCAAuC;QACvC,IAAI,KAAK,CAAC,iBAAiB,KAAK,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,cAAc,EAAE,CAAC;YAC/E,OAAO,GAAI,KAAoC,CAAC,eAAe,CAAC;YAChE,SAAS;QACb,CAAC;QAED,eAAe;QACf,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IAC/D,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;AACpE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@toolproof-core/lib",
3
- "version": "1.0.9",
3
+ "version": "1.0.11",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "keywords": [],
@@ -52,7 +52,7 @@
52
52
  "@types/node": "^22.0.0"
53
53
  },
54
54
  "dependencies": {
55
- "@toolproof-core/schema": "^1.0.16",
55
+ "@toolproof-core/schema": "^1.0.17",
56
56
  "firebase-admin": "^13.7.0"
57
57
  },
58
58
  "scripts": {
@@ -3,6 +3,7 @@ import type {
3
3
  ResourceMissingJson,
4
4
  ResourceInputPotentialJson,
5
5
  ResourceOutputPotentialJson,
6
+ ResourcePotentialJson,
6
7
  CreationContextJson,
7
8
  StrategyStateJson,
8
9
  } from '@toolproof-core/schema';
@@ -32,9 +33,7 @@ export function bindInputRefInStrategyState(
32
33
  ): StrategyStateJson {
33
34
  const sourceEntry = strategyState?.[source.jobStepHandle]?.[source.resourceRoleHandle] as (
34
35
  | ResourceJson
35
- | ResourceMissingJson
36
- | ResourceInputPotentialJson
37
- | ResourceOutputPotentialJson
36
+ | ResourcePotentialJson
38
37
  | undefined
39
38
  );
40
39
  if (!sourceEntry) {
@@ -69,7 +69,7 @@ export function extractJobStepsFromRawStrategy(rawStrategy: RawStrategyJson): Jo
69
69
  }
70
70
 
71
71
 
72
- export function extractResourceRolesFromRawStrategy(rawStrategy: RawStrategyJson, jobMap: Map<JobIdentityJson, JobJson>): ResourceRoleJson[] {
72
+ export function extractRolesFromRawStrategy(rawStrategy: RawStrategyJson, jobMap: Map<JobIdentityJson, JobJson>): ResourceRoleJson[] {
73
73
  const map = new Map<ResourceRoleIdentityJson, ResourceRoleJson>();
74
74
  const jobHandles = extractJobHandlesFromRawStrategy(rawStrategy);
75
75
 
@@ -94,8 +94,19 @@ export function extractResourceRolesFromRawStrategy(rawStrategy: RawStrategyJson
94
94
  return Array.from(map.values());
95
95
  }
96
96
 
97
+ export function extractSingleNonErrorOutputTypeHandle(job: JobJson): ResourceTypeIdentityJson | null {
98
+ const errorRoleId = CONSTANTS.Cosmos.ROLE_ErrorOutput;
99
+ const outputEntries = Object.entries(job.roles.outputDict).filter(([roleId]) => roleId !== errorRoleId);
100
+ if (!outputEntries || !outputEntries[0] || outputEntries.length !== 1) {
101
+ throw new Error(`Job ${job.identity} must have exactly one non-error output role to be branchable/loopable`);
102
+ } // ATTENTION_PUREIFY
103
+ const outputRole = outputEntries[0][1];
104
+ return outputRole.resourceTypeHandle;
105
+ }
106
+
107
+
97
108
 
98
- export function extractResourceMapForResourceType<TResource extends ResourceJson = ResourceJson>(
109
+ export function extractResourceMapForType<TResource extends ResourceJson = ResourceJson>(
99
110
  resourcesByTypeDict: Partial<Record<ResourceTypeIdentityJson, TResource[]>>,
100
111
  resourceTypeHandle: ResourceTypeIdentityJson
101
112
  ): Map<ResourceIdentityJson, TResource> {
@@ -110,7 +121,7 @@ export function extractResourceMapForResourceType<TResource extends ResourceJson
110
121
  }
111
122
 
112
123
  // ATTENTION: should only need standalone type as type parameter, then we could extract the nuclueus type and identity type
113
- export function extractNucleusMapForResourceType<
124
+ export function extractNucleusMapForType<
114
125
  TKey extends string = string,
115
126
  TNucleus extends { identity: string | number | boolean } = { identity: string | number | boolean },
116
127
  TResource extends ResourceJson = ResourceJson
@@ -118,7 +129,7 @@ export function extractNucleusMapForResourceType<
118
129
  resourcesByTypeDict: Partial<Record<ResourceTypeIdentityJson, TResource[]>>,
119
130
  resourceTypeHandle: ResourceTypeIdentityJson,
120
131
  ): Map<TKey, TNucleus> {
121
- const resourceMap = extractResourceMapForResourceType<TResource>(resourcesByTypeDict, resourceTypeHandle);
132
+ const resourceMap = extractResourceMapForType<TResource>(resourcesByTypeDict, resourceTypeHandle);
122
133
  const out = new Map<TKey, TNucleus>();
123
134
 
124
135
  for (const resource of resourceMap.values()) {
@@ -4,6 +4,7 @@ import type {
4
4
  ResourceMissingJson,
5
5
  ResourceInputPotentialJson,
6
6
  ResourceOutputPotentialJson,
7
+ ResourcePotentialJson,
7
8
  StrategyStateJson,
8
9
  } from '@toolproof-core/schema';
9
10
  import { CONSTANTS } from '../artifacts/artifacts.js';
@@ -36,9 +37,7 @@ export function resolveResourceChain(
36
37
  if (!bucket) return { status: 'unresolved', reason: 'not-found', path };
37
38
  const entry = bucket[current.resourceRoleHandle] as (
38
39
  | ResourceJson
39
- | ResourceMissingJson
40
- | ResourceInputPotentialJson
41
- | ResourceOutputPotentialJson
40
+ | ResourcePotentialJson
42
41
  | undefined
43
42
  );
44
43
  if (!entry) return { status: 'unresolved', reason: 'not-found', path };