@xemahq/contracts 0.86.0 → 0.87.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 (109) hide show
  1. package/dist/.source-stamp.json +2 -2
  2. package/dist/action-catalog/index.d.ts +2 -0
  3. package/dist/action-catalog/index.d.ts.map +1 -0
  4. package/dist/action-catalog/index.js +18 -0
  5. package/dist/action-catalog/index.js.map +1 -0
  6. package/dist/action-catalog/lib/action-catalog-kind.d.ts +8 -0
  7. package/dist/action-catalog/lib/action-catalog-kind.d.ts.map +1 -0
  8. package/dist/action-catalog/lib/action-catalog-kind.js +12 -0
  9. package/dist/action-catalog/lib/action-catalog-kind.js.map +1 -0
  10. package/dist/deliverable-validation/index.d.ts +2 -0
  11. package/dist/deliverable-validation/index.d.ts.map +1 -1
  12. package/dist/deliverable-validation/index.js +2 -0
  13. package/dist/deliverable-validation/index.js.map +1 -1
  14. package/dist/deliverable-validation/lib/deliverable-acceptance-hook.d.ts +6 -0
  15. package/dist/deliverable-validation/lib/deliverable-acceptance-hook.d.ts.map +1 -0
  16. package/dist/deliverable-validation/lib/deliverable-acceptance-hook.js +45 -0
  17. package/dist/deliverable-validation/lib/deliverable-acceptance-hook.js.map +1 -0
  18. package/dist/{output → deliverable-validation}/lib/deliverable-output-contract.d.ts +6 -6
  19. package/dist/deliverable-validation/lib/deliverable-output-contract.d.ts.map +1 -0
  20. package/dist/{output → deliverable-validation}/lib/deliverable-output-contract.js +26 -22
  21. package/dist/deliverable-validation/lib/deliverable-output-contract.js.map +1 -0
  22. package/dist/deliverable-validation/lib/phase.d.ts +5 -3
  23. package/dist/deliverable-validation/lib/phase.d.ts.map +1 -1
  24. package/dist/deliverable-validation/lib/phase.js +10 -17
  25. package/dist/deliverable-validation/lib/phase.js.map +1 -1
  26. package/dist/deliverable-validation/lib/validator-declaration.d.ts +1 -11
  27. package/dist/deliverable-validation/lib/validator-declaration.d.ts.map +1 -1
  28. package/dist/deliverable-validation/lib/validator-declaration.js +10 -17
  29. package/dist/deliverable-validation/lib/validator-declaration.js.map +1 -1
  30. package/dist/edition-protocol/edition-contract.schema.json +1 -1
  31. package/dist/edition-protocol/edition-protocol.json +1 -1
  32. package/dist/edition-protocol/lib/edition-protocol.js +2 -2
  33. package/dist/hook/index.d.ts +12 -0
  34. package/dist/hook/index.d.ts.map +1 -0
  35. package/dist/hook/index.js +28 -0
  36. package/dist/hook/index.js.map +1 -0
  37. package/dist/hook/lib/hook-aggregation.d.ts +76 -0
  38. package/dist/hook/lib/hook-aggregation.d.ts.map +1 -0
  39. package/dist/hook/lib/hook-aggregation.js +163 -0
  40. package/dist/hook/lib/hook-aggregation.js.map +1 -0
  41. package/dist/hook/lib/hook-binding-feed.d.ts +40 -0
  42. package/dist/hook/lib/hook-binding-feed.d.ts.map +1 -0
  43. package/dist/hook/lib/hook-binding-feed.js +107 -0
  44. package/dist/hook/lib/hook-binding-feed.js.map +1 -0
  45. package/dist/hook/lib/hook-binding-set.d.ts +58 -0
  46. package/dist/hook/lib/hook-binding-set.d.ts.map +1 -0
  47. package/dist/hook/lib/hook-binding-set.js +103 -0
  48. package/dist/hook/lib/hook-binding-set.js.map +1 -0
  49. package/dist/hook/lib/hook-binding.d.ts +51 -0
  50. package/dist/hook/lib/hook-binding.d.ts.map +1 -0
  51. package/dist/hook/lib/hook-binding.js +119 -0
  52. package/dist/hook/lib/hook-binding.js.map +1 -0
  53. package/dist/hook/lib/hook-deferral.d.ts +46 -0
  54. package/dist/hook/lib/hook-deferral.d.ts.map +1 -0
  55. package/dist/hook/lib/hook-deferral.js +113 -0
  56. package/dist/hook/lib/hook-deferral.js.map +1 -0
  57. package/dist/hook/lib/hook-enums.d.ts +121 -0
  58. package/dist/hook/lib/hook-enums.d.ts.map +1 -0
  59. package/dist/hook/lib/hook-enums.js +165 -0
  60. package/dist/hook/lib/hook-enums.js.map +1 -0
  61. package/dist/hook/lib/hook-handler-request.d.ts +15 -0
  62. package/dist/hook/lib/hook-handler-request.d.ts.map +1 -0
  63. package/dist/hook/lib/hook-handler-request.js +36 -0
  64. package/dist/hook/lib/hook-handler-request.js.map +1 -0
  65. package/dist/hook/lib/hook-identifiers.d.ts +12 -0
  66. package/dist/hook/lib/hook-identifiers.d.ts.map +1 -0
  67. package/dist/hook/lib/hook-identifiers.js +66 -0
  68. package/dist/hook/lib/hook-identifiers.js.map +1 -0
  69. package/dist/hook/lib/hook-patch.d.ts +20 -0
  70. package/dist/hook/lib/hook-patch.d.ts.map +1 -0
  71. package/dist/hook/lib/hook-patch.js +145 -0
  72. package/dist/hook/lib/hook-patch.js.map +1 -0
  73. package/dist/hook/lib/hook-point.d.ts +33 -0
  74. package/dist/hook/lib/hook-point.d.ts.map +1 -0
  75. package/dist/hook/lib/hook-point.js +105 -0
  76. package/dist/hook/lib/hook-point.js.map +1 -0
  77. package/dist/hook/lib/hook-verdict.d.ts +49 -0
  78. package/dist/hook/lib/hook-verdict.d.ts.map +1 -0
  79. package/dist/hook/lib/hook-verdict.js +66 -0
  80. package/dist/hook/lib/hook-verdict.js.map +1 -0
  81. package/dist/output/index.d.ts +0 -1
  82. package/dist/output/index.d.ts.map +1 -1
  83. package/dist/output/index.js +0 -1
  84. package/dist/output/index.js.map +1 -1
  85. package/dist/search-source/lib/indexable-document.d.ts +3 -0
  86. package/dist/search-source/lib/indexable-document.d.ts.map +1 -1
  87. package/dist/search-source/lib/indexable-document.js +2 -0
  88. package/dist/search-source/lib/indexable-document.js.map +1 -1
  89. package/dist/search-source/lib/search-index-event.d.ts +4 -0
  90. package/dist/search-source/lib/search-index-event.d.ts.map +1 -1
  91. package/dist/search-source/lib/search-index-event.js +2 -0
  92. package/dist/search-source/lib/search-index-event.js.map +1 -1
  93. package/dist/search-source/lib/search-replay.d.ts +1 -0
  94. package/dist/search-source/lib/search-replay.d.ts.map +1 -1
  95. package/dist/state-version/index.d.ts +2 -0
  96. package/dist/state-version/index.d.ts.map +1 -0
  97. package/dist/state-version/index.js +18 -0
  98. package/dist/state-version/index.js.map +1 -0
  99. package/dist/state-version/lib/state-version.d.ts +4 -0
  100. package/dist/state-version/lib/state-version.d.ts.map +1 -0
  101. package/dist/state-version/lib/state-version.js +6 -0
  102. package/dist/state-version/lib/state-version.js.map +1 -0
  103. package/dist/worker-runtime/lib/enums.d.ts +1 -1
  104. package/dist/worker-runtime/lib/enums.d.ts.map +1 -1
  105. package/dist/worker-runtime/lib/enums.js +6 -2
  106. package/dist/worker-runtime/lib/enums.js.map +1 -1
  107. package/package.json +2 -2
  108. package/dist/output/lib/deliverable-output-contract.d.ts.map +0 -1
  109. package/dist/output/lib/deliverable-output-contract.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "algorithm": "sha256/len-framed-v1",
