eval-quality 0.1.0 → 0.3.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 (179) hide show
  1. package/README.md +142 -67
  2. package/corpus/dev/README.md +20 -13
  3. package/corpus/dev/compile-seal-example/brief.json +1 -1
  4. package/corpus/dev/compile-seal-example/contract.json +1 -1
  5. package/corpus/dev/contracts/absent-collection-locations.json +1 -1
  6. package/corpus/dev/contracts/absent-sibling-groups.json +1 -1
  7. package/corpus/dev/contracts/absent-success-indicator.json +1 -1
  8. package/corpus/dev/contracts/empty-channel-roles.json +1 -1
  9. package/corpus/dev/contracts/empty-collection-locations.json +1 -1
  10. package/corpus/dev/contracts/empty-request-shapes.json +1 -1
  11. package/corpus/dev/contracts/empty-sibling-groups.json +1 -1
  12. package/corpus/dev/contracts/fragment-selection.json +1 -0
  13. package/corpus/dev/contracts/no-collection-quantifier.json +1 -1
  14. package/corpus/dev/contracts/no-operation-inventory.json +1 -1
  15. package/corpus/dev/contracts/no-read-back-relation.json +1 -1
  16. package/corpus/dev/contracts/no-state-change-marker.json +1 -1
  17. package/corpus/dev/contracts/no-type-violating-step.json +1 -1
  18. package/corpus/dev/contracts/per-key-split-oracles.json +1 -1
  19. package/corpus/dev/contracts/review-corpus.json +1 -0
  20. package/corpus/dev/contracts/satisfied-declarations.json +1 -1
  21. package/corpus/dev/contracts/single-required-response-key.json +1 -1
  22. package/corpus/dev/contracts/split-indicator-oracle.json +1 -1
  23. package/corpus/dev/contracts/unaddressed-parameter-sibling.json +1 -1
  24. package/corpus/dev/contracts/unnamed-reference-set.json +1 -1
  25. package/corpus/dev/contracts/wrong-cardinality-form.json +1 -1
  26. package/corpus/dev/index.json +1 -1
  27. package/dist/application/index.d.ts +2 -0
  28. package/dist/application/index.js +1 -0
  29. package/dist/application/score.d.ts +48 -0
  30. package/dist/application/score.js +186 -0
  31. package/dist/cli/arguments.d.ts +7 -3
  32. package/dist/cli/arguments.js +73 -5
  33. package/dist/cli/exit-codes.d.ts +6 -2
  34. package/dist/cli/exit-codes.js +8 -9
  35. package/dist/cli/main.js +9 -0
  36. package/dist/cli/render.d.ts +3 -6
  37. package/dist/cli/render.js +57 -5
  38. package/dist/cli/run.d.ts +13 -3
  39. package/dist/cli/run.js +136 -16
  40. package/dist/core/canonical/canonicalize.d.ts +12 -0
  41. package/dist/core/canonical/canonicalize.js +18 -4
  42. package/dist/core/compile/bindings.d.ts +89 -0
  43. package/dist/core/compile/bindings.js +334 -0
  44. package/dist/core/compile/compile.d.ts +17 -0
  45. package/dist/core/compile/compile.js +37 -1
  46. package/dist/core/compile/excluded-content.d.ts +11 -0
  47. package/dist/core/compile/excluded-content.js +42 -0
  48. package/dist/core/compile/expression-legality.d.ts +49 -0
  49. package/dist/core/compile/expression-legality.js +158 -38
  50. package/dist/core/compile/forbidden-inputs.d.ts +8 -1
  51. package/dist/core/compile/forbidden-inputs.js +16 -3
  52. package/dist/core/compile/interface-inventory.d.ts +57 -2
  53. package/dist/core/compile/interface-inventory.js +119 -13
  54. package/dist/core/compile/reachability.d.ts +28 -1
  55. package/dist/core/compile/reachability.js +167 -35
  56. package/dist/core/compile/schema-version.d.ts +2 -0
  57. package/dist/core/compile/schema-version.js +25 -0
  58. package/dist/core/compile/sensitivity-witness.d.ts +31 -12
  59. package/dist/core/compile/sensitivity-witness.js +110 -23
  60. package/dist/core/compile/step-reference.d.ts +2 -0
  61. package/dist/core/compile/step-reference.js +49 -0
  62. package/dist/core/coverage/operations.d.ts +62 -0
  63. package/dist/core/coverage/operations.js +57 -0
  64. package/dist/core/coverage/relevance.d.ts +4 -2
  65. package/dist/core/coverage/relevance.js +22 -23
  66. package/dist/core/coverage/satisfaction.d.ts +2 -2
  67. package/dist/core/coverage/satisfaction.js +73 -48
  68. package/dist/core/declared-inputs.d.ts +83 -4
  69. package/dist/core/declared-inputs.js +105 -8
  70. package/dist/core/emit/emit.d.ts +9 -0
  71. package/dist/core/emit/emit.js +214 -0
  72. package/dist/core/emit/private-artifact-digest.d.ts +11 -0
  73. package/dist/core/emit/private-artifact-digest.js +31 -0
  74. package/dist/core/evaluate/evidence-resolution.d.ts +10 -3
  75. package/dist/core/evaluate/evidence-resolution.js +74 -11
  76. package/dist/core/evaluate/operators.d.ts +22 -0
  77. package/dist/core/evaluate/operators.js +17 -1
  78. package/dist/core/evaluate/resolution.d.ts +14 -3
  79. package/dist/core/evaluate/resolution.js +63 -3
  80. package/dist/core/excluded-content.d.ts +65 -0
  81. package/dist/core/excluded-content.js +113 -0
  82. package/dist/core/failure-codes.d.ts +2 -2
  83. package/dist/core/failure-codes.js +7 -2
  84. package/dist/core/ingest/conditions.d.ts +201 -0
  85. package/dist/core/ingest/conditions.js +48 -0
  86. package/dist/core/ingest/index.d.ts +13 -0
  87. package/dist/core/ingest/index.js +11 -0
  88. package/dist/core/ingest/ingest.d.ts +68 -0
  89. package/dist/core/ingest/ingest.js +318 -0
  90. package/dist/core/lineage/stage-table.d.ts +21 -4
  91. package/dist/core/lineage/stage-table.js +35 -3
  92. package/dist/core/preflight/plan.d.ts +7 -5
  93. package/dist/core/preflight/plan.js +75 -32
  94. package/dist/core/preflight/projection.d.ts +6 -3
  95. package/dist/core/preflight/projection.js +22 -2
  96. package/dist/core/preflight/reduce.js +47 -7
  97. package/dist/core/preflight/witness-evidence.d.ts +5 -5
  98. package/dist/core/preflight/witness-evidence.js +73 -20
  99. package/dist/core/schemas/artifact.d.ts +1049 -30
  100. package/dist/core/schemas/constraint-ledger.js +51 -0
  101. package/dist/core/schemas/defect-signature.d.ts +695 -0
  102. package/dist/core/schemas/defect-signature.js +175 -0
  103. package/dist/core/schemas/eval-contract.d.ts +550 -12
  104. package/dist/core/schemas/eval-contract.js +32 -2
  105. package/dist/core/schemas/evidence-artifact.d.ts +109 -19
  106. package/dist/core/schemas/evidence-artifact.js +64 -8
  107. package/dist/core/schemas/interface.d.ts +741 -13
  108. package/dist/core/schemas/interface.js +120 -7
  109. package/dist/core/schemas/isolation-manifest.js +16 -9
  110. package/dist/core/schemas/plan.d.ts +329 -3
  111. package/dist/core/schemas/plan.js +89 -3
  112. package/dist/core/schemas/pointer.d.ts +47 -1
  113. package/dist/core/schemas/pointer.js +89 -8
  114. package/dist/core/schemas/port-messages.d.ts +194 -10
  115. package/dist/core/schemas/port-messages.js +73 -6
  116. package/dist/core/schemas/probe-body.d.ts +18 -0
  117. package/dist/core/schemas/probe-body.js +13 -0
  118. package/dist/core/schemas/probe-qualification.d.ts +168 -0
  119. package/dist/core/schemas/probe-qualification.js +106 -0
  120. package/dist/core/schemas/probe.d.ts +431 -0
  121. package/dist/core/schemas/probe.js +6 -2
  122. package/dist/core/schemas/scoring-policy.d.ts +1 -0
  123. package/dist/core/schemas/scoring-policy.js +6 -1
  124. package/dist/core/schemas/sealed-evaluator-brief.d.ts +1 -0
  125. package/dist/core/schemas/sealed-evaluator-brief.js +4 -1
  126. package/dist/core/schemas/sealed-run-record.d.ts +161 -12
  127. package/dist/core/schemas/sealed-run-record.js +92 -15
  128. package/dist/core/schemas/sensitivity-witness.d.ts +108 -6
  129. package/dist/core/schemas/sensitivity-witness.js +61 -5
  130. package/dist/core/score/binding-order.d.ts +31 -0
  131. package/dist/core/score/binding-order.js +88 -0
  132. package/dist/core/score/bindings.d.ts +93 -0
  133. package/dist/core/score/bindings.js +309 -0
  134. package/dist/core/score/ladder-table.d.ts +23 -0
  135. package/dist/core/score/ladder-table.js +109 -0
  136. package/dist/core/score/ladder.d.ts +229 -0
  137. package/dist/core/score/ladder.js +464 -0
  138. package/dist/core/score/mode-agreement.d.ts +30 -0
  139. package/dist/core/score/mode-agreement.js +16 -0
  140. package/dist/core/score/outcome-table.d.ts +17 -0
  141. package/dist/core/score/outcome-table.js +172 -0
  142. package/dist/core/score/outcome.d.ts +466 -0
  143. package/dist/core/score/outcome.js +562 -0
  144. package/dist/core/score/qualification.d.ts +83 -0
  145. package/dist/core/score/qualification.js +645 -0
  146. package/dist/core/score/quotation.d.ts +56 -0
  147. package/dist/core/score/quotation.js +226 -0
  148. package/dist/core/score/reduce-trials.d.ts +80 -0
  149. package/dist/core/score/reduce-trials.js +90 -0
  150. package/dist/core/score/score.d.ts +72 -0
  151. package/dist/core/score/score.js +607 -0
  152. package/dist/core/score/selection.d.ts +80 -0
  153. package/dist/core/score/selection.js +98 -0
  154. package/dist/core/score/strength.d.ts +58 -0
  155. package/dist/core/score/strength.js +227 -0
  156. package/dist/core/score/witness.d.ts +138 -0
  157. package/dist/core/score/witness.js +320 -0
  158. package/dist/core/seal/derived-reference.d.ts +2 -9
  159. package/dist/core/seal/derived-reference.js +293 -46
  160. package/dist/core/seal/plan-index.d.ts +18 -3
  161. package/dist/core/seal/plan-index.js +44 -8
  162. package/dist/core/seal/seal.js +8 -3
  163. package/dist/core/stage-contracts.d.ts +62 -2
  164. package/dist/index.d.ts +1 -1
  165. package/dist/index.js +1 -1
  166. package/dist/ports/environment-probe-port.d.ts +60 -4
  167. package/dist/testing/index.d.ts +2 -0
  168. package/dist/testing/index.js +1 -0
  169. package/dist/testing/probe-conformance.d.ts +29 -0
  170. package/dist/testing/probe-conformance.js +34 -5
  171. package/package.json +12 -3
  172. package/schemas/eval-contract.schema.json +1787 -797
  173. package/schemas/evidence-artifact.schema.json +126 -9
  174. package/schemas/isolation-manifest.schema.json +17 -10
  175. package/schemas/probe.schema.json +636 -5
  176. package/schemas/rubric.schema.json +1 -1
  177. package/schemas/scoring-policy.schema.json +8 -1
  178. package/schemas/sealed-evaluator-brief.schema.json +11 -1
  179. package/schemas/sealed-run-record.schema.json +314 -40
