@farmslot/recipe-runner 0.29.0 → 0.31.0

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 (113) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/adapters/core.d.ts.map +1 -1
  3. package/dist/adapters/core.js +60 -55
  4. package/dist/adapters/core.js.map +1 -1
  5. package/dist/adapters/ui.d.ts +2 -0
  6. package/dist/adapters/ui.d.ts.map +1 -1
  7. package/dist/adapters/ui.js +79 -37
  8. package/dist/adapters/ui.js.map +1 -1
  9. package/dist/cli/support.d.ts.map +1 -1
  10. package/dist/cli/support.js +13 -9
  11. package/dist/cli/support.js.map +1 -1
  12. package/dist/core/assertions.d.ts +16 -0
  13. package/dist/core/assertions.d.ts.map +1 -0
  14. package/dist/core/assertions.js +59 -0
  15. package/dist/core/assertions.js.map +1 -0
  16. package/dist/core/compose.d.ts +3 -2
  17. package/dist/core/compose.d.ts.map +1 -1
  18. package/dist/core/compose.js +23 -7
  19. package/dist/core/compose.js.map +1 -1
  20. package/dist/core/execution.d.ts +3 -0
  21. package/dist/core/execution.d.ts.map +1 -1
  22. package/dist/core/execution.js +60 -3
  23. package/dist/core/execution.js.map +1 -1
  24. package/dist/core/graph.d.ts +1 -0
  25. package/dist/core/graph.d.ts.map +1 -1
  26. package/dist/core/graph.js +2 -2
  27. package/dist/core/graph.js.map +1 -1
  28. package/dist/core/hud.d.ts.map +1 -1
  29. package/dist/core/hud.js +3 -3
  30. package/dist/core/hud.js.map +1 -1
  31. package/dist/core/invocation.d.ts +4 -1
  32. package/dist/core/invocation.d.ts.map +1 -1
  33. package/dist/core/invocation.js +3 -1
  34. package/dist/core/invocation.js.map +1 -1
  35. package/dist/core/json.d.ts +1 -0
  36. package/dist/core/json.d.ts.map +1 -1
  37. package/dist/core/json.js +7 -9
  38. package/dist/core/json.js.map +1 -1
  39. package/dist/core/recording-limits.d.ts +4 -0
  40. package/dist/core/recording-limits.d.ts.map +1 -0
  41. package/dist/core/recording-limits.js +74 -0
  42. package/dist/core/recording-limits.js.map +1 -0
  43. package/dist/core/recording-segments.d.ts +4 -0
  44. package/dist/core/recording-segments.d.ts.map +1 -0
  45. package/dist/core/recording-segments.js +101 -0
  46. package/dist/core/recording-segments.js.map +1 -0
  47. package/dist/core/runner.d.ts.map +1 -1
  48. package/dist/core/runner.js +340 -129
  49. package/dist/core/runner.js.map +1 -1
  50. package/dist/core/trust.d.ts.map +1 -1
  51. package/dist/core/trust.js +7 -0
  52. package/dist/core/trust.js.map +1 -1
  53. package/dist/core/types.d.ts +37 -22
  54. package/dist/core/types.d.ts.map +1 -1
  55. package/dist/evidence/assertions.d.ts +50 -0
  56. package/dist/evidence/assertions.d.ts.map +1 -0
  57. package/dist/evidence/assertions.js +156 -0
  58. package/dist/evidence/assertions.js.map +1 -0
  59. package/dist/evidence/claims.d.ts +15 -0
  60. package/dist/evidence/claims.d.ts.map +1 -0
  61. package/dist/evidence/claims.js +201 -0
  62. package/dist/evidence/claims.js.map +1 -0
  63. package/dist/evidence/index.d.ts +4 -0
  64. package/dist/evidence/index.d.ts.map +1 -0
  65. package/dist/evidence/index.js +3 -0
  66. package/dist/evidence/index.js.map +1 -0
  67. package/dist/evidence/moments.d.ts +8 -0
  68. package/dist/evidence/moments.d.ts.map +1 -0
  69. package/dist/evidence/moments.js +26 -0
  70. package/dist/evidence/moments.js.map +1 -0
  71. package/dist/evidence/package.d.ts +4 -0
  72. package/dist/evidence/package.d.ts.map +1 -0
  73. package/dist/evidence/package.js +140 -0
  74. package/dist/evidence/package.js.map +1 -0
  75. package/dist/evidence/plan.d.ts +9 -0
  76. package/dist/evidence/plan.d.ts.map +1 -0
  77. package/dist/evidence/plan.js +87 -0
  78. package/dist/evidence/plan.js.map +1 -0
  79. package/dist/evidence/read-package.d.ts +14 -0
  80. package/dist/evidence/read-package.d.ts.map +1 -0
  81. package/dist/evidence/read-package.js +153 -0
  82. package/dist/evidence/read-package.js.map +1 -0
  83. package/dist/evidence/stills.d.ts +5 -0
  84. package/dist/evidence/stills.d.ts.map +1 -0
  85. package/dist/evidence/stills.js +58 -0
  86. package/dist/evidence/stills.js.map +1 -0
  87. package/dist/file-digest.d.ts +3 -0
  88. package/dist/file-digest.d.ts.map +1 -0
  89. package/dist/file-digest.js +4 -0
  90. package/dist/file-digest.js.map +1 -0
  91. package/dist/index.d.ts +5 -0
  92. package/dist/index.d.ts.map +1 -1
  93. package/dist/index.js +5 -0
  94. package/dist/index.js.map +1 -1
  95. package/dist/recording/android-mirror.d.ts.map +1 -1
  96. package/dist/recording/android-mirror.js +17 -8
  97. package/dist/recording/android-mirror.js.map +1 -1
  98. package/dist/recording/capture-helper-timing.d.ts +2 -2
  99. package/dist/recording/capture-helper-timing.d.ts.map +1 -1
  100. package/dist/recording/capture-helper.d.ts.map +1 -1
  101. package/dist/recording/capture-helper.js +24 -12
  102. package/dist/recording/capture-helper.js.map +1 -1
  103. package/dist/recording/cdp-video-recorder.d.ts +2 -0
  104. package/dist/recording/cdp-video-recorder.d.ts.map +1 -1
  105. package/dist/recording/cdp-video-recorder.js +160 -50
  106. package/dist/recording/cdp-video-recorder.js.map +1 -1
  107. package/dist/recording/timeline.d.ts +2 -2
  108. package/dist/recording/timeline.d.ts.map +1 -1
  109. package/dist/runtime/cdp.d.ts +1 -0
  110. package/dist/runtime/cdp.d.ts.map +1 -1
  111. package/dist/runtime/cdp.js +105 -28
  112. package/dist/runtime/cdp.js.map +1 -1
  113. package/package.json +8 -3