3
- "hash": "3ae3c0496f12d2b8a5262e47657d9085e9816de716e989b02f1defdd02145dda",
4
- "fileCount": 759
3
+ "hash": "447c228114909acc321cfa28de2c5babede74b2505e9a580eca93dce11af9385",
4
+ "fileCount": 776
5
5
  }
@@ -0,0 +1,2 @@
1
+ export * from './lib/action-catalog-kind';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/action-catalog/index.ts"],"names":[],"mappings":"AAUA,cAAc,2BAA2B,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./lib/action-catalog-kind"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/action-catalog/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAUA,4DAA0C"}
@@ -0,0 +1,8 @@
1
+ import { z } from 'zod';
2
+ export declare enum ActionCatalogKind {
3
+ Capability = "capability",
4
+ Workflow = "workflow",
5
+ Function = "function"
6
+ }
7
+ export declare const ActionCatalogKindSchema: z.ZodEnum<typeof ActionCatalogKind>;
8
+ //# sourceMappingURL=action-catalog-kind.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action-catalog-kind.d.ts","sourceRoot":"","sources":["../../../src/action-catalog/lib/action-catalog-kind.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAexB,oBAAY,iBAAiB;IAC3B,UAAU,eAAe;IACzB,QAAQ,aAAa;IACrB,QAAQ,aAAa;CACtB;AAED,eAAO,MAAM,uBAAuB,qCAAkC,CAAC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ActionCatalogKindSchema = exports.ActionCatalogKind = void 0;
4
+ const zod_1 = require("zod");
5
+ var ActionCatalogKind;
6
+ (function (ActionCatalogKind) {
7
+ ActionCatalogKind["Capability"] = "capability";
8
+ ActionCatalogKind["Workflow"] = "workflow";
9
+ ActionCatalogKind["Function"] = "function";
10
+ })(ActionCatalogKind || (exports.ActionCatalogKind = ActionCatalogKind = {}));
11
+ exports.ActionCatalogKindSchema = zod_1.z.nativeEnum(ActionCatalogKind);
12
+ //# sourceMappingURL=action-catalog-kind.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action-catalog-kind.js","sourceRoot":"","sources":["../../../src/action-catalog/lib/action-catalog-kind.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAexB,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,8CAAyB,CAAA;IACzB,0CAAqB,CAAA;IACrB,0CAAqB,CAAA;AACvB,CAAC,EAJW,iBAAiB,iCAAjB,iBAAiB,QAI5B;AAEY,QAAA,uBAAuB,GAAG,OAAC,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC"}
@@ -1,4 +1,6 @@
1
1
  export * from './lib/phase';
2
2
  export * from './lib/outcome';
3
3
  export * from './lib/validator-declaration';
