@glubean/sdk 0.5.1 → 0.8.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 (151) hide show
  1. package/dist/contract-artifacts.d.ts +39 -21
  2. package/dist/contract-artifacts.d.ts.map +1 -1
  3. package/dist/contract-artifacts.js +80 -24
  4. package/dist/contract-artifacts.js.map +1 -1
  5. package/dist/contract-core.d.ts +10 -21
  6. package/dist/contract-core.d.ts.map +1 -1
  7. package/dist/contract-core.js +26 -812
  8. package/dist/contract-core.js.map +1 -1
  9. package/dist/contract-http/adapter.d.ts +13 -0
  10. package/dist/contract-http/adapter.d.ts.map +1 -1
  11. package/dist/contract-http/adapter.js +191 -23
  12. package/dist/contract-http/adapter.js.map +1 -1
  13. package/dist/contract-http/factory.d.ts +2 -2
  14. package/dist/contract-http/factory.d.ts.map +1 -1
  15. package/dist/contract-http/factory.js +5 -0
  16. package/dist/contract-http/factory.js.map +1 -1
  17. package/dist/contract-http/inbound-match.d.ts +47 -0
  18. package/dist/contract-http/inbound-match.d.ts.map +1 -0
  19. package/dist/contract-http/inbound-match.js +136 -0
  20. package/dist/contract-http/inbound-match.js.map +1 -0
  21. package/dist/contract-http/inbound-verify.d.ts +46 -0
  22. package/dist/contract-http/inbound-verify.d.ts.map +1 -0
  23. package/dist/contract-http/inbound-verify.js +101 -0
  24. package/dist/contract-http/inbound-verify.js.map +1 -0
  25. package/dist/contract-http/inbound.d.ts +45 -0
  26. package/dist/contract-http/inbound.d.ts.map +1 -0
  27. package/dist/contract-http/inbound.js +89 -0
  28. package/dist/contract-http/inbound.js.map +1 -0
  29. package/dist/contract-http/index.d.ts +5 -0
  30. package/dist/contract-http/index.d.ts.map +1 -1
  31. package/dist/contract-http/index.js +3 -0
  32. package/dist/contract-http/index.js.map +1 -1
  33. package/dist/contract-http/openapi.d.ts +0 -7
  34. package/dist/contract-http/openapi.d.ts.map +1 -1
  35. package/dist/contract-http/openapi.js +20 -14
  36. package/dist/contract-http/openapi.js.map +1 -1
  37. package/dist/contract-http/types.d.ts +106 -2
  38. package/dist/contract-http/types.d.ts.map +1 -1
  39. package/dist/contract-http/types.js +33 -0
  40. package/dist/contract-http/types.js.map +1 -1
  41. package/dist/contract-types.d.ts +148 -446
  42. package/dist/contract-types.d.ts.map +1 -1
  43. package/dist/data-path.d.ts.map +1 -1
  44. package/dist/data-path.js +10 -2
  45. package/dist/data-path.js.map +1 -1
  46. package/dist/index.d.ts +10 -6
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +10 -1
  49. package/dist/index.js.map +1 -1
  50. package/dist/internal.d.ts +7 -0
  51. package/dist/internal.d.ts.map +1 -1
  52. package/dist/internal.js +14 -0
  53. package/dist/internal.js.map +1 -1
  54. package/dist/load/artifact.d.ts +376 -0
  55. package/dist/load/artifact.d.ts.map +1 -0
  56. package/dist/load/artifact.js +14 -0
  57. package/dist/load/artifact.js.map +1 -0
  58. package/dist/load/builder.d.ts +80 -0
  59. package/dist/load/builder.d.ts.map +1 -0
  60. package/dist/load/builder.js +262 -0
  61. package/dist/load/builder.js.map +1 -0
  62. package/dist/load/context.d.ts +81 -0
  63. package/dist/load/context.d.ts.map +1 -0
  64. package/dist/load/context.js +2 -0
  65. package/dist/load/context.js.map +1 -0
  66. package/dist/load/duration.d.ts +9 -0
  67. package/dist/load/duration.d.ts.map +1 -0
  68. package/dist/load/duration.js +22 -0
  69. package/dist/load/duration.js.map +1 -0
  70. package/dist/load/events.d.ts +132 -0
  71. package/dist/load/events.d.ts.map +1 -0
  72. package/dist/load/events.js +2 -0
  73. package/dist/load/events.js.map +1 -0
  74. package/dist/load/feeder.d.ts +118 -0
  75. package/dist/load/feeder.d.ts.map +1 -0
  76. package/dist/load/feeder.js +170 -0
  77. package/dist/load/feeder.js.map +1 -0
  78. package/dist/load/index.d.ts +32 -0
  79. package/dist/load/index.d.ts.map +1 -0
  80. package/dist/load/index.js +7 -0
  81. package/dist/load/index.js.map +1 -0
  82. package/dist/load/progress.d.ts +56 -0
  83. package/dist/load/progress.d.ts.map +1 -0
  84. package/dist/load/progress.js +2 -0
  85. package/dist/load/progress.js.map +1 -0
  86. package/dist/load/projection.d.ts +36 -0
  87. package/dist/load/projection.d.ts.map +1 -0
  88. package/dist/load/projection.js +47 -0
  89. package/dist/load/projection.js.map +1 -0
  90. package/dist/load/runner.d.ts +201 -0
  91. package/dist/load/runner.d.ts.map +1 -0
  92. package/dist/load/runner.js +78 -0
  93. package/dist/load/runner.js.map +1 -0
  94. package/dist/load/scenario.d.ts +130 -0
  95. package/dist/load/scenario.d.ts.map +1 -0
  96. package/dist/load/scenario.js +9 -0
  97. package/dist/load/scenario.js.map +1 -0
  98. package/dist/load/step.d.ts +42 -0
  99. package/dist/load/step.d.ts.map +1 -0
  100. package/dist/load/step.js +2 -0
  101. package/dist/load/step.js.map +1 -0
  102. package/dist/{contract-flow-poll.d.ts → poll-primitives.d.ts} +8 -81
  103. package/dist/poll-primitives.d.ts.map +1 -0
  104. package/dist/{contract-flow-poll.js → poll-primitives.js} +10 -64
  105. package/dist/poll-primitives.js.map +1 -0
  106. package/dist/{contract-flow-condition.d.ts → predicates.d.ts} +34 -71
  107. package/dist/predicates.d.ts.map +1 -0
  108. package/dist/{contract-flow-condition.js → predicates.js} +86 -80
  109. package/dist/predicates.js.map +1 -0
  110. package/dist/test/builder.js +2 -2
  111. package/dist/test/builder.js.map +1 -1
  112. package/dist/test/utils.d.ts +7 -0
  113. package/dist/test/utils.d.ts.map +1 -1
  114. package/dist/test/utils.js +22 -17
  115. package/dist/test/utils.js.map +1 -1
  116. package/dist/types.d.ts +42 -14
  117. package/dist/types.d.ts.map +1 -1
  118. package/dist/types.js.map +1 -1
  119. package/dist/workflow/builder.d.ts +386 -0
  120. package/dist/workflow/builder.d.ts.map +1 -0
  121. package/dist/workflow/builder.js +1150 -0
  122. package/dist/workflow/builder.js.map +1 -0
  123. package/dist/workflow/execute.d.ts +277 -0
  124. package/dist/workflow/execute.d.ts.map +1 -0
  125. package/dist/workflow/execute.js +1489 -0
  126. package/dist/workflow/execute.js.map +1 -0
  127. package/dist/workflow/index.d.ts +11 -0
  128. package/dist/workflow/index.d.ts.map +1 -0
  129. package/dist/workflow/index.js +15 -0
  130. package/dist/workflow/index.js.map +1 -0
  131. package/dist/workflow/project.d.ts +18 -0
  132. package/dist/workflow/project.d.ts.map +1 -0
  133. package/dist/workflow/project.js +321 -0
  134. package/dist/workflow/project.js.map +1 -0
  135. package/dist/workflow/retry.d.ts +13 -0
  136. package/dist/workflow/retry.d.ts.map +1 -0
  137. package/dist/workflow/retry.js +15 -0
  138. package/dist/workflow/retry.js.map +1 -0
  139. package/dist/workflow/types.d.ts +512 -0
  140. package/dist/workflow/types.d.ts.map +1 -0
  141. package/dist/workflow/types.js +2 -0
  142. package/dist/workflow/types.js.map +1 -0
  143. package/package.json +9 -2
  144. package/dist/contract-flow-condition.d.ts.map +0 -1
  145. package/dist/contract-flow-condition.js.map +0 -1
  146. package/dist/contract-flow-poll.d.ts.map +0 -1
  147. package/dist/contract-flow-poll.js.map +0 -1
  148. package/dist/contract-http/flow-helpers.d.ts +0 -12
  149. package/dist/contract-http/flow-helpers.d.ts.map +0 -1
  150. package/dist/contract-http/flow-helpers.js +0 -34
  151. package/dist/contract-http/flow-helpers.js.map +0 -1
