@usearazzo/runner 1.0.1-alpha.22 → 1.0.1-alpha.24

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 (56) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/README.md +1 -1
  3. package/dist/arazzo-runner.browser.js +473 -293
  4. package/dist/arazzo-runner.browser.min.js +1 -1
  5. package/package.json +4 -4
  6. package/src/action/ActionResolver.cjs +4 -4
  7. package/src/action/ActionResolver.mjs +4 -4
  8. package/src/criterion/CriterionEvaluator.cjs +8 -9
  9. package/src/criterion/CriterionEvaluator.mjs +8 -9
  10. package/src/criterion/JSONPathCriterionEvaluator.cjs +1 -2
  11. package/src/criterion/JSONPathCriterionEvaluator.mjs +1 -2
  12. package/src/criterion/RegexCriterionEvaluator.cjs +1 -2
  13. package/src/criterion/RegexCriterionEvaluator.mjs +1 -2
  14. package/src/criterion/SimpleCriterionEvaluator.cjs +1 -2
  15. package/src/criterion/SimpleCriterionEvaluator.mjs +1 -2
  16. package/src/criterion/XPathCriterionEvaluator.cjs +4 -5
  17. package/src/criterion/XPathCriterionEvaluator.mjs +4 -5
  18. package/src/errors/CriterionError.cjs +52 -2
  19. package/src/errors/CriterionError.mjs +53 -2
  20. package/src/errors/ExecutionError.cjs +73 -2
  21. package/src/errors/ExecutionError.mjs +74 -2
  22. package/src/errors/ResolverError.cjs +53 -2
  23. package/src/errors/ResolverError.mjs +54 -2
  24. package/src/errors/RuntimeExpressionError.cjs +32 -2
  25. package/src/errors/RuntimeExpressionError.mjs +33 -2
  26. package/src/executor/ArazzoWorkflowLocatorNormalizer.cjs +4 -4
  27. package/src/executor/ArazzoWorkflowLocatorNormalizer.mjs +4 -4
  28. package/src/executor/OpenAPIOperationLocatorNormalizer.cjs +79 -47
  29. package/src/executor/OpenAPIOperationLocatorNormalizer.mjs +80 -48
  30. package/src/executor/StepExecutor.cjs +42 -32
  31. package/src/executor/StepExecutor.mjs +42 -32
  32. package/src/executor/StepRetryRunner.cjs +1 -1
  33. package/src/executor/StepRetryRunner.mjs +1 -1
  34. package/src/executor/StepTransitionInterpreter.cjs +3 -3
  35. package/src/executor/StepTransitionInterpreter.mjs +3 -3
  36. package/src/executor/WorkflowCallStack.cjs +2 -2
  37. package/src/executor/WorkflowCallStack.mjs +2 -2
  38. package/src/executor/WorkflowExecutor.cjs +17 -16
  39. package/src/executor/WorkflowExecutor.mjs +17 -16
  40. package/src/executor/abort.cjs +3 -3
  41. package/src/executor/abort.mjs +3 -3
  42. package/src/expression/RuntimeExpressionEvaluator.cjs +5 -5
  43. package/src/expression/RuntimeExpressionEvaluator.mjs +5 -5
  44. package/src/index.cjs +0 -7
  45. package/src/index.mjs +0 -1
  46. package/src/resolver/OpenAPIOperationParameterResolver.cjs +6 -6
  47. package/src/resolver/OpenAPIOperationParameterResolver.mjs +6 -6
  48. package/src/resolver/OutputResolver.cjs +3 -3
  49. package/src/resolver/OutputResolver.mjs +3 -3
  50. package/src/resolver/RequestBodyResolver.cjs +6 -6
  51. package/src/resolver/RequestBodyResolver.mjs +6 -6
  52. package/src/resolver/WorkflowParameterResolver.cjs +1 -1
  53. package/src/resolver/WorkflowParameterResolver.mjs +1 -1
  54. package/types/runner.d.ts +236 -60
  55. package/src/criterion/CriterionErrorReason.cjs +0 -51
  56. package/src/criterion/CriterionErrorReason.mjs +0 -46