@@ -0,0 +1,59 @@
1
+ import { asOptionalString, asString, getJsonPathParts, isRecord } from './json.js';
2
+ function parseAssertion(value, label) {
3
+ if (!value || typeof value !== 'object' || Array.isArray(value)) {
4
+ throw new Error(`${label} must be an object.`);
5
+ }
6
+ const record = value;
7
+ return {
8
+ path: asOptionalString(record.path, `${label}.path`) ?? '$',
9
+ operator: asString(record.operator, `${label}.operator`),
10
+ value: record.value,
11
+ };
12
+ }
13
+ export function parseAssertionNode(value, label) {
14
+ if (!value || typeof value !== 'object' || Array.isArray(value)) {
15
+ throw new Error(`${label} must be an object.`);
16
+ }
17
+ const record = value;
18
+ const group = assertionGroup(record);
19
+ if (group) {
20
+ const { key, entries } = group;
21
+ if (!Array.isArray(entries))
22
+ throw new Error(`${label}.${key} must be an array.`);
23
+ const assertions = entries.map((entry, index) => parseAssertionNode(entry, `${label}.${key}[${index}]`));
24
+ if (key === 'all')
25
+ return { all: assertions };
26
+ if (key === 'any')
27
+ return { any: assertions };
28
+ return { none: assertions };
29
+ }
30
+ return parseAssertion(value, label);
31
+ }
32
+ /** Check known paths before execution; output-dependent values stay deferred. */
33
+ export function validateAssertionPaths(value, label) {
34
+ if (!isRecord(value))
35
+ return;
36
+ const group = assertionGroup(value);
37
+ if (group) {
38
+ if (Array.isArray(group.entries)) {
39
+ group.entries.forEach((entry, index) => validateAssertionPaths(entry, `${label}.${group.key}[${index}]`));
40
+ }
41
+ return;
42
+ }
43
+ if (typeof value.path !== 'string' || value.path.includes('{{outputs.'))
44
+ return;
45
+ try {
46
+ getJsonPathParts(value.path);
47
+ }
48
+ catch (error) {
49
+ throw new Error(`${label}.path: ${error instanceof Error ? error.message : String(error)}`);
50
+ }
51
+ }
52
+ function assertionGroup(record) {
53
+ for (const key of ['all', 'any', 'none']) {
54
+ if (record[key] != null)
55
+ return { key, entries: record[key] };
56
+ }
57
+ return undefined;
58
+ }
59
+ //# sourceMappingURL=assertions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assertions.js","sourceRoot":"","sources":["../../src/core/assertions.ts"],"names":[],"mappings":"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"}
@@ -6,12 +6,13 @@ export interface ResolvedRecipeDependencies {
6
6
  document: RecipeResolutionDocument;
7
7
  }
8
8
  export declare function rootResolutionRef(digest: string): string;
9
- /** Validate every static call boundary after parent defaults and parameters are applied. */
9
+ /** Validate static invocations and return their run-scoped log paths before effects. */
10
10
  export declare function validateRecipeDependencyParams(options: {
11
11
  root: Record<string, unknown>;
12
12
  params: Record<string, unknown>;
13
13
  recipes: ReadonlyMap<string, ResolvedLibraryRecipe>;
14
- }): void;
14
+ actionManifest?: unknown;
15
+ }): Set<string>;
15
16
  /** Resolve the exact static recipe call DAG before any side effect. */