@@ -27,7 +27,7 @@
27
27
  * **Consumers**: `renderArtifact(kind, contracts, options?, control?)`
28
28
  * dispatches across all registered adapters; fallback to kind.defaultRender
29
29
  * where the adapter doesn't implement the kind; ultimate fallback to
30
- * kind.empty when no contract contributes a part.
30
+ * merge([], options) when no contract contributes a part.
31
31
  *
32
32
  * ## Types
33
33
  *
@@ -60,8 +60,11 @@ export interface ArtifactKind<Final, Part = Final, Options = void> {
60
60
  readonly name: string;
61
61
  /**
62
62
  * Combine per-contract parts into the final artifact. Called once per
63
- * render; receives the collected parts and the same options that were
64
- * passed to producers / defaultRender.
63
+ * render INCLUDING when zero parts were collected (`parts = []`):
64
+ * options like a user-supplied OpenAPI title/version/servers must reach
65
+ * the final document even when every contract skipped (codex
66
+ * inbound-artifact C-R1 P2 — a static `empty` value can't carry them,
67
+ * which is why this interface has no `empty` field).
65
68
  */
66
69
  readonly merge: (parts: Part[], options?: Options) => Final;
67
70
  /**
@@ -70,15 +73,13 @@ export interface ArtifactKind<Final, Part = Final, Options = void> {
70
73
  * `ExtractedContractProjection`. Omitted for kinds that only make sense
71
74
  * for specific protocols (e.g. openapi has no defaultRender — non-HTTP
72
75
  * contracts are skipped).
76
+ *
77
+ * Returning `null` means "this contract contributes nothing to this kind"
78
+ * — the contract is recorded in `skipped`, never pushed as an empty part
79
+ * (inbound-artifact-design D6: the old "null parts are filtered" comment
80
+ * described behavior that never existed).
73
81
  */
74
- readonly defaultRender?: (projection: ExtractedContractProjection<unknown, unknown>, options?: Options) => Part;
75
- /**
76
- * Required: the value returned by `renderArtifact` when no contract
77
- * contributes a part. Must be a valid Final. Lets `renderArtifact` promise
78
- * `Final` (not `Final | undefined`) and forces kind authors to think
79
- * about the zero-contribution scenario explicitly.
80
- */
81
- readonly empty: Final;
82
+ readonly defaultRender?: (projection: ExtractedContractProjection<unknown, unknown>, options?: Options) => Part | null;
82
83
  }
