@adcp/sdk 13.0.0-rc.11 → 13.0.0-rc.13

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 (81) hide show
  1. package/dist/lib/index.d.mts +1 -1
  2. package/dist/lib/index.d.ts +1 -1
  3. package/dist/lib/index.d.ts.map +1 -1
  4. package/dist/lib/index.js +4 -0
  5. package/dist/lib/index.js.map +1 -1
  6. package/dist/lib/index.mjs +4 -0
  7. package/dist/lib/index.mjs.map +1 -1
  8. package/dist/lib/registry/types.generated.d.mts +48 -1
  9. package/dist/lib/registry/types.generated.d.ts +48 -1
  10. package/dist/lib/registry/types.generated.d.ts.map +1 -1
  11. package/dist/lib/registry/types.generated.js.map +1 -1
  12. package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
  13. package/dist/lib/testing/compliance/comply.d.ts.map +1 -1
  14. package/dist/lib/testing/compliance/comply.js +8 -2
  15. package/dist/lib/testing/compliance/comply.js.map +1 -1
  16. package/dist/lib/testing/compliance/comply.mjs +8 -2
  17. package/dist/lib/testing/compliance/comply.mjs.map +1 -1
  18. package/dist/lib/testing/compliance/spec-conformance.d.ts.map +1 -1
  19. package/dist/lib/testing/compliance/spec-conformance.js +2 -0
  20. package/dist/lib/testing/compliance/spec-conformance.js.map +1 -1
  21. package/dist/lib/testing/compliance/spec-conformance.mjs +2 -0
  22. package/dist/lib/testing/compliance/spec-conformance.mjs.map +1 -1
  23. package/dist/lib/testing/compliance/summary.d.mts +2 -0
  24. package/dist/lib/testing/compliance/summary.d.ts +2 -0
  25. package/dist/lib/testing/compliance/summary.d.ts.map +1 -1
  26. package/dist/lib/testing/compliance/summary.js +3 -2
  27. package/dist/lib/testing/compliance/summary.js.map +1 -1
  28. package/dist/lib/testing/compliance/summary.mjs +3 -2
  29. package/dist/lib/testing/compliance/summary.mjs.map +1 -1
  30. package/dist/lib/testing/compliance/types.d.mts +4 -0
  31. package/dist/lib/testing/compliance/types.d.ts +4 -0
  32. package/dist/lib/testing/compliance/types.d.ts.map +1 -1
  33. package/dist/lib/testing/compliance/types.js.map +1 -1
  34. package/dist/lib/testing/storyboard/junit.js +49 -32
  35. package/dist/lib/testing/storyboard/junit.js.map +1 -1
  36. package/dist/lib/testing/storyboard/junit.mjs +49 -32
  37. package/dist/lib/testing/storyboard/junit.mjs.map +1 -1
  38. package/dist/lib/testing/storyboard/loader.d.ts.map +1 -1
  39. package/dist/lib/testing/storyboard/loader.js +26 -0
  40. package/dist/lib/testing/storyboard/loader.js.map +1 -1
  41. package/dist/lib/testing/storyboard/loader.mjs +26 -0
  42. package/dist/lib/testing/storyboard/loader.mjs.map +1 -1
  43. package/dist/lib/testing/storyboard/runner.d.ts.map +1 -1
  44. package/dist/lib/testing/storyboard/runner.js +66 -15
  45. package/dist/lib/testing/storyboard/runner.js.map +1 -1
  46. package/dist/lib/testing/storyboard/runner.mjs +70 -16
  47. package/dist/lib/testing/storyboard/runner.mjs.map +1 -1
  48. package/dist/lib/testing/storyboard/types.d.mts +26 -1
  49. package/dist/lib/testing/storyboard/types.d.ts +26 -1
  50. package/dist/lib/testing/storyboard/types.d.ts.map +1 -1
  51. package/dist/lib/testing/storyboard/types.js.map +1 -1
  52. package/dist/lib/testing/storyboard/types.mjs.map +1 -1
  53. package/dist/lib/testing/storyboard/validations.d.mts +11 -0
  54. package/dist/lib/testing/storyboard/validations.d.ts +11 -0
  55. package/dist/lib/testing/storyboard/validations.d.ts.map +1 -1
  56. package/dist/lib/testing/storyboard/validations.js +30 -13
  57. package/dist/lib/testing/storyboard/validations.js.map +1 -1
  58. package/dist/lib/testing/storyboard/validations.mjs +27 -13
  59. package/dist/lib/testing/storyboard/validations.mjs.map +1 -1
  60. package/dist/lib/v2/projection/augment-response.d.mts +45 -0
  61. package/dist/lib/v2/projection/augment-response.d.ts +45 -0
  62. package/dist/lib/v2/projection/augment-response.d.ts.map +1 -1
  63. package/dist/lib/v2/projection/augment-response.js +54 -0
  64. package/dist/lib/v2/projection/augment-response.js.map +1 -1
  65. package/dist/lib/v2/projection/augment-response.mjs +52 -0
  66. package/dist/lib/v2/projection/augment-response.mjs.map +1 -1
  67. package/dist/lib/v2/projection/index.d.mts +6 -1
  68. package/dist/lib/v2/projection/index.d.ts +6 -1
  69. package/dist/lib/v2/projection/index.d.ts.map +1 -1
  70. package/dist/lib/v2/projection/index.js +4 -0
  71. package/dist/lib/v2/projection/index.js.map +1 -1
  72. package/dist/lib/v2/projection/index.mjs +4 -0
  73. package/dist/lib/v2/projection/index.mjs.map +1 -1
  74. package/dist/lib/version.d.mts +3 -3
  75. package/dist/lib/version.d.ts +3 -3
  76. package/dist/lib/version.js +3 -3
  77. package/dist/lib/version.js.map +1 -1
  78. package/dist/lib/version.mjs +3 -3
  79. package/dist/lib/version.mjs.map +1 -1
  80. package/docs/migration-12-to-13.md +28 -0
  81. package/package.json +3 -1