4
+ export * from './lib/deliverable-acceptance-hook';
5
+ export * from './lib/deliverable-output-contract';
4
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/deliverable-validation/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/deliverable-validation/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,mCAAmC,CAAC"}
@@ -17,4 +17,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./lib/phase"), exports);
18
18
  __exportStar(require("./lib/outcome"), exports);
19
19
  __exportStar(require("./lib/validator-declaration"), exports);
20
+ __exportStar(require("./lib/deliverable-acceptance-hook"), exports);
21
+ __exportStar(require("./lib/deliverable-output-contract"), exports);
20
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/deliverable-validation/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,gDAA8B;AAC9B,8DAA4C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/deliverable-validation/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,gDAA8B;AAC9B,8DAA4C;AAC5C,oEAAkD;AAClD,oEAAkD"}
@@ -0,0 +1,6 @@
1
+ import { type HookPointDeclaration, type HookVerdict } from '../../hook';
2
+ import { type DeliverableValidationOutcome } from './outcome';
3
+ export declare const DELIVERABLE_ACCEPTANCE_HOOK_POINT_ID = "deliverable.accept";
4
+ export declare const DELIVERABLE_ACCEPTANCE_HOOK_POINT: HookPointDeclaration;
5
+ export declare function deliverableAcceptanceVerdict(outcome: DeliverableValidationOutcome): HookVerdict;
6
+ //# sourceMappingURL=deliverable-acceptance-hook.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deliverable-acceptance-hook.d.ts","sourceRoot":"","sources":["../../../src/deliverable-validation/lib/deliverable-acceptance-hook.ts"],"names":[],"mappings":"AAWA,OAAO,EAKL,KAAK,oBAAoB,EACzB,KAAK,WAAW,EACjB,MAAM,YAAY,CAAC;AACpB,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,WAAW,CAAC;AAEnB,eAAO,MAAM,oCAAoC,uBAAuB,CAAC;AAEzE,eAAO,MAAM,iCAAiC,EAAE,oBAoB/C,CAAC;AAQF,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,4BAA4B,GACpC,WAAW,CAgBb"}
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DELIVERABLE_ACCEPTANCE_HOOK_POINT = exports.DELIVERABLE_ACCEPTANCE_HOOK_POINT_ID = void 0;
4
+ exports.deliverableAcceptanceVerdict = deliverableAcceptanceVerdict;
5
+ const action_catalog_1 = require("../../action-catalog");
6
+ const hook_1 = require("../../hook");
7
+ const outcome_1 = require("./outcome");
8
+ exports.DELIVERABLE_ACCEPTANCE_HOOK_POINT_ID = 'deliverable.accept';
9
+ exports.DELIVERABLE_ACCEPTANCE_HOOK_POINT = Object.freeze(hook_1.HookPointDeclarationSchema.parse({
10
+ id: exports.DELIVERABLE_ACCEPTANCE_HOOK_POINT_ID,
11
+ operation: exports.DELIVERABLE_ACCEPTANCE_HOOK_POINT_ID,
12
+ modes: [
13
+ {
14
+ mode: hook_1.HookMode.Admit,
15
+ actionKinds: [action_catalog_1.ActionCatalogKind.Capability, action_catalog_1.ActionCatalogKind.Function],
16
+ },
17
+ ],
18
+ writableFields: [],
19
+ inputProjection: ['/files'],
20
+ participation: [hook_1.HookParticipation.Required, hook_1.HookParticipation.Optional],
21
+ limits: {
22
+ maxFanOut: 32,
23
+ maxPayloadBytes: 1_048_576,
24
+ maxConcurrency: 8,
25
+ deadlineMs: 30_000,
26
+ },
27
+ }));
28
+ function deliverableAcceptanceVerdict(outcome) {
29
+ switch (outcome.status) {
30
+ case outcome_1.DeliverableValidationStatus.Complete:
31
+ return { kind: hook_1.HookVerdictKind.Allow };
32
+ case outcome_1.DeliverableValidationStatus.Invalid:
33
+ case outcome_1.DeliverableValidationStatus.Incomplete:
34
+ case outcome_1.DeliverableValidationStatus.Pending:
35
+ return {
36
+ kind: hook_1.HookVerdictKind.Deny,
37
+ reason: { code: `deliverable.${outcome.status}` },
38
+ };
39
+ default: {
40
+ const exhaustive = outcome.status;
41
+ throw new Error(`deliverableAcceptanceVerdict: unhandled status ${String(exhaustive)}.`);
42
+ }
43
+ }
44
+ }
45
+ //# sourceMappingURL=deliverable-acceptance-hook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deliverable-acceptance-hook.js","sourceRoot":"","sources":["../../../src/deliverable-validation/lib/deliverable-acceptance-hook.ts"],"names":[],"mappings":";;;AAsDA,oEAkBC;AA9DD,yDAAyD;AACzD,qCAOoB;AACpB,uCAGmB;AAEN,QAAA,oCAAoC,GAAG,oBAAoB,CAAC;AAE5D,QAAA,iCAAiC,GAAyB,MAAM,CAAC,MAAM,CAClF,iCAA0B,CAAC,KAAK,CAAC;IAC/B,EAAE,EAAE,4CAAoC;IACxC,SAAS,EAAE,4CAAoC;IAC/C,KAAK,EAAE;QACL;YACE,IAAI,EAAE,eAAQ,CAAC,KAAK;YACpB,WAAW,EAAE,CAAC,kCAAiB,CAAC,UAAU,EAAE,kCAAiB,CAAC,QAAQ,CAAC;SACxE;KACF;IACD,cAAc,EAAE,EAAE;IAClB,eAAe,EAAE,CAAC,QAAQ,CAAC;IAC3B,aAAa,EAAE,CAAC,wBAAiB,CAAC,QAAQ,EAAE,wBAAiB,CAAC,QAAQ,CAAC;IACvE,MAAM,EAAE;QACN,SAAS,EAAE,EAAE;QACb,eAAe,EAAE,SAAS;QAC1B,cAAc,EAAE,CAAC;QACjB,UAAU,EAAE,MAAM;KACnB;CACF,CAAC,CACH,CAAC;AAQF,SAAgB,4BAA4B,CAC1C,OAAqC;IAErC,QAAQ,OAAO,CAAC,MAAM,EAAE,CAAC;QACvB,KAAK,qCAA2B,CAAC,QAAQ;YACvC,OAAO,EAAE,IAAI,EAAE,sBAAe,CAAC,KAAK,EAAE,CAAC;QACzC,KAAK,qCAA2B,CAAC,OAAO,CAAC;QACzC,KAAK,qCAA2B,CAAC,UAAU,CAAC;QAC5C,KAAK,qCAA2B,CAAC,OAAO;YACtC,OAAO;gBACL,IAAI,EAAE,sBAAe,CAAC,IAAI;gBAC1B,MAAM,EAAE,EAAE,IAAI,EAAE,eAAe,OAAO,CAAC,MAAM,EAAE,EAAE;aAClD,CAAC;QACJ,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,UAAU,GAAU,OAAO,CAAC,MAAM,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,kDAAkD,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { type DeliverableValidatorDeclaration } from './validator-declaration';
1
2
  import { z } from 'zod';