16
17
  export declare function resolveRecipeDependencies(options: {
17
18
  rootRef: string;
@@ -1 +1 @@
1
- {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../../src/core/compose.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAE5B,MAAM,oBAAoB,CAAC;AAK5B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAI1D,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IACpD,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC9B,QAAQ,EAAE,wBAAwB,CAAC;CACpC;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,4FAA4F;AAC5F,wBAAgB,8BAA8B,CAAC,OAAO,EAAE;IACtD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;CACrD,GAAG,IAAI,CAkBP;AAED,uEAAuE;AACvE,wBAAgB,yBAAyB,CAAC,OAAO,EAAE;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,UAAU,EAAE,sBAAsB,CAAC;IACnC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,0BAA0B,CAuF7B"}
1
+ {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../../src/core/compose.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAG5B,MAAM,oBAAoB,CAAC;AAK5B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAI1D,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IACpD,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC9B,QAAQ,EAAE,wBAAwB,CAAC;CACpC;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,wFAAwF;AACxF,wBAAgB,8BAA8B,CAAC,OAAO,EAAE;IACtD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IACpD,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,GAAG,GAAG,CAAC,MAAM,CAAC,CAoCd;AAED,uEAAuE;AACvE,wBAAgB,yBAAyB,CAAC,OAAO,EAAE;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,UAAU,EAAE,sBAAsB,CAAC;IACnC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,0BAA0B,CAuF7B"}
@@ -1,28 +1,44 @@
1
- import { normalizeRecipeRef, resolvedRecipeArtifactPath, } from '@farmslot/protocol';
1
+ import path from 'node:path';
2
+ import { normalizeRecipeRef, resolvedRecipeArtifactPath, validateResolvedRecipeActionNode, } from '@farmslot/protocol';
2
3
  import { DEFAULT_MAX_RECIPE_CALL_DEPTH } from './execution.js';
3
4
  import { extractWorkflowGraph } from './graph.js';
4
- import { isRecord } from './json.js';
5
+ import { isRecord, normalizeRelativePath } from './json.js';
5
6
  import { resolveRecipeParams, resolveRecipeValue } from './parameters.js';
6
7
  import { RecipeResolutionError } from './resolution-error.js';
7
8
  export function rootResolutionRef(digest) {
8
9
  return `$root:${digest}`;
9
10
  }
10
- /** Validate every static call boundary after parent defaults and parameters are applied. */
11
+ /** Validate static invocations and return their run-scoped log paths before effects. */
11
12
  export function validateRecipeDependencyParams(options) {
13
+ const runLogPaths = new Set();
12
14
  const visit = (document, params) => {
13
15
  for (const [nodeId, rawNode] of Object.entries(extractWorkflowGraph(document).nodes)) {
14
- if (rawNode.action !== 'call' || typeof rawNode.ref !== 'string')
16
+ const node = resolveRecipeValue(rawNode, params, undefined, { nodeId });
17
+ if (!isRecord(node))
18
+ continue;
19
+ if (node.action === 'watch_logs' && options.actionManifest) {
20
+ const validation = validateResolvedRecipeActionNode(node, options.actionManifest, {
21
+ allowTemplates: true,
22
+ });
23
+ if (validation.status === 'invalid') {
24
+ throw new RecipeResolutionError('RECIPE_PARAMS_INVALID', `Recipe node ${nodeId}: ${validation.findings.map((finding) => finding.message).join('; ')}`, 'correct the log observation parameters before running the recipe');
25
+ }
26
+ if (node.scope !== 'file' && typeof node.path === 'string') {
27
+ runLogPaths.add(normalizeRelativePath(node.path).split(path.sep).join('/'));
28
+ }
29
+ }
30
+ if (node.action !== 'call' || typeof node.ref !== 'string')
15
31
  continue;
16
- const ref = normalizeRecipeRef(rawNode.ref);
32
+ const ref = normalizeRecipeRef(node.ref);
17
33
  const dependency = options.recipes.get(ref);
18
34
  if (!dependency)
19
35
  continue;
20
- const node = resolveRecipeValue(rawNode, params, undefined, { nodeId });
21
- const childParams = resolveRecipeParams(ref, dependency.document, isRecord(node) && isRecord(node.params) ? node.params : {}, { allowTemplates: true });
36
+ const childParams = resolveRecipeParams(ref, dependency.document, isRecord(node.params) ? node.params : {}, { allowTemplates: true });
22
37
  visit(dependency.document, childParams);
23
38
  }
24
39
  };
25
40
  visit(options.root, options.params);
41
+ return runLogPaths;
26
42
  }
27
43
  /** Resolve the exact static recipe call DAG before any side effect. */
28
44
  export function resolveRecipeDependencies(options) {
@@ -1 +1 @@
1
- {"version":3,"file":"compose.js","sourceRoot":"","sources":["../../src/core/compose.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAIlB,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,6BAA6B,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAQ9D,MAAM,UAAU,iBAAiB,CAAC,MAAc;IAC9C,OAAO,SAAS,MAAM,EAAE,CAAC;AAC3B,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,8BAA8B,CAAC,OAI9C;IACC,MAAM,KAAK,GAAG,CAAC,QAAiC,EAAE,MAA+B,EAAQ,EAAE;QACzF,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YACrF,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,IAAI,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ;gBAAE,SAAS;YAC3E,MAAM,GAAG,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC5C,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5C,IAAI,CAAC,UAAU;gBAAE,SAAS;YAC1B,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACxE,MAAM,WAAW,GAAG,mBAAmB,CACrC,GAAG,EACH,UAAU,CAAC,QAAQ,EACnB,QAAQ,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAC1D,EAAE,cAAc,EAAE,IAAI,EAAE,CACzB,CAAC;YACF,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC,CAAC;IACF,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;AACtC,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,yBAAyB,CAAC,OAMzC;IACC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,6BAA6B,CAAC;IACnE,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAiC,CAAC;IAC1D,MAAM,KAAK,GAA2B,EAAE,CAAC;IACzC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAElC,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,QAAiC,EAAE,KAAa,EAAQ,EAAE;QACrF,IAAI,KAAK,IAAI,QAAQ,EAAE,CAAC;YACtB,MAAM,IAAI,qBAAqB,CAC7B,4BAA4B,EAC5B,sCAAsC,QAAQ,GAAG,EACjD,oCAAoC,QAAQ,EAAE,CAC/C,CAAC;QACJ,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;YAC9B,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACzC,IAAI,UAAU,IAAI,CAAC,IAAI,GAAG,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC;gBAC/C,MAAM,KAAK,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;gBAChE,MAAM,IAAI,qBAAqB,CAC7B,mBAAmB,EACnB,+BAA+B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EACpD,gEAAgE,CACjE,CAAC;YACJ,CAAC;YACD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,qBAAqB,CAC7B,4BAA4B,EAC5B,UAAU,GAAG,8CAA8C,EAC3D,OAAO,GAAG,qDAAqD,CAChE,CAAC;YACJ,CAAC;YACD,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAC9B,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAS;YAC/B,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnB,KAAK,CAAC,GAAG,EAAE,UAAU,CAAC,QAAQ,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YAC3C,QAAQ,CAAC,GAAG,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACH,CAAC,CAAC;IAEF,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACxC,QAAQ,CAAC,GAAG,EAAE,CAAC;IAEf,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;IAC7C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,qBAAqB,CAC7B,kCAAkC,EAClC,4DAA4D,EAC5D,qEAAqE,CACtE,CAAC;IACJ,CAAC;IACD,MAAM,YAAY,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;SACxC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;SAC1D,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACd,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC;QACxC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,qBAAqB,CAC7B,kCAAkC,EAClC,mBAAmB,MAAM,CAAC,GAAG,iCAAiC,EAC9D,UAAU,MAAM,CAAC,GAAG,yDAAyD,CAC9E,CAAC;QACJ,CAAC;QACD,OAAO;YACL,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,MAAM;YACN,QAAQ,EAAE,0BAA0B,CAAC,MAAM,CAAE;YAC7C,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvD,CAAC;IACJ,CAAC,CAAC,CAAC;IACL,OAAO;QACL,OAAO,EAAE,QAAQ;QACjB,KAAK;QACL,QAAQ,EAAE;YACR,cAAc,EAAE,CAAC;YACjB,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE;YAClD,YAAY;YACZ,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACrC,cAAc,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC,CACvE;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,IAAY,EAAE,KAAa;IACjD,OAAO,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,QAAQ,CAAC,MAA+B;IAC/C,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QACrE,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;YAC9E,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"compose.js","sourceRoot":"","sources":["../../src/core/compose.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EACL,kBAAkB,EAIlB,0BAA0B,EAC1B,gCAAgC,GACjC,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,6BAA6B,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAE5D,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAQ9D,MAAM,UAAU,iBAAiB,CAAC,MAAc;IAC9C,OAAO,SAAS,MAAM,EAAE,CAAC;AAC3B,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,8BAA8B,CAAC,OAK9C;IACC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,MAAM,KAAK,GAAG,CAAC,QAAiC,EAAE,MAA+B,EAAQ,EAAE;QACzF,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YACrF,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACxE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,SAAS;YAC9B,IAAI,IAAI,CAAC,MAAM,KAAK,YAAY,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;gBAC3D,MAAM,UAAU,GAAG,gCAAgC,CAAC,IAAI,EAAE,OAAO,CAAC,cAAc,EAAE;oBAChF,cAAc,EAAE,IAAI;iBACrB,CAAC,CAAC;gBACH,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBACpC,MAAM,IAAI,qBAAqB,CAC7B,uBAAuB,EACvB,eAAe,MAAM,KAAK,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC5F,kEAAkE,CACnE,CAAC;gBACJ,CAAC;gBACD,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC3D,WAAW,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC9E,CAAC;YACH,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ;gBAAE,SAAS;YACrE,MAAM,GAAG,GAAG,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACzC,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5C,IAAI,CAAC,UAAU;gBAAE,SAAS;YAC1B,MAAM,WAAW,GAAG,mBAAmB,CACrC,GAAG,EACH,UAAU,CAAC,QAAQ,EACnB,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EACxC,EAAE,cAAc,EAAE,IAAI,EAAE,CACzB,CAAC;YACF,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC,CAAC;IACF,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACpC,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,yBAAyB,CAAC,OAMzC;IACC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,6BAA6B,CAAC;IACnE,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAiC,CAAC;IAC1D,MAAM,KAAK,GAA2B,EAAE,CAAC;IACzC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAElC,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,QAAiC,EAAE,KAAa,EAAQ,EAAE;QACrF,IAAI,KAAK,IAAI,QAAQ,EAAE,CAAC;YACtB,MAAM,IAAI,qBAAqB,CAC7B,4BAA4B,EAC5B,sCAAsC,QAAQ,GAAG,EACjD,oCAAoC,QAAQ,EAAE,CAC/C,CAAC;QACJ,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;YAC9B,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACzC,IAAI,UAAU,IAAI,CAAC,IAAI,GAAG,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC;gBAC/C,MAAM,KAAK,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;gBAChE,MAAM,IAAI,qBAAqB,CAC7B,mBAAmB,EACnB,+BAA+B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EACpD,gEAAgE,CACjE,CAAC;YACJ,CAAC;YACD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,qBAAqB,CAC7B,4BAA4B,EAC5B,UAAU,GAAG,8CAA8C,EAC3D,OAAO,GAAG,qDAAqD,CAChE,CAAC;YACJ,CAAC;YACD,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAC9B,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAS;YAC/B,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnB,KAAK,CAAC,GAAG,EAAE,UAAU,CAAC,QAAQ,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YAC3C,QAAQ,CAAC,GAAG,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACH,CAAC,CAAC;IAEF,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACxC,QAAQ,CAAC,GAAG,EAAE,CAAC;IAEf,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;IAC7C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,qBAAqB,CAC7B,kCAAkC,EAClC,4DAA4D,EAC5D,qEAAqE,CACtE,CAAC;IACJ,CAAC;IACD,MAAM,YAAY,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;SACxC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;SAC1D,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACd,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC;QACxC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,qBAAqB,CAC7B,kCAAkC,EAClC,mBAAmB,MAAM,CAAC,GAAG,iCAAiC,EAC9D,UAAU,MAAM,CAAC,GAAG,yDAAyD,CAC9E,CAAC;QACJ,CAAC;QACD,OAAO;YACL,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,MAAM;YACN,QAAQ,EAAE,0BAA0B,CAAC,MAAM,CAAE;YAC7C,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvD,CAAC;IACJ,CAAC,CAAC,CAAC;IACL,OAAO;QACL,OAAO,EAAE,QAAQ;QACjB,KAAK;QACL,QAAQ,EAAE;YACR,cAAc,EAAE,CAAC;YACjB,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE;YAClD,YAAY;YACZ,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACrC,cAAc,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC,CACvE;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,IAAY,EAAE,KAAa;IACjD,OAAO,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,QAAQ,CAAC,MAA+B;IAC/C,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QACrE,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;YAC9E,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -26,6 +26,9 @@ export interface ExecuteRecipeOptions {
26
26
  actionManifest: RecipeActionManifestDocument;
27
27
  adapters: ReadonlyMap<string, ActionAdapter>;
28
28
  traceWriter: TraceWriter;
29
+ claimProjections?: ReadonlyMap<string, {
30
+ proves?: string[];
31
+ }>;
29
32
  logger: RecipeLogger;
30
33
  defaultObserverRefs: DefaultObserverRefs;
31
34
  createContext(nodeId: string, recipe: unknown, outputs: ReadonlyMap<string, unknown>, getOutput: (nodeId: string) => unknown): ActionExecutionContext;
@@ -1 +1 @@
1
- {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../src/core/execution.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,4BAA4B,EACjC,KAAK,kBAAkB,EAExB,MAAM,oBAAoB,CAAC;AAY5B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAE1D,OAAO,EACL,KAAK,mBAAmB,EAIzB,MAAM,2BAA2B,CAAC;AAInC,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACtB,YAAY,EAEZ,YAAY,EACZ,eAAe,EACf,WAAW,EACZ,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,6BAA6B,IAAI,CAAC;AAE/C,KAAK,YAAY,GAAG,CAClB,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,EACnC,KAAK,EAAE;IACL,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,sBAAsB,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,KACE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IACpD,cAAc,EAAE,4BAA4B,CAAC;IAC7C,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC7C,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,YAAY,CAAC;IACrB,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,aAAa,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,EACrC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,GACrC,sBAAsB,CAAC;IAC1B,iBAAiB,CAAC,SAAS,EAAE,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC;IAC3E,kBAAkB,CAAC,EAAE,YAAY,CAAC;IAClC,oFAAoF;IACpF,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,eAAe,CAAC;IACxB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAiU/F"}
1
+ {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../src/core/execution.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,4BAA4B,EACjC,KAAK,kBAAkB,EAExB,MAAM,oBAAoB,CAAC;AAY5B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAE1D,OAAO,EACL,KAAK,mBAAmB,EAIzB,MAAM,2BAA2B,CAAC;AAInC,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACtB,YAAY,EAEZ,YAAY,EACZ,eAAe,EACf,WAAW,EACZ,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,6BAA6B,IAAI,CAAC;AAE/C,KAAK,YAAY,GAAG,CAClB,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,EACnC,KAAK,EAAE;IACL,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,sBAAsB,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,KACE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IACpD,cAAc,EAAE,4BAA4B,CAAC;IAC7C,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC7C,WAAW,EAAE,WAAW,CAAC;IACzB,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IAC9D,MAAM,EAAE,YAAY,CAAC;IACrB,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,aAAa,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,EACrC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,GACrC,sBAAsB,CAAC;IAC1B,iBAAiB,CAAC,SAAS,EAAE,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC;IAC3E,kBAAkB,CAAC,EAAE,YAAY,CAAC;IAClC,oFAAoF;IACpF,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,eAAe,CAAC;IACxB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAmW/F"}
@@ -1,4 +1,4 @@
1
- import { normalizeRecipeRef, validateResolvedRecipeActionNode, } from '@farmslot/protocol';
1
+ import { normalizeRecipeRef, RECIPE_ASSERTION_ACTIONS, validateResolvedRecipeActionNode, } from '@farmslot/protocol';
2
2
  import { withRecipeExecutionSignal } from './execution-signal.js';
3
3
  import { assertRecipeActive, recipeAbortError, RecipeExecutionError, recipeFailureCause, recipeFailureTraceFields, } from './failure.js';
4
4
  import { extractWorkflowGraph, resolveNextNode } from './graph.js';
@@ -33,7 +33,9 @@ export async function executeRecipe(options) {
33
33
  const runGraph = async (entry, nodeCount, stopAfterNode, signal) => {
34
34
  let currentNodeId = entry;
35
35
  let transitionCount = 0;
36
- const maxTransitions = Math.max(1, nodeCount);
36
+ const maxTransitions = Math.max(1, nodeCount) +
37
+ Object.values(graph.nodes).reduce((count, node) => count + Math.max(0, Number(node.retryAttempts ?? 1) - 1), 0);
38
+ const attempts = new Map();
37
39
  while (currentNodeId) {
38
40
  const localNodeId = currentNodeId;
39
41
  const namespacedNodeId = `${prefix}${localNodeId}`;
@@ -70,6 +72,8 @@ export async function executeRecipe(options) {
70
72
  }
71
73
  const node = resolvedNode;
72
74
  const action = String(node.action);
75
+ const retryAttempt = (attempts.get(localNodeId) ?? 0) + 1;
76
+ attempts.set(localNodeId, retryAttempt);
73
77
  const startedAt = new Date();
74
78
  if (action === 'end') {
75
79
  const authored = terminalStatus(node.status);
@@ -171,11 +175,20 @@ export async function executeRecipe(options) {
171
175
  observationResult,
172
176
  observeRefs,
173
177
  });
178
+ const still = await captureAutomaticStill(options, node, context, retryAttempt);
179
+ if (still)
180
+ result.artifacts = [...(result.artifacts ?? []), still];
174
181
  options.traceWriter.record({
175
182
  nodeId: namespacedNodeId,
176
183
  action,
177
184
  ...(action === 'call' ? { recipe: recipeCallTrace(node, options.recipes) } : {}),
178
185
  ...traceNodeMetadata(node, result),
186
+ ...(typeof node.retryGroup === 'string'
187
+ ? { retryGroup: node.retryGroup, retryAttempt }
188
+ : {}),
189
+ ...(options.claimProjections?.get(namespacedNodeId)?.proves
190
+ ? { proves: options.claimProjections.get(namespacedNodeId).proves }
191
+ : {}),
179
192
  startedAt: startedAt.toISOString(),
180
193
  endedAt: new Date().toISOString(),
181
194
  durationMs: Date.now() - startedAt.getTime(),
@@ -212,7 +225,6 @@ export async function executeRecipe(options) {
212
225
  const failure = signal?.aborted ? recipeAbortError(signal) : error;
213
226
  const message = failure instanceof Error ? failure.message : String(failure);
214
227
  const causeClass = recipeFailureCause(failure);
215
- failureCause ??= causeClass;
216
228
  if (options.publishHudProgress) {
217
229
  try {
218
230
  await options.publishHudProgress('fail', {
@@ -230,11 +242,21 @@ export async function executeRecipe(options) {
230
242
  options.logger.warn(`app.hud failure update failed for ${namespacedNodeId}: ${hudError instanceof Error ? hudError.message : String(hudError)}`);
231
243
  }
232
244
  }
245
+ const failureStill = signal?.aborted
246
+ ? undefined
247
+ : await captureAutomaticStill(options, node, context, retryAttempt);
233
248
  options.traceWriter.record({
234
249
  nodeId: namespacedNodeId,
235
250
  action,
236
251
  ...(action === 'call' ? { recipe: recipeCallTrace(node, options.recipes) } : {}),
237
252
  ...traceNodeMetadata(node),
253
+ ...(failureStill ? { artifacts: [failureStill] } : {}),
254
+ ...(typeof node.retryGroup === 'string'
255
+ ? { retryGroup: node.retryGroup, retryAttempt }
256
+ : {}),
257
+ ...(options.claimProjections?.get(namespacedNodeId)?.proves
258
+ ? { proves: options.claimProjections.get(namespacedNodeId).proves }
259
+ : {}),
238
260
  startedAt: startedAt.toISOString(),
239
261
  endedAt: new Date().toISOString(),
240
262
  durationMs: Date.now() - startedAt.getTime(),
@@ -243,6 +265,13 @@ export async function executeRecipe(options) {
243
265
  error: message,
244
266
  ...recipeFailureTraceFields(failure),
245
267
  });
268
+ if (!signal?.aborted &&
269
+ causeClass === 'subject' &&
270
+ typeof node.retryGroup === 'string' &&
271
+ RECIPE_ASSERTION_ACTIONS.has(action) &&
272
+ retryAttempt < Number(node.retryAttempts ?? 1))
273
+ continue;
274
+ failureCause ??= causeClass;
246
275
  return 'fail';
247
276
  }
248
277
  }
@@ -299,6 +328,34 @@ function recipeCallTrace(node, recipes) {
299
328
  ...(resolved.adapter ? { adapter: resolved.adapter } : {}),
300
329
  };
301
330
  }
331
+ /** Snapshot failures are environment facts, not failed product expectations. */
332
+ async function captureAutomaticStill(options, node, context, attempt) {
333
+ const action = String(node.action);
334
+ if (!RECIPE_ASSERTION_ACTIONS.has(action) ||
335
+ !action.startsWith('ui.') ||
336
+ !context.captureRecordingSnapshot)
337
+ return undefined;
338
+ const file = `stills/${encodeURIComponent(context.nodeId)}-${attempt}.png`;
339
+ try {
340
+ const frame = await context.captureRecordingSnapshot(file);
341
+ const artifact = {
342
+ path: file,
343
+ type: 'screenshot',
344
+ mimeType: 'image/png',
345
+ nodeId: context.nodeId,
346
+ category: 'evidence',
347
+ label: typeof node.intent === 'string' ? node.intent : context.nodeId,
348
+ metadata: { recordedEvidence: { ...frame, traceIndex: options.traceWriter.list().length } },
349
+ };
350
+ options.registerArtifacts([artifact]);
351
+ return artifact;
352
+ }
353
+ catch (error) {
354
+ // An unavailable optional still keeps the clip usable and the failure visible in the trace.
355
+ recordSyntheticFailure(options.traceWriter, `${context.nodeId}:still:${attempt}`, error instanceof Error ? error : new Error(String(error)), 'record.snapshot', 'environment');
356
+ return undefined;
357
+ }
358
+ }
302
359
  async function executeAction(adapter, action, node, context) {
303
360
  await verifyExecutableSource(adapter, `Action ${action}`);
304
361
  return adapter.execute(node, context);
@@ -1 +1 @@
1
- {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../src/core/execution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../src/core/execution.ts"],"names":[],"mappings":"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"}
@@ -9,4 +9,5 @@ export interface WorkflowGraph {
9
9
  }
10
10
  export declare function extractWorkflowGraph(recipe: unknown): WorkflowGraph;
11
11
  export declare function resolveNextNode(node: Record<string, unknown>, result: Pick<ActionResult, 'case'>): string | undefined;
12
+ export declare function reachableNodes(nodes: Record<string, Record<string, unknown>>, entry: string): Set<string>;
12
13
  //# sourceMappingURL=graph.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../src/core/graph.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC/C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,aAAa,CAwBnE;AAED,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,GACjC,MAAM,GAAG,SAAS,CAkBpB"}
1
+ {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../src/core/graph.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC/C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,aAAa,CAwBnE;AAED,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,GACjC,MAAM,GAAG,SAAS,CAkBpB;AAED,wBAAgB,cAAc,CAC5B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAC9C,KAAK,EAAE,MAAM,GACZ,GAAG,CAAC,MAAM,CAAC,CAkBb"}
@@ -1,4 +1,4 @@
1
- import { isRecord } from './json.js';
1
+ import { isRecord } from '@farmslot/protocol';
2
2
  export function extractWorkflowGraph(recipe) {
3
3
  if (!isRecord(recipe) || !isRecord(recipe.workflow)) {
4
4
  throw new Error('Recipe must include workflow.');
@@ -38,7 +38,7 @@ export function resolveNextNode(node, result) {
38
38
  }
39
39
  return typeof node.next === 'string' ? node.next : undefined;
40
40
  }
41
- function reachableNodes(nodes, entry) {
41
+ export function reachableNodes(nodes, entry) {
42
42
  const reachable = new Set();
43
43
  const queue = [entry];
44
44
  while (queue.length) {
@@ -1 +1 @@
1
- {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/core/graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/core/graph.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"hud.d.ts","sourceRoot":"","sources":["../../src/core/hud.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,EACnC,KAAK,EAAE;IACL,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,EACD,OAAO,EAAE,gBAAgB,GAAG,KAAK,GAAG,SAAS,GAC5C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA6BzB"}
1
+ {"version":3,"file":"hud.d.ts","sourceRoot":"","sources":["../../src/core/hud.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,EACnC,KAAK,EAAE;IACL,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,EACD,OAAO,EAAE,gBAAgB,GAAG,KAAK,GAAG,SAAS,GAC5C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA6BzB"}
package/dist/core/hud.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { hudIntentDisplay, hudSecondaryText } from '@farmslot/protocol/recipe';
1
2
  import { isRecord } from './json.js';
2
3
  export function buildHudNode(status, event, options) {
3
4
  const title = options && options.title
@@ -6,7 +7,7 @@ export function buildHudNode(status, event, options) {
6
7
  ? event.recipe.title
7
8
  : 'Recipe run';
8
9
  const flow = hudFlow(event.action, event.node);
9
- const text = hudText(event.action, status, event.node);
10
+ const text = hudIntentDisplay(hudText(event.action, status, event.node)).text;
10
11
  const detail = normalizeHudSecondary(hudDetail(event.node), text, flow);
11
12
  return {
12
13
  action: 'app.hud',
@@ -114,7 +115,6 @@ function hudErrorSummary(error) {
114
115
  summary = summary.slice(0, resultIndex);
115
116
  if (nestedError && !summary.includes(nestedError))
116
117
  summary = `${summary}: ${nestedError}`;
117
- const maxLength = 180;
118
- return summary.length > maxLength ? `${summary.slice(0, maxLength - 1)}…` : summary;
118
+ return hudSecondaryText(summary);
119
119
  }
120
120
  //# sourceMappingURL=hud.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hud.js","sourceRoot":"","sources":["../../src/core/hud.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGrC,MAAM,UAAU,YAAY,CAC1B,MAAmC,EACnC,KAQC,EACD,OAA6C;IAE7C,MAAM,KAAK,GACT,OAAO,IAAI,OAAO,CAAC,KAAK;QACtB,CAAC,CAAC,OAAO,CAAC,KAAK;QACf,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,QAAQ;YAChE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;YACpB,CAAC,CAAC,YAAY,CAAC;IACrB,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,qBAAqB,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACxE,OAAO;QACL,MAAM,EAAE,SAAS;QACjB,KAAK;QACL,MAAM;QACN,OAAO,EAAE,KAAK,CAAC,MAAM;QACrB,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC;QAC7B,IAAI,EAAE,IAAI,IAAI,SAAS;QACvB,MAAM;QACN,IAAI;QACJ,WAAW,EAAE,KAAK,CAAC,MAAM;QACzB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM;QACzB,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;QAC7D,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC;QAChF,QAAQ,EAAE;YACR,OAAO,EAAE,KAAK,CAAC,KAAK;YACpB,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB;KACF,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,OAA6C;IAC/D,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IAC5C,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;AAChC,CAAC;AAED,SAAS,cAAc,CAAC,MAAmC;IACzD,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC3C,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,QAAQ,CAAC;IACvC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,OAAO,CAAC,OAAe,EAAE,IAA6B;IAC7D,KAAK,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;QAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE;YAAE,OAAO,KAAK,CAAC;IAC9D,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,OAAO,CACd,MAAc,EACd,MAAmC,EACnC,IAA6B;IAE7B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE;QAAE,OAAO,MAAM,CAAC;IAC/D,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACrB,IAAI,MAAM,KAAK,MAAM;YAAE,OAAO,eAAe,CAAC;QAC9C,IAAI,MAAM,KAAK,MAAM;YAAE,OAAO,kBAAkB,CAAC;QACjD,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,+EAA+E,CAAC,CAAC;AACnG,CAAC;AAED,SAAS,SAAS,CAAC,IAA6B;IAC9C,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC;IACnC,IAAI,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,CAAC,IAAI,EAAE;QAAE,OAAO,cAAc,CAAC;IACvF,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,KAAK,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC7E,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;YACzF,SAAS,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9D,CAAC;AAED,SAAS,qBAAqB,CAC5B,KAAyB,EACzB,MAAc,EACd,IAAY;IAEZ,MAAM,UAAU,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC;IACjC,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAC;IAClC,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IACnE,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1D,MAAM,KAAK,GAAG,KAAK;SAChB,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACf,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,6BAA6B,CAAC;YAAE,OAAO,KAAK,CAAC;QAC/D,IAAI,IAAI,CAAC,UAAU,CAAC,6BAA6B,CAAC;YAAE,OAAO,KAAK,CAAC;QACjE,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,KAAK,CAAC;QAC7C,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACzC,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;YAAE,OAAO,KAAK,CAAC;QAC9C,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IACL,MAAM,SAAS,GACb,CAAC,GAAG,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC/D,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC9C,KAAK,CAAC,CAAC,CAAC;QACR,KAAK,CAAC;IACR,IAAI,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC;QACzC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC;QAClE,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACjD,IAAI,WAAW,GAAG,CAAC;QAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IAC7D,IAAI,WAAW,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,GAAG,GAAG,OAAO,KAAK,WAAW,EAAE,CAAC;IAC1F,MAAM,SAAS,GAAG,GAAG,CAAC;IACtB,OAAO,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC;AACtF,CAAC"}
1
+ {"version":3,"file":"hud.js","sourceRoot":"","sources":["../../src/core/hud.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,16 @@
1
+ import { type RecipeClaimDeclaration } from '@farmslot/protocol';
1
2
  export interface RecipeInvocationDocument {
2
3
  version: 1;
3
4
  recipeDigest: string;
4
5
  startedAt: string;
5
6
  params: Record<string, unknown>;
6
7
  redactedPaths: string[];
8
+ claims?: readonly RecipeClaimDeclaration[];
9
+ recipeRunId?: string;
7
10
  }
8
11
  /** Retain typed public inputs without recording credential-bearing fields. */
9
12
  export declare function redactRecipeParams(params: Record<string, unknown>, schema: unknown): Pick<RecipeInvocationDocument, 'params' | 'redactedPaths'>;
10
- export declare function createRecipeInvocation(recipe: unknown, params: Record<string, unknown>, startedAt: string): RecipeInvocationDocument;
13
+ export declare function createRecipeInvocation(recipe: unknown, params: Record<string, unknown>, startedAt: string, claims?: readonly RecipeClaimDeclaration[], recipeRunId?: string): RecipeInvocationDocument;
11
14
  /** Reject mismatched or redacted inputs instead of validating a different execution. */
12
15
  export declare function recordedRecipeParams(recipe: unknown, invocation: unknown, summary: unknown): Record<string, unknown>;
13
16
  //# sourceMappingURL=invocation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"invocation.d.ts","sourceRoot":"","sources":["../../src/core/invocation.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,CAAC,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,8EAA8E;AAC9E,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,MAAM,EAAE,OAAO,GACd,IAAI,CAAC,wBAAwB,EAAE,QAAQ,GAAG,eAAe,CAAC,CA0C5D;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,SAAS,EAAE,MAAM,GAChB,wBAAwB,CAO1B;AAED,wFAAwF;AACxF,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,OAAO,EACf,UAAU,EAAE,OAAO,EACnB,OAAO,EAAE,OAAO,GACf,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAyBzB"}
1
+ {"version":3,"file":"invocation.d.ts","sourceRoot":"","sources":["../../src/core/invocation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,KAAK,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAMjG,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,CAAC,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,CAAC,EAAE,SAAS,sBAAsB,EAAE,CAAC;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,8EAA8E;AAC9E,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,MAAM,EAAE,OAAO,GACd,IAAI,CAAC,wBAAwB,EAAE,QAAQ,GAAG,eAAe,CAAC,CA0C5D;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,SAAS,sBAAsB,EAAE,EAC1C,WAAW,CAAC,EAAE,MAAM,GACnB,wBAAwB,CAS1B;AAED,wFAAwF;AACxF,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,OAAO,EACf,UAAU,EAAE,OAAO,EACnB,OAAO,EAAE,OAAO,GACf,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAyBzB"}
@@ -37,12 +37,14 @@ export function redactRecipeParams(params, schema) {
37
37
  }
38
38
  return { params: visit(params, schema, ''), redactedPaths };
39
39
  }
40
- export function createRecipeInvocation(recipe, params, startedAt) {
40
+ export function createRecipeInvocation(recipe, params, startedAt, claims, recipeRunId) {
41
41
  return {
42
42
  version: 1,
43
+ ...(recipeRunId ? { recipeRunId } : {}),
43
44
  recipeDigest: digestRecipeDocument(recipe),
44
45
  startedAt,
45
46
  ...redactRecipeParams(params, isRecord(recipe) ? recipe.paramsSchema : undefined),
47
+ ...(claims ? { claims } : {}),
46
48
  };
47
49
  }
48
50
  /** Reject mismatched or redacted inputs instead of validating a different execution. */
@@ -1 +1 @@
1
- {"version":3,"file":"invocation.js","sourceRoot":"","sources":["../../src/core/invocation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAEpE,MAAM,aAAa,GACjB,sGAAsG,CAAC;AACzG,MAAM,gBAAgB,GAAG,kCAAkC,CAAC;AAU5D,8EAA8E;AAC9E,MAAM,UAAU,kBAAkB,CAChC,MAA+B,EAC/B,MAAe;IAEf,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,SAAS,KAAK,CAAC,KAAc,EAAE,UAAmB,EAAE,OAAe;QACjE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAChC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,OAAO,IAAI,KAAK,EAAE,CAAC,CACzF,CAAC;QACJ,CAAC;QACD,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,MAAM,UAAU,GACd,QAAQ,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YACvF,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBACzC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;gBAC9B,MAAM,SAAS,GAAG,GAAG,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;gBACjF,MAAM,WAAW,GACf,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC;oBAC1B,QAAQ,CAAC,KAAK,CAAC;oBACf,KAAK,CAAC,IAAI,KAAK,SAAS;oBACxB,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC;oBAC3B,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACrB,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;oBAC5C,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAC9B,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;gBAC7B,CAAC;gBACD,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;YAC/C,CAAC,CAAC,CACH,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,KAAK;iBACnB,OAAO,CAAC,iCAAiC,EAAE,eAAe,CAAC;iBAC3D,OAAO,CACN,gHAAgH,EAChH,cAAc,CACf,CAAC;YACJ,IAAI,QAAQ,KAAK,KAAK;gBAAE,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpD,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAA4B,EAAE,aAAa,EAAE,CAAC;AACzF,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,MAAe,EACf,MAA+B,EAC/B,SAAiB;IAEjB,OAAO;QACL,OAAO,EAAE,CAAC;QACV,YAAY,EAAE,oBAAoB,CAAC,MAAM,CAAC;QAC1C,SAAS;QACT,GAAG,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;KAClF,CAAC;AACJ,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,oBAAoB,CAClC,MAAe,EACf,UAAmB,EACnB,OAAgB;IAEhB,IACE,CAAC,QAAQ,CAAC,UAAU,CAAC;QACrB,UAAU,CAAC,OAAO,KAAK,CAAC;QACxB,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC;QAC5B,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC;QACxC,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;QACrE,CAAC,QAAQ,CAAC,OAAO,CAAC;QAClB,OAAO,UAAU,CAAC,SAAS,KAAK,QAAQ;QACxC,UAAU,CAAC,SAAS,KAAK,OAAO,CAAC,SAAS;QAC1C,UAAU,CAAC,YAAY,KAAK,oBAAoB,CAAC,MAAM,CAAC;QACxD,OAAO,CAAC,gBAAgB,KAAK,oBAAoB,CAAC,UAAU,CAAC,EAC7D,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;IACjG,CAAC;IACD,MAAM,IAAI,GAAG,kBAAkB,CAC7B,UAAU,CAAC,MAAM,EACjB,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CACnD,CAAC;IACF,IAAI,UAAU,CAAC,aAAa,CAAC,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;QACjE,MAAM,IAAI,KAAK,CACb,iHAAiH,CAClH,CAAC;IACJ,CAAC;IACD,OAAO,UAAU,CAAC,MAAM,CAAC;AAC3B,CAAC"}
1
+ {"version":3,"file":"invocation.js","sourceRoot":"","sources":["../../src/core/invocation.ts"],"names":[],"mappings":"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"}
@@ -5,5 +5,6 @@ export declare function asString(value: unknown, label: string): string;
5
5
  export declare function asOptionalString(value: unknown, label: string): string | undefined;
6
6
  export declare function asNumber(value: unknown, label: string): number;
7
7
  export declare function normalizeRelativePath(relativePath: string): string;
8
+ export declare function getJsonPathParts(jsonPath: string): string[];
8
9
  export declare function getJsonPathValue(value: unknown, jsonPath: string): unknown;
9
10
  //# sourceMappingURL=json.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../src/core/json.ts"],"names":[],"mappings":"AAGA,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAQrE;AAED,wBAAsB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAGnF;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzE;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAK9D;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAGlF;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAK9D;AAED,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CASlE;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAuB1E"}
1
+ {"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../src/core/json.ts"],"names":[],"mappings":"AAGA,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAQrE;AAED,wBAAsB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAGnF;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzE;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAK9D;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAGlF;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAK9D;AAED,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CASlE;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAM3D;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAc1E"}
package/dist/core/json.js CHANGED
@@ -44,18 +44,16 @@ export function normalizeRelativePath(relativePath) {
44
44
  }
45
45
  return normalized;
46
46
  }
47
- export function getJsonPathValue(value, jsonPath) {
47
+ export function getJsonPathParts(jsonPath) {
48
48
  if (jsonPath === '$')
49
- return value;
50
- if (!jsonPath.startsWith('$.')) {
49
+ return [];
50
+ if (!/^\$\.(?:[^.[\]]+|\[\d+\])(?:\.[^.[\]]+|\[\d+\])*$/u.test(jsonPath)) {
51
51
  throw new Error(`Only simple $.path JSON paths are supported, received ${jsonPath}.`);
52
52
  }
53
- const parts = jsonPath
54
- .slice(2)
55
- .replaceAll('[', '.')
56
- .replaceAll(']', '')
57
- .split('.')
58
- .filter(Boolean);
53
+ return jsonPath.slice(2).replaceAll('[', '.').replaceAll(']', '').split('.').filter(Boolean);
54
+ }
55
+ export function getJsonPathValue(value, jsonPath) {
56
+ const parts = getJsonPathParts(jsonPath);
59
57
  let current = value;
60
58
  for (const part of parts) {
61
59
  if (Array.isArray(current)) {