@@ -3,8 +3,9 @@ import { injectLegacyEnvelopeStatus } from "../../utils/envelope-status-compat.m
3
3
  import { TRANSPORT_SUFFIX_REGEX } from "../../utils/a2a-discovery.mjs";
4
4
  import { validateResponse } from "../../validation/schema-validator.mjs";
5
5
  import { hasSchemaBundle } from "../../validation/schema-loader.mjs";
6
- import { ADCP_VERSION } from "../../version.mjs";
6
+ import { ADCP_VERSION, LIBRARY_VERSION } from "../../version.mjs";
7
7
  import { isPre31AdcpVersion } from "../../utils/adcp-version-config.mjs";
8
+ import { gte as semverGte, valid as validSemver } from "semver";
8
9
  import { isJsonContentType } from "../test-controller.mjs";
9
10
  import { globToRegExp } from "../../utils/glob.mjs";
10
11
  import {
@@ -20,15 +21,27 @@ import { validateCanonicalFormatSatisfaction } from "./canonical-format-satisfac
20
21
  import { extractTaskAdcpError } from "./rate-limit-trip.mjs";
21
22
  import { normalizeOAuthResourceForComparison, redactOAuthUrlForOutput } from "./oauth-metadata-graph/index.mjs";
22
23
  function runValidations(validations, context) {
23
- return validations.map((v) => attachOnFailure(runValidation(v, context), context, v));
24
+ return validations.map((v) => decorateValidationResult(runValidation(v, context), context, v));
24
25
  }
25
- function attachOnFailure(result, context, validation) {
26
- const withId = validation.id === void 0 ? result : {
26
+ const RUNNER_CAPABILITY_VERSION = LIBRARY_VERSION;
27
+ function validationFailsStep(result) {
28
+ return !result.passed && result.severity !== "advisory";
29
+ }
30
+ function decorateValidationResult(result, context, validation) {
31
+ const declaredSeverity = validation.severity ?? "required";
32
+ const expiry = validation.expires_after_version;
33
+ const shouldEvaluatePromotion = !result.not_applicable && declaredSeverity === "advisory" && expiry !== void 0;
34
+ if (shouldEvaluatePromotion && validSemver(expiry) === null) {
35
+ throw new Error(`expires_after_version must be valid semver; received ${JSON.stringify(expiry)}`);
36
+ }
37
+ const promotionApplied = shouldEvaluatePromotion && validSemver(RUNNER_CAPABILITY_VERSION) !== null && semverGte(RUNNER_CAPABILITY_VERSION, expiry);
38
+ const augmented = {
27
39
  ...result,
28
- id: validation.id
40
+ ...validation.id !== void 0 && { id: validation.id },
41
+ severity: promotionApplied ? "required" : declaredSeverity,
42
+ ...shouldEvaluatePromotion && { severity_promoted_from_advisory: promotionApplied }
29
43
  };
30
- if (withId.passed) return withId;
31
- const augmented = { ...withId };
44
+ if (augmented.passed) return augmented;
32
45
  if (context.request && augmented.request === void 0) augmented.request = context.request;
33
46
  if (context.response && augmented.response === void 0) augmented.response = context.response;
34
47
  return augmented;
@@ -121,12 +134,10 @@ function runValidation(validation, ctx) {
121
134
  default:
122
135
  return {
123
136
  check: validation.check,
124
- passed: false,
137
+ passed: true,
125
138
  description: validation.description,
126
- error: `runner does not implement authored check type '${validation.check}'`,
127
- json_pointer: null,
128
- expected: "a validation check implemented by this runner",
129
- actual: validation.check
139
+ not_applicable: true,
140
+ note: `runner does not implement authored check type '${validation.check}'`
130
141
  };
131
142
  }
132
143
  }
@@ -2384,8 +2395,11 @@ function validateCrossResponseCountDistinct(validation, ctx) {
2384
2395
  import { resolvePath as resolvePath2 } from "./path.mjs";
2385
2396
  export {
2386
2397
  LIST_WRAPPER_TOOLS,
2398
+ RUNNER_CAPABILITY_VERSION,
2399
+ decorateValidationResult,
2387
2400
  detectShapeDriftHint,
2388
2401
  resolvePath2 as resolvePath,
2389
- runValidations
2402
+ runValidations,
2403
+ validationFailsStep
2390
2404
  };
2391
2405
  //# sourceMappingURL=validations.mjs.map