2
3
  export declare const DeliverableContentKind: {
3
4
  readonly Json: "json";
@@ -30,7 +31,7 @@ declare const PatternFileEntrySchema: z.ZodObject<{
30
31
  min: z.ZodNumber;
31
32
  max: z.ZodNumber;
32
33
  }, z.core.$strict>;
33
- declare const FileEntrySchema: z.ZodUnion<readonly [z.ZodObject<{
34
+ export declare const DeliverableFileEntrySchema: z.ZodUnion<readonly [z.ZodObject<{
34
35
  fallbackPaths: z.ZodOptional<z.ZodArray<z.ZodString>>;
35
36
  required: z.ZodBoolean;
36
37
  purpose: z.ZodString;
@@ -80,6 +81,7 @@ declare const TargetSlotDescriptorSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
80
81
  kind: z.ZodLiteral<"repos">;
81
82
  repoSlug: z.ZodString;
82
83
  }, z.core.$strict>], "kind">;
84
+ export declare function addValidatorPathIssues(ctx: z.RefinementCtx, validators: readonly DeliverableValidatorDeclaration[] | undefined, files: readonly DeliverableOutputContractFile[] | undefined): void;
83
85
  export declare const DeliverableOutputContractSchema: z.ZodObject<{
84
86
  title: z.ZodString;
85
87
  mode: z.ZodEnum<{
@@ -128,16 +130,14 @@ export declare const DeliverableOutputContractSchema: z.ZodObject<{
128
130
  }, z.core.$strict>>;
129
131
  validators: z.ZodOptional<z.ZodArray<z.ZodObject<{
130
132
  capability: z.ZodType<import("../../capability").CapabilityRef, unknown, z.core.$ZodTypeInternals<import("../../capability").CapabilityRef, unknown>>;
131
- phase: z.ZodEnum<typeof import("@xemahq/contracts/deliverable-validation").DeliverableValidationPhase>;
132
- mode: z.ZodEnum<typeof import("@xemahq/contracts/deliverable-validation").DeliverableValidatorMode>;
133
- requiredForCompletion: z.ZodOptional<z.ZodBoolean>;
134
- repair: z.ZodOptional<z.ZodEnum<typeof import("@xemahq/contracts/deliverable-validation").DeliverableValidatorRepair>>;
133
+ phase: z.ZodEnum<typeof import("./phase").DeliverableValidationPhase>;
134
+ participation: z.ZodOptional<z.ZodEnum<typeof import("../../hook").HookParticipation>>;
135
135
  paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
136
136
  }, z.core.$strict>>>;
137
137
  notes: z.ZodOptional<z.ZodString>;
138
138
  }, z.core.$strict>;
139
139
  export type DeliverableOutputContract = z.infer<typeof DeliverableOutputContractSchema>;
140
- export type DeliverableOutputContractFile = z.infer<typeof FileEntrySchema>;
140
+ export type DeliverableOutputContractFile = z.infer<typeof DeliverableFileEntrySchema>;
141
141
  export type DeliverableOutputContractNamedFile = z.infer<typeof NamedFileEntrySchema>;
142
142
  export type DeliverableOutputContractPatternFile = z.infer<typeof PatternFileEntrySchema>;
143
143
  export type DeliverableOutputContractMultiPage = z.infer<typeof MultiPageSchema>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deliverable-output-contract.d.ts","sourceRoot":"","sources":["../../../src/deliverable-validation/lib/deliverable-output-contract.ts"],"names":[],"mappings":"AAYA,OAAO,EAEL,KAAK,+BAA+B,EACrC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,eAAO,MAAM,sBAAsB;;;;CAIzB,CAAC;AAEX,MAAM,MAAM,2BAA2B,GACrC,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,OAAO,sBAAsB,CAAC,CAAC;AAgBvE,QAAA,MAAM,oBAAoB;;;;;;;;;;;kBASf,CAAC;AAMZ,QAAA,MAAM,sBAAsB;;;;;;;;;;;;kBAkBxB,CAAC;AAEL,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;oBAA0D,CAAC;AAElG,QAAA,MAAM,eAAe;;;;;;;kBAkBV,CAAC;AAEZ,eAAO,MAAM,6BAA6B;;;;;CAKhC,CAAC;AAEX,MAAM,MAAM,kCAAkC,GAC5C,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,OAAO,6BAA6B,CAAC,CAAC;AAcrF,eAAO,MAAM,yBAAyB;;;CAG5B,CAAC;AAEX,MAAM,MAAM,8BAA8B,GACxC,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,OAAO,yBAAyB,CAAC,CAAC;AAI7E,QAAA,MAAM,0BAA0B;;;;;4BAkB9B,CAAC;AAOH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,CAAC,CAAC,aAAa,EACpB,UAAU,EAAE,SAAS,+BAA+B,EAAE,GAAG,SAAS,EAClE,KAAK,EAAE,SAAS,6BAA6B,EAAE,GAAG,SAAS,GAC1D,IAAI,CAiBN;AAED,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAkDxC,CAAC;AAEL,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AACxF,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AACvF,MAAM,MAAM,kCAAkC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AACtF,MAAM,MAAM,oCAAoC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAC1F,MAAM,MAAM,kCAAkC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACjF,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC"}
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DeliverableOutputContractSchema = exports.DeliverableTargetSlotKind = exports.DeliverableOutputContractMode = exports.DeliverableContentKind = void 0;
4
- const deliverable_validation_1 = require("@xemahq/contracts/deliverable-validation");
3
+ exports.DeliverableOutputContractSchema = exports.DeliverableTargetSlotKind = exports.DeliverableOutputContractMode = exports.DeliverableFileEntrySchema = exports.DeliverableContentKind = void 0;
4
+ exports.addValidatorPathIssues = addValidatorPathIssues;
5
+ const validator_declaration_1 = require("./validator-declaration");
5
6
  const zod_1 = require("zod");
6
7
  const SAFE_PATH_PATTERN = /^[a-zA-Z0-9._\-/]+$/;
7
8
  exports.DeliverableContentKind = {
@@ -49,7 +50,7 @@ const PatternFileEntrySchema = zod_1.z
49
50
  message: 'a required pattern entry must have min >= 1',
50
51
  path: ['min'],
51
52
  });
52
- const FileEntrySchema = zod_1.z.union([NamedFileEntrySchema, PatternFileEntrySchema]);
53
+ exports.DeliverableFileEntrySchema = zod_1.z.union([NamedFileEntrySchema, PatternFileEntrySchema]);
53
54
  const MultiPageSchema = zod_1.z
54
55
  .object({
55
56
  manifestPath: zod_1.z.string().min(1).regex(SAFE_PATH_PATTERN),
@@ -94,6 +95,25 @@ const TargetSlotDescriptorSchema = zod_1.z.discriminatedUnion('kind', [
94
95
  })
95
96
  .strict(),
96
97
  ]);
98
+ function addValidatorPathIssues(ctx, validators, files) {
99
+ if (validators === undefined)
100
+ return;
101
+ const declared = new Set();
102
+ for (const entry of files ?? []) {
103
+ declared.add('canonicalPath' in entry ? entry.canonicalPath : entry.pathPattern);
104
+ }
105
+ validators.forEach((validator, vi) => {
106
+ (validator.paths ?? []).forEach((path, pi) => {
107
+ if (!declared.has(path)) {
108
+ ctx.addIssue({
109
+ code: zod_1.z.ZodIssueCode.custom,
110
+ path: ['validators', vi, 'paths', pi],
111
+ message: `validator path '${path}' does not equal the canonicalPath or pathPattern of any files[] entry`,
112
+ });
113
+ }
114
+ });
115
+ });
116
+ }
97
117
  exports.DeliverableOutputContractSchema = zod_1.z
98
118
  .object({
99
119
  title: zod_1.z.string().min(1),
@@ -104,9 +124,9 @@ exports.DeliverableOutputContractSchema = zod_1.z
104
124
  exports.DeliverableOutputContractMode.NoOutput,
105
125
  ]),
106
126
  targetSlot: TargetSlotDescriptorSchema.optional(),
107
- files: zod_1.z.array(FileEntrySchema).optional(),
127
+ files: zod_1.z.array(exports.DeliverableFileEntrySchema).optional(),
108
128
  multiPage: MultiPageSchema.optional(),
109
- validators: zod_1.z.array(deliverable_validation_1.deliverableValidatorDeclarationSchema).optional(),
129
+ validators: zod_1.z.array(validator_declaration_1.deliverableValidatorDeclarationSchema).optional(),
110
130
  notes: zod_1.z.string().optional(),
111
131
  })
112
132
  .strict()
@@ -127,23 +147,7 @@ exports.DeliverableOutputContractSchema = zod_1.z
127
147
  });