@@ -0,0 +1,695 @@
1
+ /** AD-40's machine-readable defect signature and its probe-side selector. */
2
+ import { z } from 'zod';
3
+ import { Expression } from './expression.ts';
4
+ /**
5
+ * The reserved step identifier every pointer in a discriminating condition is
6
+ * rooted at. AD-40 requires the predicate to be rooted at the selected
7
+ * observation rather than at a step identifier, and the shipped `Expression`
8
+ * addresses evidence only through an interaction-rooted pointer, so the
9
+ * signature spends one fixed word instead of minting a fourth pointer grammar:
10
+ *
11
+ * /interactions/observed/response-status
12
+ * /interactions/observed/response-body/error/code
13
+ *
14
+ * A fixed word, so no contract-local choice reaches the corpus, and the gate
15
+ * checks contract-independence instead of asserting it. Evaluation is the
16
+ * shipped path with no adapter: build the resolver map with exactly this one
17
+ * key, and resolve.
18
+ *
19
+ * `observed` is a legal `Identifier` and nothing reserves it, so a contract may
20
+ * declare a step by that name. The design is safe because the resolver map is
21
+ * built fresh with exactly one key and is never merged with a plan's
22
+ * observations. That is a stated invariant of this module;
23
+ * `compile/sensitivity-witness.ts` guards the same collision one level in.
24
+ */
25
+ export declare const OBSERVED_STEP_ID = "observed";
26
+ /**
27
+ * The probe-side binding value: `{ literal }` and `{ matcher }` only.
28
+ *
29
+ * Deliberately its own union rather than a reuse of `BindingValue`, which also
30
+ * admits `{ captured }` and `{ principal }`. A captured pointer names an
31
+ * earlier step of a contract's plan, and a principal names an entry of a
32
+ * contract's `testData`; both are contract-local vocabulary, and a corpus
33
+ * signature that carried either would resolve nothing against a second
34
+ * contract. The rejection is structural, so a probe carrying one fails to parse
35
+ * rather than qualifying and then matching nothing.
36
+ */
37
+ export declare const ProbeBindingValue: z.ZodUnion<readonly [z.ZodObject<{
38
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
39
+ }, z.core.$strict>, z.ZodObject<{
40
+ matcher: z.ZodEnum<{
41
+ any: "any";
42
+ "type-violating": "type-violating";
43
+ }>;
44
+ }, z.core.$strict>]>;
45
+ /** the constraint identifier the ledger carries for the check below. */
46
+ export declare const PROBE_BINDING_CHANNEL_NON_EMPTY = "probe-binding-channel-non-empty";
47
+ export declare const ProbeBindingChannel: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
48
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
49
+ }, z.core.$strict>, z.ZodObject<{
50
+ matcher: z.ZodEnum<{
51
+ any: "any";
52
+ "type-violating": "type-violating";
53
+ }>;
54
+ }, z.core.$strict>]>>>;
55
+ /**
56
+ * Every input channel of either kind, spelled exactly as `ObservedCallInputs`
57
+ * spells them. The two shapes agree on channel names, on the eight-key strict
58
+ * form, and on flatness, so the selector filters recorded call inputs with no
59
+ * shape to bridge.
60
+ *
61
+ * One object over both kinds rather than a union, on `ObservedCallInputs`'s own
62
+ * reasoning: `null` already means "binds nothing here", so a selector that
63
+ * binds only command channels writes `null` in the transport four and nothing
64
+ * is ambiguous. `InputBinding` on the contract side is a union instead, because
65
+ * a request-shape channel's "declared, no keys" state is not the same as
66
+ * unused and the two spellings had to stay apart.
67
+ */
68
+ export declare const ProbeInputBinding: z.ZodObject<{
69
+ path: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
70
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
71
+ }, z.core.$strict>, z.ZodObject<{
72
+ matcher: z.ZodEnum<{
73
+ any: "any";
74
+ "type-violating": "type-violating";
75
+ }>;
76
+ }, z.core.$strict>]>>>;
77
+ query: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
78
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
79
+ }, z.core.$strict>, z.ZodObject<{
80
+ matcher: z.ZodEnum<{
81
+ any: "any";
82
+ "type-violating": "type-violating";
83
+ }>;
84
+ }, z.core.$strict>]>>>;
85
+ header: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
86
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
87
+ }, z.core.$strict>, z.ZodObject<{
88
+ matcher: z.ZodEnum<{
89
+ any: "any";
90
+ "type-violating": "type-violating";
91
+ }>;
92
+ }, z.core.$strict>]>>>;
93
+ body: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
94
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
95
+ }, z.core.$strict>, z.ZodObject<{
96
+ matcher: z.ZodEnum<{
97
+ any: "any";
98
+ "type-violating": "type-violating";
99
+ }>;
100
+ }, z.core.$strict>]>>>;
101
+ argument: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
102
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
103
+ }, z.core.$strict>, z.ZodObject<{
104
+ matcher: z.ZodEnum<{
105
+ any: "any";
106
+ "type-violating": "type-violating";
107
+ }>;
108
+ }, z.core.$strict>]>>>;
109
+ option: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
110
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
111
+ }, z.core.$strict>, z.ZodObject<{
112
+ matcher: z.ZodEnum<{
113
+ any: "any";
114
+ "type-violating": "type-violating";
115
+ }>;
116
+ }, z.core.$strict>]>>>;
117
+ environment: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
118
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
119
+ }, z.core.$strict>, z.ZodObject<{
120
+ matcher: z.ZodEnum<{
121
+ any: "any";
122
+ "type-violating": "type-violating";
123
+ }>;
124
+ }, z.core.$strict>]>>>;
125
+ stdin: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
126
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
127
+ }, z.core.$strict>, z.ZodObject<{
128
+ matcher: z.ZodEnum<{
129
+ any: "any";
130
+ "type-violating": "type-violating";
131
+ }>;
132
+ }, z.core.$strict>]>>>;
133
+ }, z.core.$strict>;
134
+ /**
135
+ * AD-39's selector grammar, duplicated on the corpus side, minus the two
136
+ * members a corpus cannot fill. The operation is the signature's own home
137
+ * operation and is not repeated here; the temporal clause is dropped because no
138
+ * corpus signature needs it. A state-corruption defect that only fires on a
139
+ * second call is already expressible as a predicate over any single
140
+ * observation, and AD-40's mapping is per probe rather than per call sequence.
141
+ * What would reopen the question is pair-defect signatures across the monotonic
142
+ * observation sequence, a future need `preflight/witness-evidence.ts` already
143
+ * records.
144
+ */
145
+ export declare const ProbeStepSelector: z.ZodObject<{
146
+ inputBinding: z.ZodObject<{
147
+ path: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
148
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
149
+ }, z.core.$strict>, z.ZodObject<{
150
+ matcher: z.ZodEnum<{
151
+ any: "any";
152
+ "type-violating": "type-violating";
153
+ }>;
154
+ }, z.core.$strict>]>>>;
155
+ query: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
156
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
157
+ }, z.core.$strict>, z.ZodObject<{
158
+ matcher: z.ZodEnum<{
159
+ any: "any";
160
+ "type-violating": "type-violating";
161
+ }>;
162
+ }, z.core.$strict>]>>>;
163
+ header: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
164
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
165
+ }, z.core.$strict>, z.ZodObject<{
166
+ matcher: z.ZodEnum<{
167
+ any: "any";
168
+ "type-violating": "type-violating";
169
+ }>;
170
+ }, z.core.$strict>]>>>;
171
+ body: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
172
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
173
+ }, z.core.$strict>, z.ZodObject<{
174
+ matcher: z.ZodEnum<{
175
+ any: "any";
176
+ "type-violating": "type-violating";
177
+ }>;
178
+ }, z.core.$strict>]>>>;
179
+ argument: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
180
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
181
+ }, z.core.$strict>, z.ZodObject<{
182
+ matcher: z.ZodEnum<{
183
+ any: "any";
184
+ "type-violating": "type-violating";
185
+ }>;
186
+ }, z.core.$strict>]>>>;
187
+ option: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
188
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
189
+ }, z.core.$strict>, z.ZodObject<{
190
+ matcher: z.ZodEnum<{
191
+ any: "any";
192
+ "type-violating": "type-violating";
193
+ }>;
194
+ }, z.core.$strict>]>>>;
195
+ environment: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
196
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
197
+ }, z.core.$strict>, z.ZodObject<{
198
+ matcher: z.ZodEnum<{
199
+ any: "any";
200
+ "type-violating": "type-violating";
201
+ }>;
202
+ }, z.core.$strict>]>>>;
203
+ stdin: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
204
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
205
+ }, z.core.$strict>, z.ZodObject<{
206
+ matcher: z.ZodEnum<{
207
+ any: "any";
208
+ "type-violating": "type-violating";
209
+ }>;
210
+ }, z.core.$strict>]>>>;
211
+ }, z.core.$strict>;
212
+ }, z.core.$strict>;
213
+ /**
214
+ * AD-40's discriminating condition: a selector over observations paired with a
215
+ * predicate over the selected observation's response.
216
+ *
217
+ * The predicate is the shipped `Expression` in AD-4's closed operator
218
+ * vocabulary, never a second relation language. A second vocabulary is a second
219
+ * set of degenerate cases to fix, and AD-4's are already fixed and fixtured.
220
+ * Every pointer in the predicate is rooted at `OBSERVED_STEP_ID`; that rule,
221
+ * the response-channel rule, and AD-4's own legality rules are checked at
222
+ * corpus qualification time rather than here, because each of them is a
223
+ * cross-field or cross-artifact rule the published export cannot carry.
224
+ */
225
+ export declare const DiscriminatingCondition: z.ZodObject<{
226
+ selector: z.ZodObject<{
227
+ inputBinding: z.ZodObject<{
228
+ path: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
229
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
230
+ }, z.core.$strict>, z.ZodObject<{
231
+ matcher: z.ZodEnum<{
232
+ any: "any";
233
+ "type-violating": "type-violating";
234
+ }>;
235
+ }, z.core.$strict>]>>>;
236
+ query: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
237
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
238
+ }, z.core.$strict>, z.ZodObject<{
239
+ matcher: z.ZodEnum<{
240
+ any: "any";
241
+ "type-violating": "type-violating";
242
+ }>;
243
+ }, z.core.$strict>]>>>;
244
+ header: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
245
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
246
+ }, z.core.$strict>, z.ZodObject<{
247
+ matcher: z.ZodEnum<{
248
+ any: "any";
249
+ "type-violating": "type-violating";
250
+ }>;
251
+ }, z.core.$strict>]>>>;
252
+ body: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
253
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
254
+ }, z.core.$strict>, z.ZodObject<{
255
+ matcher: z.ZodEnum<{
256
+ any: "any";
257
+ "type-violating": "type-violating";
258
+ }>;
259
+ }, z.core.$strict>]>>>;
260
+ argument: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
261
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
262
+ }, z.core.$strict>, z.ZodObject<{
263
+ matcher: z.ZodEnum<{
264
+ any: "any";
265
+ "type-violating": "type-violating";
266
+ }>;
267
+ }, z.core.$strict>]>>>;
268
+ option: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
269
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
270
+ }, z.core.$strict>, z.ZodObject<{
271
+ matcher: z.ZodEnum<{
272
+ any: "any";
273
+ "type-violating": "type-violating";
274
+ }>;
275
+ }, z.core.$strict>]>>>;
276
+ environment: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
277
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
278
+ }, z.core.$strict>, z.ZodObject<{
279
+ matcher: z.ZodEnum<{
280
+ any: "any";
281
+ "type-violating": "type-violating";
282
+ }>;
283
+ }, z.core.$strict>]>>>;
284
+ stdin: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
285
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
286
+ }, z.core.$strict>, z.ZodObject<{
287
+ matcher: z.ZodEnum<{
288
+ any: "any";
289
+ "type-violating": "type-violating";
290
+ }>;
291
+ }, z.core.$strict>]>>>;
292
+ }, z.core.$strict>;
293
+ }, z.core.$strict>;
294
+ predicate: z.ZodType<Expression, unknown, z.core.$ZodTypeInternals<Expression, unknown>>;
295
+ }, z.core.$strict>;
296
+ /**
297
+ * A signature against an interface that speaks HTTP. `web` and `mcp` share the
298
+ * shape and are still rejected by the qualification gate, which is what keeps
299
+ * `signature-interface-kind-unsupported` fireable on the kinds whose probe
300
+ * semantics are undeclared.
301
+ *
302
+ * One branch over the three kinds rather than three identical branches. Three
303
+ * would publish three byte-identical subschemas, and AD-13's mutation sweep
304
+ * cannot attribute a keyword deletion to one of several identical branches:
305
+ * deleting `pathTemplate`'s pattern from the second still leaves the first
306
+ * accepting everything the corpus carries, so nothing flips.
307
+ */
308
+ export declare const ApiDefectSignature: z.ZodObject<{
309
+ observableChannel: z.ZodEnum<{
310
+ artifact: "artifact";
311
+ "call-inputs": "call-inputs";
312
+ "exit-code": "exit-code";
313
+ "response-body": "response-body";
314
+ "response-headers": "response-headers";
315
+ "response-status": "response-status";
316
+ stderr: "stderr";
317
+ stdout: "stdout";
318
+ }>;
319
+ condition: z.ZodObject<{
320
+ selector: z.ZodObject<{
321
+ inputBinding: z.ZodObject<{
322
+ path: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
323
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
324
+ }, z.core.$strict>, z.ZodObject<{
325
+ matcher: z.ZodEnum<{
326
+ any: "any";
327
+ "type-violating": "type-violating";
328
+ }>;
329
+ }, z.core.$strict>]>>>;
330
+ query: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
331
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
332
+ }, z.core.$strict>, z.ZodObject<{
333
+ matcher: z.ZodEnum<{
334
+ any: "any";
335
+ "type-violating": "type-violating";
336
+ }>;
337
+ }, z.core.$strict>]>>>;
338
+ header: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
339
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
340
+ }, z.core.$strict>, z.ZodObject<{
341
+ matcher: z.ZodEnum<{
342
+ any: "any";
343
+ "type-violating": "type-violating";
344
+ }>;
345
+ }, z.core.$strict>]>>>;
346
+ body: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
347
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
348
+ }, z.core.$strict>, z.ZodObject<{
349
+ matcher: z.ZodEnum<{
350
+ any: "any";
351
+ "type-violating": "type-violating";
352
+ }>;
353
+ }, z.core.$strict>]>>>;
354
+ argument: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
355
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
356
+ }, z.core.$strict>, z.ZodObject<{
357
+ matcher: z.ZodEnum<{
358
+ any: "any";
359
+ "type-violating": "type-violating";
360
+ }>;
361
+ }, z.core.$strict>]>>>;
362
+ option: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
363
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
364
+ }, z.core.$strict>, z.ZodObject<{
365
+ matcher: z.ZodEnum<{
366
+ any: "any";
367
+ "type-violating": "type-violating";
368
+ }>;
369
+ }, z.core.$strict>]>>>;
370
+ environment: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
371
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
372
+ }, z.core.$strict>, z.ZodObject<{
373
+ matcher: z.ZodEnum<{
374
+ any: "any";
375
+ "type-violating": "type-violating";
376
+ }>;
377
+ }, z.core.$strict>]>>>;
378
+ stdin: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
379
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
380
+ }, z.core.$strict>, z.ZodObject<{
381
+ matcher: z.ZodEnum<{
382
+ any: "any";
383
+ "type-violating": "type-violating";
384
+ }>;
385
+ }, z.core.$strict>]>>>;
386
+ }, z.core.$strict>;
387
+ }, z.core.$strict>;
388
+ predicate: z.ZodType<Expression, unknown, z.core.$ZodTypeInternals<Expression, unknown>>;
389
+ }, z.core.$strict>;
390
+ interfaceKind: z.ZodEnum<{
391
+ api: "api";
392
+ mcp: "mcp";
393
+ web: "web";
394
+ }>;
395
+ method: z.ZodEnum<{
396
+ DELETE: "DELETE";
397
+ GET: "GET";
398
+ HEAD: "HEAD";
399
+ OPTIONS: "OPTIONS";
400
+ PATCH: "PATCH";
401
+ POST: "POST";
402
+ PUT: "PUT";
403
+ }>;
404
+ pathTemplate: z.ZodString;
405
+ }, z.core.$strict>;
406
+ /**
407
+ * A signature against an interface that runs behind a command. It declares the
408
+ * transport identity a command operation declares, for the reason AD-40 gives
409
+ * for method and path template: the identity has to be contract-independent so
410
+ * a signature authored against a corpus binds a second contract's operation.
411
+ * An operation identifier is contract-local and would bind nothing.
412
+ */
413
+ export declare const CommandDefectSignature: z.ZodObject<{
414
+ observableChannel: z.ZodEnum<{
415
+ artifact: "artifact";
416
+ "call-inputs": "call-inputs";
417
+ "exit-code": "exit-code";
418
+ "response-body": "response-body";
419
+ "response-headers": "response-headers";
420
+ "response-status": "response-status";
421
+ stderr: "stderr";
422
+ stdout: "stdout";
423
+ }>;
424
+ condition: z.ZodObject<{
425
+ selector: z.ZodObject<{
426
+ inputBinding: z.ZodObject<{
427
+ path: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
428
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
429
+ }, z.core.$strict>, z.ZodObject<{
430
+ matcher: z.ZodEnum<{
431
+ any: "any";
432
+ "type-violating": "type-violating";
433
+ }>;
434
+ }, z.core.$strict>]>>>;
435
+ query: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
436
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
437
+ }, z.core.$strict>, z.ZodObject<{
438
+ matcher: z.ZodEnum<{
439
+ any: "any";
440
+ "type-violating": "type-violating";
441
+ }>;
442
+ }, z.core.$strict>]>>>;
443
+ header: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
444
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
445
+ }, z.core.$strict>, z.ZodObject<{
446
+ matcher: z.ZodEnum<{
447
+ any: "any";
448
+ "type-violating": "type-violating";
449
+ }>;
450
+ }, z.core.$strict>]>>>;
451
+ body: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
452
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
453
+ }, z.core.$strict>, z.ZodObject<{
454
+ matcher: z.ZodEnum<{
455
+ any: "any";
456
+ "type-violating": "type-violating";
457
+ }>;
458
+ }, z.core.$strict>]>>>;
459
+ argument: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
460
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
461
+ }, z.core.$strict>, z.ZodObject<{
462
+ matcher: z.ZodEnum<{
463
+ any: "any";
464
+ "type-violating": "type-violating";
465
+ }>;
466
+ }, z.core.$strict>]>>>;
467
+ option: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
468
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
469
+ }, z.core.$strict>, z.ZodObject<{
470
+ matcher: z.ZodEnum<{
471
+ any: "any";
472
+ "type-violating": "type-violating";
473
+ }>;
474
+ }, z.core.$strict>]>>>;
475
+ environment: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
476
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
477
+ }, z.core.$strict>, z.ZodObject<{
478
+ matcher: z.ZodEnum<{
479
+ any: "any";
480
+ "type-violating": "type-violating";
481
+ }>;
482
+ }, z.core.$strict>]>>>;
483
+ stdin: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
484
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
485
+ }, z.core.$strict>, z.ZodObject<{
486
+ matcher: z.ZodEnum<{
487
+ any: "any";
488
+ "type-violating": "type-violating";
489
+ }>;
490
+ }, z.core.$strict>]>>>;
491
+ }, z.core.$strict>;
492
+ }, z.core.$strict>;
493
+ predicate: z.ZodType<Expression, unknown, z.core.$ZodTypeInternals<Expression, unknown>>;
494
+ }, z.core.$strict>;
495
+ interfaceKind: z.ZodLiteral<"cli">;
496
+ invocation: z.ZodObject<{
497
+ executable: z.ZodString;
498
+ subcommandPath: z.ZodArray<z.ZodString>;
499
+ }, z.core.$strict>;
500
+ }, z.core.$strict>;
501
+ /**
502
+ * A plain union rather than a discriminated one: the discriminator would have
503
+ * to be `interfaceKind`, and the api-shaped branch carries three values for it.
504
+ * The two branches are told apart by the identity they declare, exactly as
505
+ * `InputBinding`'s two are told apart by the channels they name.
506
+ */
507
+ export declare const DefectSignature: z.ZodUnion<readonly [z.ZodObject<{
508
+ observableChannel: z.ZodEnum<{
509
+ artifact: "artifact";
510
+ "call-inputs": "call-inputs";
511
+ "exit-code": "exit-code";
512
+ "response-body": "response-body";
513
+ "response-headers": "response-headers";
514
+ "response-status": "response-status";
515
+ stderr: "stderr";
516
+ stdout: "stdout";
517
+ }>;
518
+ condition: z.ZodObject<{
519
+ selector: z.ZodObject<{
520
+ inputBinding: z.ZodObject<{
521
+ path: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
522
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
523
+ }, z.core.$strict>, z.ZodObject<{
524
+ matcher: z.ZodEnum<{
525
+ any: "any";
526
+ "type-violating": "type-violating";
527
+ }>;
528
+ }, z.core.$strict>]>>>;
529
+ query: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
530
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
531
+ }, z.core.$strict>, z.ZodObject<{
532
+ matcher: z.ZodEnum<{
533
+ any: "any";
534
+ "type-violating": "type-violating";
535
+ }>;
536
+ }, z.core.$strict>]>>>;
537
+ header: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
538
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
539
+ }, z.core.$strict>, z.ZodObject<{
540
+ matcher: z.ZodEnum<{
541
+ any: "any";
542
+ "type-violating": "type-violating";
543
+ }>;
544
+ }, z.core.$strict>]>>>;
545
+ body: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
546
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
547
+ }, z.core.$strict>, z.ZodObject<{
548
+ matcher: z.ZodEnum<{
549
+ any: "any";
550
+ "type-violating": "type-violating";
551
+ }>;
552
+ }, z.core.$strict>]>>>;
553
+ argument: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
554
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
555
+ }, z.core.$strict>, z.ZodObject<{
556
+ matcher: z.ZodEnum<{
557
+ any: "any";
558
+ "type-violating": "type-violating";
559
+ }>;
560
+ }, z.core.$strict>]>>>;
561
+ option: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
562
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
563
+ }, z.core.$strict>, z.ZodObject<{
564
+ matcher: z.ZodEnum<{
565
+ any: "any";
566
+ "type-violating": "type-violating";
567
+ }>;
568
+ }, z.core.$strict>]>>>;
569
+ environment: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
570
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
571
+ }, z.core.$strict>, z.ZodObject<{
572
+ matcher: z.ZodEnum<{
573
+ any: "any";
574
+ "type-violating": "type-violating";
575
+ }>;
576
+ }, z.core.$strict>]>>>;
577
+ stdin: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
578
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
579
+ }, z.core.$strict>, z.ZodObject<{
580
+ matcher: z.ZodEnum<{
581
+ any: "any";
582
+ "type-violating": "type-violating";
583
+ }>;
584
+ }, z.core.$strict>]>>>;
585
+ }, z.core.$strict>;
586
+ }, z.core.$strict>;
587
+ predicate: z.ZodType<Expression, unknown, z.core.$ZodTypeInternals<Expression, unknown>>;
588
+ }, z.core.$strict>;
589
+ interfaceKind: z.ZodEnum<{
590
+ api: "api";
591
+ mcp: "mcp";
592
+ web: "web";
593
+ }>;
594
+ method: z.ZodEnum<{
595
+ DELETE: "DELETE";
596
+ GET: "GET";
597
+ HEAD: "HEAD";
598
+ OPTIONS: "OPTIONS";
599
+ PATCH: "PATCH";
600
+ POST: "POST";
601
+ PUT: "PUT";
602
+ }>;
603
+ pathTemplate: z.ZodString;
604
+ }, z.core.$strict>, z.ZodObject<{
605
+ observableChannel: z.ZodEnum<{
606
+ artifact: "artifact";
607
+ "call-inputs": "call-inputs";
608
+ "exit-code": "exit-code";
609
+ "response-body": "response-body";
610
+ "response-headers": "response-headers";
611
+ "response-status": "response-status";
612
+ stderr: "stderr";
613
+ stdout: "stdout";
614
+ }>;
615
+ condition: z.ZodObject<{
616
+ selector: z.ZodObject<{
617
+ inputBinding: z.ZodObject<{
618
+ path: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
619
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
620
+ }, z.core.$strict>, z.ZodObject<{
621
+ matcher: z.ZodEnum<{
622
+ any: "any";
623
+ "type-violating": "type-violating";
624
+ }>;
625
+ }, z.core.$strict>]>>>;
626
+ query: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
627
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
628
+ }, z.core.$strict>, z.ZodObject<{
629
+ matcher: z.ZodEnum<{
630
+ any: "any";
631
+ "type-violating": "type-violating";
632
+ }>;
633
+ }, z.core.$strict>]>>>;
634
+ header: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
635
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
636
+ }, z.core.$strict>, z.ZodObject<{
637
+ matcher: z.ZodEnum<{
638
+ any: "any";
639
+ "type-violating": "type-violating";
640
+ }>;
641
+ }, z.core.$strict>]>>>;
642
+ body: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
643
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
644
+ }, z.core.$strict>, z.ZodObject<{
645
+ matcher: z.ZodEnum<{
646
+ any: "any";
647
+ "type-violating": "type-violating";
648
+ }>;
649
+ }, z.core.$strict>]>>>;
650
+ argument: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
651
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
652
+ }, z.core.$strict>, z.ZodObject<{
653
+ matcher: z.ZodEnum<{
654
+ any: "any";
655
+ "type-violating": "type-violating";
656
+ }>;
657
+ }, z.core.$strict>]>>>;
658
+ option: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
659
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
660
+ }, z.core.$strict>, z.ZodObject<{
661
+ matcher: z.ZodEnum<{
662
+ any: "any";
663
+ "type-violating": "type-violating";
664
+ }>;
665
+ }, z.core.$strict>]>>>;
666
+ environment: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
667
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
668
+ }, z.core.$strict>, z.ZodObject<{
669
+ matcher: z.ZodEnum<{
670
+ any: "any";
671
+ "type-violating": "type-violating";
672
+ }>;
673
+ }, z.core.$strict>]>>>;
674
+ stdin: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
675
+ literal: z.ZodType<import("./primitives.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("./primitives.ts").JsonValue, unknown>>;
676
+ }, z.core.$strict>, z.ZodObject<{
677
+ matcher: z.ZodEnum<{
678
+ any: "any";
679
+ "type-violating": "type-violating";
680
+ }>;
681
+ }, z.core.$strict>]>>>;
682
+ }, z.core.$strict>;
683
+ }, z.core.$strict>;
684
+ predicate: z.ZodType<Expression, unknown, z.core.$ZodTypeInternals<Expression, unknown>>;
685
+ }, z.core.$strict>;
686
+ interfaceKind: z.ZodLiteral<"cli">;
687
+ invocation: z.ZodObject<{
688
+ executable: z.ZodString;
689
+ subcommandPath: z.ZodArray<z.ZodString>;
690
+ }, z.core.$strict>;
691
+ }, z.core.$strict>]>;
692
+ export type ApiDefectSignature = z.infer<typeof ApiDefectSignature>;
693
+ export type CommandDefectSignature = z.infer<typeof CommandDefectSignature>;
694
+ export type DefectSignature = z.infer<typeof DefectSignature>;
695
+ export type ProbeInputBinding = z.infer<typeof ProbeInputBinding>;