83
84
  /**
84
85
  * Register an artifact kind by name. Idempotent when re-registering the same
@@ -137,7 +138,11 @@ export interface ArtifactContribution {
137
138
  export interface ArtifactSkip {
138
139
  contractId: string;
139
140
  protocol: string;
140
- reason: "no-producer-no-default-render" | "prefer-default-render-no-default";
141
+ reason: "no-producer-no-default-render" | "prefer-default-render-no-default"
142
+ /** Producer/defaultRender returned null — deliberate non-contribution
143
+ * (e.g. an inbound-only contract has no OpenAPI operation until the
144
+ * webhooks artifact lands — inbound-artifact-design D6). */
145
+ | "producer-returned-null" | "default-render-returned-null";
141
146
  }
142
147
  export interface ArtifactRenderSummary<Final> {
143
148
  /** Same value `renderArtifact` would have returned. */
@@ -147,19 +152,17 @@ export interface ArtifactRenderSummary<Final> {
147
152
  /** Contracts that did not produce a part (with reason). */
148
153
  skipped: ArtifactSkip[];
149
154
  /**
150
- * True iff `value === kind.empty` was returned because zero parts were
151
- * collected. False when `kind.merge(parts, options)` was called. Callers
152
- * should use this instead of comparing `value === kind.empty`
153
- * themselves — merge typically returns a fresh object for object-typed
154
- * Final, so identity / structural equality are not reliable.
155
+ * True iff ZERO parts were collected `value` came from
156
+ * `kind.merge([], options)` (so user options still reach the document).
157
+ * Callers should use this flag instead of probing the value shape.
155
158
  */
156
159
  usedEmptyFallback: boolean;
157
160
  }
158
161
  /**
159
162
  * Render an artifact of the given kind from a list of contracts. Threads
160
163
  * `options` through the producer / defaultRender / merge pipeline. When no
161
- * contract contributes a part, returns `kind.empty` (guaranteed valid
162
- * `Final`).
164
+ * contract contributes a part, returns `kind.merge([], options)` the
165
+ * zero-contribution document still carries user options.
163
166
  *
164
167
  * Strong-typed entry point: kind argument is a concrete `ArtifactKind<...>`
165
168
  * object, so `options` type and return type are inferred at compile time.
@@ -168,9 +171,9 @@ export declare function renderArtifact<Final, Part, Options>(kind: ArtifactKind<
168
171
  /**
169
172
  * Render an artifact and return the full summary (value + contributions +
170
173
  * skipped + usedEmptyFallback). Use this when you need to distinguish
171
- * "zero contribution" from "merged to kind.empty-shaped value" — the
174
+ * "zero contribution" from "merged from real parts" — the
172
175
  * `usedEmptyFallback` field is the authoritative signal (do not compare
173
- * `value === kind.empty` yourself for object-typed Final).
176
+ * the value shape yourself for object-typed Final).
174
177
  */
175
178
  export declare function renderArtifactWithSummary<Final, Part, Options>(kind: ArtifactKind<Final, Part, Options>, contracts: ReadonlyArray<ExtractedContractProjection<unknown, unknown>>, options?: Options, control?: RenderArtifactControl): ArtifactRenderSummary<Final>;
176
179
  /**
@@ -244,6 +247,21 @@ export interface MarkdownPart {
244
247
  given?: string;
245
248
  hasVerify?: boolean;
246
249
  verifyRules?: VerifyRule[];
250
+ /**
251
+ * Present iff the case is inbound (the counterparty calls us —
252
+ * direction: "inbound"). Carries the human-relevant promise details;
253
+ * secretRef is a secrets NAME, never a value
254
+ * (inbound-artifact-design, route C).
255
+ */
256
+ inbound?: {
257
+ signature?: {
258
+ scheme: string;
259
+ header: string;
260
+ secretRef: string;
261
+ toleranceMs?: number;
262
+ };
263
+ withinMs?: number;
264
+ };
247
265
  }>;