128
148
  }
129
149
  }
130
- if (value.validators !== undefined) {
131
- const declared = new Set();
132
- for (const entry of value.files ?? []) {
133
- declared.add('canonicalPath' in entry ? entry.canonicalPath : entry.pathPattern);
134
- }
135
- value.validators.forEach((validator, vi) => {
136
- (validator.paths ?? []).forEach((path, pi) => {
137
- if (!declared.has(path)) {
138
- ctx.addIssue({
139
- code: zod_1.z.ZodIssueCode.custom,
140
- path: ['validators', vi, 'paths', pi],
141
- message: `validator path '${path}' does not equal the canonicalPath or pathPattern of any files[] entry`,
142
- });
143
- }
144
- });
145
- });
146
- }
150
+ addValidatorPathIssues(ctx, value.validators, value.files);
147
151
  if (value.mode !== exports.DeliverableOutputContractMode.WorkspaceFiles) {
148
152
  if (value.files !== undefined || value.multiPage !== undefined) {
149
153
  ctx.addIssue({
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deliverable-output-contract.js","sourceRoot":"","sources":["../../../src/deliverable-validation/lib/deliverable-output-contract.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,13 @@
1
1
  import { z } from 'zod';
2
- import { HookKind } from '../../worker-runtime';
3
2
  export declare enum DeliverableValidationPhase {
4
3
  Live = "live",
5
4
  Checkpoint = "checkpoint",
6
5
  Final = "final"
7
6
  }
8
7
  export declare const deliverableValidationPhaseSchema: z.ZodEnum<typeof DeliverableValidationPhase>;
9
- export declare const DELIVERABLE_VALIDATION_PHASE_HOOKS: Readonly<Record<DeliverableValidationPhase, readonly HookKind[]>>;
10
- export declare function resolveValidationHook(phase: DeliverableValidationPhase, supported: readonly HookKind[]): HookKind | null;
8
+ export declare enum DeliverableValidationRole {
9
+ Admission = "admission",
10
+ Reaction = "reaction"
11
+ }
12
+ export declare const DELIVERABLE_VALIDATION_PHASE_ROLE: Readonly<Record<DeliverableValidationPhase, DeliverableValidationRole>>;
11
13
  //# sourceMappingURL=phase.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"phase.d.ts","sourceRoot":"","sources":["../../../src/deliverable-validation/lib/phase.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAUhD,oBAAY,0BAA0B;IACpC,IAAI,SAAS;IACb,UAAU,eAAe;IACzB,KAAK,UAAU;CAChB;AAED,eAAO,MAAM,gCAAgC,8CAE5C,CAAC;AAOF,eAAO,MAAM,kCAAkC,EAAE,QAAQ,CACvD,MAAM,CAAC,0BAA0B,EAAE,SAAS,QAAQ,EAAE,CAAC,CAQvD,CAAC;AAQH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,0BAA0B,EACjC,SAAS,EAAE,SAAS,QAAQ,EAAE,GAC7B,QAAQ,GAAG,IAAI,CAKjB"}
1
+ {"version":3,"file":"phase.d.ts","sourceRoot":"","sources":["../../../src/deliverable-validation/lib/phase.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,oBAAY,0BAA0B;IACpC,IAAI,SAAS;IACb,UAAU,eAAe;IACzB,KAAK,UAAU;CAChB;AAED,eAAO,MAAM,gCAAgC,8CAE5C,CAAC;AAGF,oBAAY,yBAAyB;IACnC,SAAS,cAAc;IACvB,QAAQ,aAAa;CACtB;AAED,eAAO,MAAM,iCAAiC,EAAE,QAAQ,CACtD,MAAM,CAAC,0BAA0B,EAAE,yBAAyB,CAAC,CAK7D,CAAC"}
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DELIVERABLE_VALIDATION_PHASE_HOOKS = exports.deliverableValidationPhaseSchema = exports.DeliverableValidationPhase = void 0;
4
- exports.resolveValidationHook = resolveValidationHook;
3
+ exports.DELIVERABLE_VALIDATION_PHASE_ROLE = exports.DeliverableValidationRole = exports.deliverableValidationPhaseSchema = exports.DeliverableValidationPhase = void 0;
5
4
  const zod_1 = require("zod");
6
- const worker_runtime_1 = require("../../worker-runtime");
7
5
  var DeliverableValidationPhase;
8
6
  (function (DeliverableValidationPhase) {
9
7
  DeliverableValidationPhase["Live"] = "live";
@@ -11,19 +9,14 @@ var DeliverableValidationPhase;
11
9
  DeliverableValidationPhase["Final"] = "final";
12
10
  })(DeliverableValidationPhase || (exports.DeliverableValidationPhase = DeliverableValidationPhase = {}));
13
11
  exports.deliverableValidationPhaseSchema = zod_1.z.nativeEnum(DeliverableValidationPhase);
14
- exports.DELIVERABLE_VALIDATION_PHASE_HOOKS = Object.freeze({
15
- [DeliverableValidationPhase.Live]: Object.freeze([
16
- worker_runtime_1.HookKind.FileWriteBefore,
17
- worker_runtime_1.HookKind.FileWriteAfter,
18
- ]),
19
- [DeliverableValidationPhase.Checkpoint]: Object.freeze([worker_runtime_1.HookKind.TurnCompleted]),
20
- [DeliverableValidationPhase.Final]: Object.freeze([worker_runtime_1.HookKind.SessionEnded]),
12
+ var DeliverableValidationRole;
13
+ (function (DeliverableValidationRole) {
14
+ DeliverableValidationRole["Admission"] = "admission";
15
+ DeliverableValidationRole["Reaction"] = "reaction";
16
+ })(DeliverableValidationRole || (exports.DeliverableValidationRole = DeliverableValidationRole = {}));
17
+ exports.DELIVERABLE_VALIDATION_PHASE_ROLE = Object.freeze({
18
+ [DeliverableValidationPhase.Live]: DeliverableValidationRole.Reaction,
19
+ [DeliverableValidationPhase.Checkpoint]: DeliverableValidationRole.Reaction,
20
+ [DeliverableValidationPhase.Final]: DeliverableValidationRole.Admission,
21
21
  });
22
- function resolveValidationHook(phase, supported) {
23
- for (const hook of exports.DELIVERABLE_VALIDATION_PHASE_HOOKS[phase]) {
24
- if (supported.includes(hook))
25
- return hook;
26
- }
27
- return null;
28
- }
29
22
  //# sourceMappingURL=phase.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"phase.js","sourceRoot":"","sources":["../../../src/deliverable-validation/lib/phase.ts"],"names":[],"mappings":";;;AAwDA,sDAQC;AApDD,6BAAwB;AAExB,yDAAgD;AAUhD,IAAY,0BAIX;AAJD,WAAY,0BAA0B;IACpC,2CAAa,CAAA;IACb,uDAAyB,CAAA;IACzB,6CAAe,CAAA;AACjB,CAAC,EAJW,0BAA0B,0CAA1B,0BAA0B,QAIrC;AAEY,QAAA,gCAAgC,GAAG,OAAC,CAAC,UAAU,CAC1D,0BAA0B,CAC3B,CAAC;AAOW,QAAA,kCAAkC,GAE3C,MAAM,CAAC,MAAM,CAAC;IAChB,CAAC,0BAA0B,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC;QAC/C,yBAAQ,CAAC,eAAe;QACxB,yBAAQ,CAAC,cAAc;KACxB,CAAC;IACF,CAAC,0BAA0B,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,yBAAQ,CAAC,aAAa,CAAC,CAAC;IAChF,CAAC,0BAA0B,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,yBAAQ,CAAC,YAAY,CAAC,CAAC;CAC3E,CAAC,CAAC;AAQH,SAAgB,qBAAqB,CACnC,KAAiC,EACjC,SAA8B;IAE9B,KAAK,MAAM,IAAI,IAAI,0CAAkC,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7D,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;IAC5C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"phase.js","sourceRoot":"","sources":["../../../src/deliverable-validation/lib/phase.ts"],"names":[],"mappings":";;;AAoBA,6BAAwB;AASxB,IAAY,0BAIX;AAJD,WAAY,0BAA0B;IACpC,2CAAa,CAAA;IACb,uDAAyB,CAAA;IACzB,6CAAe,CAAA;AACjB,CAAC,EAJW,0BAA0B,0CAA1B,0BAA0B,QAIrC;AAEY,QAAA,gCAAgC,GAAG,OAAC,CAAC,UAAU,CAC1D,0BAA0B,CAC3B,CAAC;AAGF,IAAY,yBAGX;AAHD,WAAY,yBAAyB;IACnC,oDAAuB,CAAA;IACvB,kDAAqB,CAAA;AACvB,CAAC,EAHW,yBAAyB,yCAAzB,yBAAyB,QAGpC;AAEY,QAAA,iCAAiC,GAE1C,MAAM,CAAC,MAAM,CAAC;IAChB,CAAC,0BAA0B,CAAC,IAAI,CAAC,EAAE,yBAAyB,CAAC,QAAQ;IACrE,CAAC,0BAA0B,CAAC,UAAU,CAAC,EAAE,yBAAyB,CAAC,QAAQ;IAC3E,CAAC,0BAA0B,CAAC,KAAK,CAAC,EAAE,yBAAyB,CAAC,SAAS;CACxE,CAAC,CAAC"}
@@ -1,18 +1,8 @@
1
1
  import { z } from 'zod';
2
- export declare enum DeliverableValidatorMode {
3
- Inline = "inline",
4
- Async = "async"
5
- }
6
- export declare enum DeliverableValidatorRepair {
7
- None = "none",
8
- Mechanical = "mechanical"
9
- }
10
2
  export declare const deliverableValidatorDeclarationSchema: z.ZodObject<{
11
3
  capability: z.ZodType<import("../../capability").CapabilityRef, unknown, z.core.$ZodTypeInternals<import("../../capability").CapabilityRef, unknown>>;
12
4
  phase: z.ZodEnum<typeof import("./phase").DeliverableValidationPhase>;
13
- mode: z.ZodEnum<typeof DeliverableValidatorMode>;
14
- requiredForCompletion: z.ZodOptional<z.ZodBoolean>;
15
- repair: z.ZodOptional<z.ZodEnum<typeof DeliverableValidatorRepair>>;
5
+ participation: z.ZodOptional<z.ZodEnum<typeof import("../../hook").HookParticipation>>;
16
6
  paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
17
7
  }, z.core.$strict>;
18
8
  export type DeliverableValidatorDeclaration = z.infer<typeof deliverableValidatorDeclarationSchema>;
@@ -1 +1 @@
1
- {"version":3,"file":"validator-declaration.d.ts","sourceRoot":"","sources":["../../../src/deliverable-validation/lib/validator-declaration.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,oBAAY,wBAAwB;IAClC,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB;AAGD,oBAAY,0BAA0B;IACpC,IAAI,SAAS;IACb,UAAU,eAAe;CAC1B;AAID,eAAO,MAAM,qCAAqC;;;;;;;kBA2B9C,CAAC;AAEL,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CACnD,OAAO,qCAAqC,CAC7C,CAAC"}
1
+ {"version":3,"file":"validator-declaration.d.ts","sourceRoot":"","sources":["../../../src/deliverable-validation/lib/validator-declaration.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAYxB,eAAO,MAAM,qCAAqC;;;;;kBA2B9C,CAAC;AAEL,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CACnD,OAAO,qCAAqC,CAC7C,CAAC"}
@@ -1,36 +1,29 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.deliverableValidatorDeclarationSchema = exports.DeliverableValidatorRepair = exports.DeliverableValidatorMode = void 0;
3
+ exports.deliverableValidatorDeclarationSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const capability_1 = require("../../capability");
6
+ const hook_1 = require("../../hook");
6
7
  const phase_1 = require("./phase");
7
- var DeliverableValidatorMode;
8
- (function (DeliverableValidatorMode) {
9
- DeliverableValidatorMode["Inline"] = "inline";
10
- DeliverableValidatorMode["Async"] = "async";
11
- })(DeliverableValidatorMode || (exports.DeliverableValidatorMode = DeliverableValidatorMode = {}));
12
- var DeliverableValidatorRepair;
13
- (function (DeliverableValidatorRepair) {
14
- DeliverableValidatorRepair["None"] = "none";
15
- DeliverableValidatorRepair["Mechanical"] = "mechanical";
16
- })(DeliverableValidatorRepair || (exports.DeliverableValidatorRepair = DeliverableValidatorRepair = {}));
17
8
  const SAFE_GLOB = /^[a-zA-Z0-9._\-/*]+$/;
18
9
  exports.deliverableValidatorDeclarationSchema = zod_1.z
19
10
  .object({
20
11
  capability: capability_1.CapabilityRefSchema,
21
12
  phase: phase_1.deliverableValidationPhaseSchema,
22
- mode: zod_1.z.nativeEnum(DeliverableValidatorMode),
23
- requiredForCompletion: zod_1.z.boolean().optional(),
24
- repair: zod_1.z.nativeEnum(DeliverableValidatorRepair).optional(),
13
+ participation: hook_1.HookParticipationSchema.optional(),
25
14
  paths: zod_1.z.array(zod_1.z.string().min(1).regex(SAFE_GLOB)).min(1).optional(),
26
15
  })
27
16
  .strict()
28
17
  .superRefine((value, ctx) => {
29
- if (value.requiredForCompletion === true &&
30
- value.mode !== DeliverableValidatorMode.Async) {
18
+ const admission = phase_1.DELIVERABLE_VALIDATION_PHASE_ROLE[value.phase] ===
19
+ phase_1.DeliverableValidationRole.Admission;
20
+ if (admission !== (value.participation !== undefined)) {
31
21
  ctx.addIssue({
32
22
  code: zod_1.z.ZodIssueCode.custom,
33
- message: "requiredForCompletion applies to mode='async' only; an inline validator already decides its own phase",
23
+ path: ['participation'],
24
+ message: admission
25
+ ? "a 'final' validator is an admission binding and must state its participation"
26
+ : `a '${value.phase}' validator is a reaction and never blocks; it carries no participation`,
34
27
  });
35
28
  }
36
29
  });
@@ -1 +1 @@
1
- {"version":3,"file":"validator-declaration.js","sourceRoot":"","sources":["../../../src/deliverable-validation/lib/validator-declaration.ts"],"names":[],"mappings":";;;AAOA,6BAAwB;AAExB,iDAAuD;AACvD,mCAA2D;AAG3D,IAAY,wBAGX;AAHD,WAAY,wBAAwB;IAClC,6CAAiB,CAAA;IACjB,2CAAe,CAAA;AACjB,CAAC,EAHW,wBAAwB,wCAAxB,wBAAwB,QAGnC;AAGD,IAAY,0BAGX;AAHD,WAAY,0BAA0B;IACpC,2CAAa,CAAA;IACb,uDAAyB,CAAA;AAC3B,CAAC,EAHW,0BAA0B,0CAA1B,0BAA0B,QAGrC;AAED,MAAM,SAAS,GAAG,sBAAsB,CAAC;AAE5B,QAAA,qCAAqC,GAAG,OAAC;KACnD,MAAM,CAAC;IACN,UAAU,EAAE,gCAAmB;IAC/B,KAAK,EAAE,wCAAgC;IACvC,IAAI,EAAE,OAAC,CAAC,UAAU,CAAC,wBAAwB,CAAC;IAE5C,qBAAqB,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC7C,MAAM,EAAE,OAAC,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAAC,QAAQ,EAAE;IAM3D,KAAK,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACrE,CAAC;KACD,MAAM,EAAE;KACR,WAAW,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IAC1B,IACE,KAAK,CAAC,qBAAqB,KAAK,IAAI;QACpC,KAAK,CAAC,IAAI,KAAK,wBAAwB,CAAC,KAAK,EAC7C,CAAC;QACD,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,OAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,OAAO,EACL,uGAAuG;SAC1G,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"validator-declaration.js","sourceRoot":"","sources":["../../../src/deliverable-validation/lib/validator-declaration.ts"],"names":[],"mappings":";;;AAYA,6BAAwB;AAExB,iDAAuD;AACvD,qCAAqD;AACrD,mCAIiB;AAEjB,MAAM,SAAS,GAAG,sBAAsB,CAAC;AAE5B,QAAA,qCAAqC,GAAG,OAAC;KACnD,MAAM,CAAC;IACN,UAAU,EAAE,gCAAmB;IAC/B,KAAK,EAAE,wCAAgC;IAEvC,aAAa,EAAE,8BAAuB,CAAC,QAAQ,EAAE;IAMjD,KAAK,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACrE,CAAC;KACD,MAAM,EAAE;KACR,WAAW,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IAC1B,MAAM,SAAS,GACb,yCAAiC,CAAC,KAAK,CAAC,KAAK,CAAC;QAC9C,iCAAyB,CAAC,SAAS,CAAC;IACtC,IAAI,SAAS,KAAK,CAAC,KAAK,CAAC,aAAa,KAAK,SAAS,CAAC,EAAE,CAAC;QACtD,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,OAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,IAAI,EAAE,CAAC,eAAe,CAAC;YACvB,OAAO,EAAE,SAAS;gBAChB,CAAC,CAAC,8EAA8E;gBAChF,CAAC,CAAC,MAAM,KAAK,CAAC,KAAK,yEAAyE;SAC/F,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC,CAAC"}