package/CHANGELOG.md CHANGED
@@ -3,6 +3,26 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [1.0.1-alpha.24](https://github.com/usearazzo/arazzo-toolkit/compare/v1.0.1-alpha.23...v1.0.1-alpha.24) (2026-11-04)
7
+
8
+ ### Features
9
+
10
+ - **runner:** type error reasons as static fields on error classes ([#320](https://github.com/usearazzo/arazzo-toolkit/issues/320)) ([3cdec78](https://github.com/usearazzo/arazzo-toolkit/commit/3cdec783d6fa9e54d83c3d9696ef1da1d6405bb5)), closes [#319](https://github.com/usearazzo/arazzo-toolkit/issues/319) [#78](https://github.com/usearazzo/arazzo-toolkit/issues/78)
11
+
12
+ ### BREAKING CHANGES
13
+
14
+ - **runner:** CriterionErrorReason is now a type-only export; use the
15
+ CriterionError statics (CriterionError.InvalidRegex) instead of the
16
+ CriterionErrorReason object. The reason of ExecutionError, ResolverError
17
+ and RuntimeExpressionError is typed as a union of its reasons instead of
18
+ string, and their constructors reject reasons the class does not list.
19
+
20
+ ## [1.0.1-alpha.23](https://github.com/usearazzo/arazzo-toolkit/compare/v1.0.1-alpha.22...v1.0.1-alpha.23) (2026-11-04)
21
+
22
+ ### Bug Fixes
23
+
24
+ - **runner:** align operation reference errors and name the workflow ([#318](https://github.com/usearazzo/arazzo-toolkit/issues/318)) ([308e386](https://github.com/usearazzo/arazzo-toolkit/commit/308e3860074d145983410c4d891471147bb2c3a7)), closes [#317](https://github.com/usearazzo/arazzo-toolkit/issues/317)
25
+
6
26
  ## [1.0.1-alpha.22](https://github.com/usearazzo/arazzo-toolkit/compare/v1.0.1-alpha.21...v1.0.1-alpha.22) (2026-11-04)
7
27
 
8
28
  ### Bug Fixes
package/README.md CHANGED
@@ -44,7 +44,7 @@ A runner is four building blocks, composed bottom-up; `ArazzoRunner` composes th
44
44
  <img alt="Runner architecture: WorkflowExecutor runs steps through StepExecutor, which runs OpenAPI operations through OpenAPIOperationExecutor and the HTTPClient; DocumentRegistry supplies documents to all three executors" src="https://raw.githubusercontent.com/usearazzo/arazzo-toolkit/main/packages/runner/assets/architecture.svg">
45
45
  </p>
46
46
 
47
- A step whose criteria go unmet is a result, not an error: the run resolves with `status: 'failed'`. A criterion whose condition cannot be evaluated (an invalid regex, JSONPath, XPath or simple condition, or non-XML data under an `xpath` query) counts as unmet, as Arazzo 1.1.0 requires, rather than throwing. So does a criterion of a step that calls a workflow when it reads `$statusCode`, `$url`, `$method`, `$request` or `$response`: that step made no HTTP call. Each step record's `successCriteria` and `actionCriteria` list every criterion its last attempt evaluated, as a `CriterionEvaluationRecord` with the condition, whether it was met, the action's name for an action criterion and, when it could not be evaluated, a `diagnostic` with a `code` and `message`, never request or response data. The type-specific criterion evaluators raise an unevaluable condition as `CriterionEvaluationError`, a `CriterionError` subclass, and every `CriterionError` carries a `reason` from `CriterionErrorReason`. Only a document that cannot be loaded or run as written, a request that cannot be built or sent, or a cancelled run throws, and every such error extends `ArazzoRunnerError`; a document that cannot be read or loaded (a missing file, an HTTP error, an unresolvable reference) throws `DocumentLoadError` with the underlying failure as its `cause`.
47
+ A step whose criteria go unmet is a result, not an error: the run resolves with `status: 'failed'`. A criterion whose condition cannot be evaluated (an invalid regex, JSONPath, XPath or simple condition, or non-XML data under an `xpath` query) counts as unmet, as Arazzo 1.1.0 requires, rather than throwing. So does a criterion of a step that calls a workflow when it reads `$statusCode`, `$url`, `$method`, `$request` or `$response`: that step made no HTTP call. Each step record's `successCriteria` and `actionCriteria` list every criterion its last attempt evaluated, as a `CriterionEvaluationRecord` with the condition, whether it was met, the action's name for an action criterion and, when it could not be evaluated, a `diagnostic` with a `code` and `message`, never request or response data. The type-specific criterion evaluators raise an unevaluable condition as `CriterionEvaluationError`, a `CriterionError` subclass, and every `CriterionError` carries a `reason`. `CriterionError`, `ExecutionError`, `ResolverError` and `RuntimeExpressionError` each list the reasons they can carry as static fields (`CriterionError.InvalidRegex`, `ExecutionError.OperationNotFound`), typed by `CriterionErrorReason`, `ExecutionErrorReason`, `ResolverErrorReason` and `RuntimeExpressionErrorReason`. Only a document that cannot be loaded or run as written, a request that cannot be built or sent, or a cancelled run throws, and every such error extends `ArazzoRunnerError`; a document that cannot be read or loaded (a missing file, an HTTP error, an unresolvable reference) throws `DocumentLoadError` with the underlying failure as its `cause`.
48
48
 
49
49
  ## Installation
50
50