248
266
  }
249
267
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"contract-artifacts.d.ts","sourceRoot":"","sources":["../src/contract-artifacts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract-artifacts.d.ts","sourceRoot":"","sources":["../src/contract-artifacts.ts"],"names":[],"mappings":"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"}
@@ -27,7 +27,7 @@
27
27
  * **Consumers**: `renderArtifact(kind, contracts, options?, control?)`
28
28
  * dispatches across all registered adapters; fallback to kind.defaultRender
29
29
  * where the adapter doesn't implement the kind; ultimate fallback to
30
- * kind.empty when no contract contributes a part.
30
+ * merge([], options) when no contract contributes a part.
31
31
  *
32
32
  * ## Types
33
33
  *
@@ -38,7 +38,7 @@
38
38
  * same node.
39
39
  */
40
40
  import { getAdapter, listRegisteredProtocols, } from "./contract-core.js";
41
- import { emptyOpenApiDocument, mergeOpenApiParts, } from "./contract-http/openapi.js";
41
+ import { mergeOpenApiParts, } from "./contract-http/openapi.js";
42
42
  // =============================================================================
43
43
  // Kind registry
44
44
  // =============================================================================
@@ -109,7 +109,20 @@ function runRender(kind, contracts, options, control) {
109
109
  ? adapter?.artifacts?.[kind.name]
110
110
  : undefined;
111
111
  if (explicitProducer) {
112
- parts.push(explicitProducer(c, options));
112
+ // `null`/`undefined` = deliberate non-contribution (D6): record the
113
+ // skip instead of pushing an empty part into merge. Before this,
114
+ // adapters had to fabricate `{}` ("null parts are filtered" was an
115
+ // assumption the pipeline never implemented).
116
+ const part = explicitProducer(c, options);
117
+ if (part === null || part === undefined) {
118
+ skipped.push({
119
+ contractId: c.id,
120
+ protocol: c.protocol,
121
+ reason: "producer-returned-null",
122
+ });
123
+ continue;
124
+ }
125
+ parts.push(part);
113
126
  contributions.push({
114
127
  contractId: c.id,
115
128
  protocol: c.protocol,
@@ -118,7 +131,16 @@ function runRender(kind, contracts, options, control) {
118
131
  continue;
119
132
  }
120
133
  if (kind.defaultRender) {
121
- parts.push(kind.defaultRender(c, options));
134
+ const part = kind.defaultRender(c, options);
135
+ if (part === null || part === undefined) {
136
+ skipped.push({
137
+ contractId: c.id,
138
+ protocol: c.protocol,
139
+ reason: "default-render-returned-null",
140
+ });
141
+ continue;
142
+ }
143
+ parts.push(part);
122
144
  contributions.push({
123
145
  contractId: c.id,
124
146
  protocol: c.protocol,
@@ -134,26 +156,21 @@ function runRender(kind, contracts, options, control) {
134
156
  : "no-producer-no-default-render",
135
157
  });
136
158
  }
137
- if (parts.length === 0) {
138
- return {
139
- value: kind.empty,
140
- contributions,
141
- skipped,
142
- usedEmptyFallback: true,
143
- };
144
- }
159
+ // Zero parts still goes through merge — `merge([], options)` is the only
160
+ // place that can thread user options (title/version/servers) into the
161
+ // zero-contribution document (codex inbound-artifact C-R1 P2).
145
162
  return {
146
163
  value: kind.merge(parts, options),
147
164
  contributions,
148
165
  skipped,
149
- usedEmptyFallback: false,
166
+ usedEmptyFallback: parts.length === 0,
150
167
  };
151
168
  }
152
169
  /**
153
170
  * Render an artifact of the given kind from a list of contracts. Threads
154
171
  * `options` through the producer / defaultRender / merge pipeline. When no
155
- * contract contributes a part, returns `kind.empty` (guaranteed valid
156
- * `Final`).
172
+ * contract contributes a part, returns `kind.merge([], options)` the
173
+ * zero-contribution document still carries user options.
157
174
  *
158
175
  * Strong-typed entry point: kind argument is a concrete `ArtifactKind<...>`
159
176
  * object, so `options` type and return type are inferred at compile time.
@@ -164,9 +181,9 @@ export function renderArtifact(kind, contracts, options, control) {
164
181
  /**
165
182
  * Render an artifact and return the full summary (value + contributions +
166
183
  * skipped + usedEmptyFallback). Use this when you need to distinguish
167
- * "zero contribution" from "merged to kind.empty-shaped value" — the
184
+ * "zero contribution" from "merged from real parts" — the
168
185
  * `usedEmptyFallback` field is the authoritative signal (do not compare
169
- * `value === kind.empty` yourself for object-typed Final).
186
+ * the value shape yourself for object-typed Final).
170
187
  */
171
188
  export function renderArtifactWithSummary(kind, contracts, options, control) {
172
189
  return runRender(kind, contracts, options, control);
@@ -244,7 +261,6 @@ export function listArtifactCapability(kindName) {
244
261
  export const openapiArtifact = defineArtifactKind({
245
262
  name: "openapi",
246
263
  merge: (parts, options) => mergeOpenApiParts(parts, options),
247
- empty: emptyOpenApiDocument,
248
264
  });
249
265
  /**
250
266
  * Protocol-agnostic default renderer. Reads raw fields off the
@@ -277,6 +293,23 @@ export function genericMarkdownPart(projection) {
277
293
  given: c.given,
278
294
  hasVerify: c.hasVerify,
279
295
  verifyRules: c.verifyRules,
296
+ // direction is a core CaseMeta field; the promise details live in the
297
+ // adapter's schemas slot — duck-read (markdown is human-facing and the
298
+ // shape is the HTTP adapter's published `inbound` block).
299
+ ...(c.direction === "inbound"
300
+ ? {
301
+ inbound: (() => {
302
+ // The adapter's safe-schemas block names the latency field
303
+ // `within` (HttpSafeSchemas); the part re-exposes it with the
304
+ // unit in the name (design D4).
305
+ const inb = c.schemas?.inbound;
306
+ return {
307
+ ...(inb?.signature ? { signature: inb.signature } : {}),
308
+ ...(inb?.within !== undefined ? { withinMs: inb.within } : {}),
309
+ };
310
+ })(),
311
+ }
312
+ : {}),
280
313
  })),
281
314
  };
282
315
  }
@@ -285,9 +318,14 @@ function computeMarkdownSummary(parts) {
285
318
  let deferred = 0;
286
319
  let deprecated = 0;
287
320
  let gated = 0;
321
+ let inbound = 0;
288
322
  for (const p of parts) {
289
323
  for (const c of p.cases) {
290
324
  total++;
325
+ // Inbound cases are active promises (counted in `active`) — `inbound`
326
+ // is an additional facet, not a lifecycle.
327
+ if (c.inbound)
328
+ inbound++;
291
329
  if (c.lifecycle === "deprecated")
292
330
  deprecated++;
293
331
  else if (c.lifecycle === "deferred")
@@ -302,6 +340,7 @@ function computeMarkdownSummary(parts) {
302
340
  deferred,
303
341
  deprecated,
304
342
  gated,
343
+ inbound,
305
344
  };
306
345
  }
307
346
  function formatVerifyRule(rule) {
@@ -312,6 +351,16 @@ function formatVerifyRule(rule) {
312
351
  }
313
352
  function formatCaseProjectionNotes(c) {
314
353
  const notes = [];
354
+ if (c.inbound) {
355
+ const sig = c.inbound.signature;
356
+ if (sig) {
357
+ const tolerance = sig.toleranceMs !== undefined ? `, tolerance ${sig.toleranceMs}ms` : "";
358
+ notes.push(`signed: ${sig.scheme} via \`${sig.header}\` (secret: ${sig.secretRef}${tolerance})`);
359
+ }
360
+ if (c.inbound.withinMs !== undefined) {
361
+ notes.push(`within: ${c.inbound.withinMs}ms`);
362
+ }
363
+ }
315
364
  if (c.given)
316
365
  notes.push(`given: ${c.given}`);
317
366
  if (c.verifyRules && c.verifyRules.length > 0) {
@@ -325,20 +374,26 @@ function formatCaseProjectionNotes(c) {
325
374
  function formatMarkdownCase(c) {
326
375
  const desc = c.description ? ` — ${c.description}` : "";
327
376
  const projectionNotes = formatCaseProjectionNotes(c);
377
+ // Inbound cases: the counterparty calls US — the direction cue rides EVERY
378
+ // lifecycle branch (a deferred/deprecated inbound case is still inbound;
379
+ // codex C-R1 P3), so it prefixes rather than replaces the line shape.
380
+ const marker = c.inbound ? "📥 " : "";
328
381
  if (c.lifecycle === "deprecated") {
329
382
  const reason = c.deprecatedReason ?? "deprecated";
330
- return `- ⊘ **${c.key}** — deprecated: ${reason}${projectionNotes}`;
383
+ return `- ${marker}⊘ **${c.key}** — deprecated: ${reason}${projectionNotes}`;
331
384
  }
332
385
  if (c.lifecycle === "deferred") {
333
386
  const reason = c.deferredReason ?? "deferred";
334
- return `- ⊘ **${c.key}** — deferred: ${reason}${projectionNotes}`;
387
+ return `- ${marker}⊘ **${c.key}** — deferred: ${reason}${projectionNotes}`;
335
388
  }
336
389
  if (c.requires === "browser" || c.requires === "out-of-band") {
337
- return `- ⊘ **${c.key}** — requires: ${c.requires}${projectionNotes}`;
390
+ return `- ${marker}⊘ **${c.key}** — requires: ${c.requires}${projectionNotes}`;
338
391
  }
339
392
  const severityTag = c.severity === "critical" ? " 🔴" : c.severity === "info" ? " ℹ️" : "";
340
- const suffix = c.defaultRun === "opt-in" ? " *(opt-in)*" : "";
341
- return `- **${c.key}**${desc}${projectionNotes}${suffix}${severityTag}`;
393
+ // defaultRun is runnable vocabulary meaningless on a never-runnable
394
+ // inbound case, so the opt-in suffix never applies there.
395
+ const suffix = c.inbound ? "" : c.defaultRun === "opt-in" ? " *(opt-in)*" : "";
396
+ return `- ${marker}**${c.key}**${desc}${projectionNotes}${suffix}${severityTag}`;
342
397
  }
343
398
  /**
344
399
  * Compute the effective feature key for a part — applies the
@@ -391,6 +446,8 @@ export function assembleMarkdownDocument(parts) {
391
446
  summaryParts.push(`${summary.deprecated} deprecated`);
392
447
  if (summary.gated > 0)
393
448
  summaryParts.push(`${summary.gated} gated`);
449
+ if (summary.inbound > 0)
450
+ summaryParts.push(`${summary.inbound} inbound`);
394
451
  lines.push(summaryParts.join(" | "));
395
452
  lines.push("");
396
453
  for (const [featureName, featureParts] of groups.entries()) {
@@ -419,6 +476,5 @@ export const markdownArtifact = defineArtifactKind({
419
476
  name: "markdown",
420
477
  defaultRender: (projection) => genericMarkdownPart(projection),
421
478
  merge: (parts) => assembleMarkdownDocument(parts),
422
- empty: "",
423
479
  });
424
480
  //# sourceMappingURL=contract-artifacts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"contract-artifacts.js","sourceRoot":"","sources":["../src/contract-artifacts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract-artifacts.js","sourceRoot":"","sources":["../src/contract-artifacts.ts"],"names":[],"mappings":"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"}
@@ -6,9 +6,6 @@
6
6
  * - `contract.register(protocol, adapter)` — plugin extension point
7
7
  * - `contract[protocol](id, spec)` dispatcher — validates 1:1 case keys,
8
8
  * invokes adapter.execute per case, registers tests + ContractRegistryMeta
9
- * - `contract.flow(id)` — protocol-agnostic FlowBuilder
10
- * - `runFlow(flow, ctx)` — core flow execution helper (Rule 1/2 teardown)
11
- * - `normalizeFlow(runtime)` — Runtime → ExtractedFlowProjection
12
9
  * - Permissive Proxy tracer for `compute` nodes (best-effort reads/writes)
13
10
  *
14
11
  * HTTP is NOT handled here — it registers itself in `./contract-http/`.
@@ -18,8 +15,14 @@
18
15
  * - `internal/40-discovery/proposals/contract-generics-complete.md` v5
19
16
  * - `internal/40-discovery/proposals/contract-flow.md` v9
20
17
  */
21
- import type { TestContext } from "./types.js";
22
- import type { Bootstrap, BootstrapAttachment, ContractCaseRef, ContractProtocolAdapter, ExtractedFlowProjection, FieldMapping, FlowBuilder, FlowContract, FlowMeta, RuntimeFlowProjection } from "./contract-types.js";
18
+ import type { Bootstrap, BootstrapAttachment, ContractCaseRef, ContractProtocolAdapter, FieldMapping } from "./contract-types.js";
19
+ export declare function validateNeedsOutput(needsSchema: {
20
+ safeParse?: unknown;
21
+ parse?: unknown;
22
+ }, value: unknown, ctx: {
23
+ testId: string;
24
+ source: "bootstrap" | "explicit" | "flow" | "bootstrap-params" | "workflow";
25
+ }): unknown;
23
26
  /** Internal accessor for plugins / downstream (scanner, runner). */
24
27
  export declare function getAdapter(protocol: string): ContractProtocolAdapter<any, any, any, any, any> | undefined;
25
28
  /**
@@ -61,7 +64,6 @@ export declare function __resetAdapterRegistryForTesting(): void;
61
64
  declare function register<Spec, RuntimeSchemas = unknown, RuntimeMeta = unknown, SafeSchemas = unknown, SafeMeta = unknown>(protocol: string, adapter: ContractProtocolAdapter<Spec, RuntimeSchemas, RuntimeMeta, SafeSchemas, SafeMeta>): void;
62
65
  type ContractNamespace = {
63
66
  register: typeof register;
64
- flow: typeof flow;
65
67
  bootstrap: typeof bootstrap;
66
68
  [protocol: string]: unknown;
67
69
  };
@@ -77,26 +79,13 @@ type ContractNamespace = {
77
79
  */
78
80
  export declare function bootstrap<Needs, Params = void>(ref: ContractCaseRef<Needs, unknown>, spec: Bootstrap<Params, NoInfer<Needs>>): BootstrapAttachment<Needs, Params>;
79
81
  export declare const contract: ContractNamespace;
80
- export declare function flow(idOrMeta: string | FlowMeta): FlowBuilder<unknown>;
81
- export declare function runFlow<State>(flowContract: FlowContract<State>, ctx: TestContext): Promise<void>;
82
- /**
83
- * Normalize a RuntimeFlowProjection to JSON-safe ExtractedFlowProjection.
84
- * Runs Proxy dry-run of lens functions to extract FieldMappings.
85
- *
86
- * Lens purity is enforced here: if a `step.bindings.in` or `.out` lens
87
- * violates purity (method call, `new`, etc.), `LensPurityError` is thrown
88
- * with step context so the author sees which step needs fixing.
89
- */
90
- export declare function normalizeFlow<State>(runtime: RuntimeFlowProjection<State> & {
91
- id: string;
92
- }): ExtractedFlowProjection;
93
82
  /**
94
83
  * Run a pure lens `fn: (state) => output` with a tracing Proxy, extracting
95
84
  * FieldMappings from state paths to output paths.
96
85
  *
97
86
  * Pure-lens enforcement: method calls, `new`, and coercion on the state
98
87
  * proxy raise `LensPurityError`. Errors are **not** swallowed — the caller
99
- * (typically `normalizeFlow`) wraps them with step context and re-throws,
88
+ * (legacy flow's normalizer used to) wraps them with step context and re-throws,
100
89
  * so authors see the failure at flow build time rather than silently
101
90
  * losing projection data.
102
91
  */
@@ -124,7 +113,7 @@ export declare function extractMappingsOut(fn: (state: any, response: any) => an
124
113
  /**
125
114
  * Raised by the strict lens Proxy when a user lens fn attempts an operation
126
115
  * that breaks the "pure field access + repack" contract. Caught and re-
127
- * thrown with step context by `normalizeFlow`.
116
+ * thrown with step context by callers.
128
117
  */
129
118
  export declare class LensPurityError extends Error {
130
119
  readonly path: string;
@@ -1 +1 @@
1
- {"version":3,"file":"contract-core.d.ts","sourceRoot":"","sources":["../src/contract-core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract-core.d.ts","sourceRoot":"","sources":["../src/contract-core.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,KAAK,EAEV,SAAS,EACT,mBAAmB,EAEnB,eAAe,EACf,uBAAuB,EAGvB,YAAY,EAEb,MAAM,qBAAqB,CAAC;AA+C7B,wBAAgB,mBAAmB,CACjC,WAAW,EAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,EACrD,KAAK,EAAE,OAAO,EACd,GAAG,EAAE;IACH,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,WAAW,GAAG,UAAU,GAAG,MAAM,GAAG,kBAAkB,GAAG,UAAU,CAAC;CAC7E,GACA,OAAO,CA4BT;AAgBD,oEAAoE;AACpE,wBAAgB,UAAU,CACxB,QAAQ,EAAE,MAAM,GACf,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS,CAE9D;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,EAAE,CAElD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAIrE;AAED;;;;;;;GAOG;AACH,wBAAgB,gCAAgC,IAAI,IAAI,CAIvD;AAaD;;;;;GAKG;AACH,iBAAS,QAAQ,CACf,IAAI,EACJ,cAAc,GAAG,OAAO,EACxB,WAAW,GAAG,OAAO,EACrB,WAAW,GAAG,OAAO,EACrB,QAAQ,GAAG,OAAO,EAElB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,uBAAuB,CAAC,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,CAAC,GACzF,IAAI,CA2BN;AAogBD,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,OAAO,QAAQ,CAAC;IAC1B,SAAS,EAAE,OAAO,SAAS,CAAC;IAC5B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC7B,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAC5C,GAAG,EAAE,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,EACpC,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,GACtC,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,CASpC;AAED,eAAO,MAAM,QAAQ,EAAE,iBAGtB,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,GAAG,YAAY,EAAE,CAIvE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,GAAG,MAAM,EAAE,CAUrE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,KAAK,GAAG,GACrC,YAAY,EAAE,CAMhB;AAkED;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;gBACf,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CAY5C;AAiDD;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,GACtB;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAavC"}