@glubean/sdk 0.2.2 → 0.2.3

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 (39) hide show
  1. package/dist/bootstrap-registry.d.ts +38 -0
  2. package/dist/bootstrap-registry.d.ts.map +1 -0
  3. package/dist/bootstrap-registry.js +54 -0
  4. package/dist/bootstrap-registry.js.map +1 -0
  5. package/dist/contract-core.d.ts +13 -1
  6. package/dist/contract-core.d.ts.map +1 -1
  7. package/dist/contract-core.js +329 -5
  8. package/dist/contract-core.js.map +1 -1
  9. package/dist/contract-http/adapter.d.ts +1 -7
  10. package/dist/contract-http/adapter.d.ts.map +1 -1
  11. package/dist/contract-http/adapter.js +199 -192
  12. package/dist/contract-http/adapter.js.map +1 -1
  13. package/dist/contract-http/index.d.ts +1 -0
  14. package/dist/contract-http/index.d.ts.map +1 -1
  15. package/dist/contract-http/index.js +1 -0
  16. package/dist/contract-http/index.js.map +1 -1
  17. package/dist/contract-http/types.d.ts +71 -12
  18. package/dist/contract-http/types.d.ts.map +1 -1
  19. package/dist/contract-http/types.js +45 -1
  20. package/dist/contract-http/types.js.map +1 -1
  21. package/dist/contract-types.d.ts +211 -20
  22. package/dist/contract-types.d.ts.map +1 -1
  23. package/dist/index.d.ts +3 -1
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +1 -0
  26. package/dist/index.js.map +1 -1
  27. package/dist/internal.d.ts +1 -0
  28. package/dist/internal.d.ts.map +1 -1
  29. package/dist/internal.js +3 -0
  30. package/dist/internal.js.map +1 -1
  31. package/dist/runner-input-channel.d.ts +95 -0
  32. package/dist/runner-input-channel.d.ts.map +1 -0
  33. package/dist/runner-input-channel.js +110 -0
  34. package/dist/runner-input-channel.js.map +1 -0
  35. package/package.json +1 -1
  36. package/dist/contract-http/flow-helpers.d.ts +0 -12
  37. package/dist/contract-http/flow-helpers.d.ts.map +0 -1
  38. package/dist/contract-http/flow-helpers.js +0 -34
  39. package/dist/contract-http/flow-helpers.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/contract-http/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/contract-http/adapter.ts"],"names":[],"mappings":"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"}
@@ -12,5 +12,6 @@
12
12
  */
13
13
  export { httpAdapter } from "./adapter.js";
14
14
  export { createHttpFactory, createHttpRoot } from "./factory.js";
15
+ export { defineHttpCase } from "./types.js";
15
16
  export type { HttpContractSpec, HttpContractDefaults, HttpSecurityScheme, HttpContractRoot, HttpContractFactory, ContractCase, ContractExpect, ContractExample, NormalizedHeaders, ParamValue, RequestSpec, HttpPayloadSchemas, HttpSafeSchemas, HttpContractMeta, HttpParamSchema, HttpParamMeta, HttpFlowCaseOutput, InferHttpInputs, InferHttpOutput, } from "./types.js";
16
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/contract-http/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEjE,YAAY,EAEV,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,UAAU,EACV,WAAW,EAEX,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,eAAe,GAChB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/contract-http/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,YAAY,EAEV,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,UAAU,EACV,WAAW,EAEX,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,eAAe,GAChB,MAAM,YAAY,CAAC"}
@@ -12,4 +12,5 @@
12
12
  */
13
13
  export { httpAdapter } from "./adapter.js";
14
14
  export { createHttpFactory, createHttpRoot } from "./factory.js";
15
+ export { defineHttpCase } from "./types.js";
15
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contract-http/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contract-http/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC"}
@@ -69,7 +69,64 @@ export interface ContractExpect<T = unknown> {
69
69
  /** Named response examples (OpenAPI docs). */
70
70
  examples?: Record<string, ContractExample<T>>;
71
71
  }
72
- export interface ContractCase<T = unknown, S = void> extends BaseCaseSpec {
72
+ /**
73
+ * Static-body shape for HTTP case `body` field. Excludes `unknown` (which
74
+ * would swallow the function branch in a union and lose `Needs` typing for
75
+ * function-valued bodies). Function-form `body: (input: Needs) => ...` only
76
+ * matches when the static-form types reject the value.
77
+ */
78
+ export type HttpStaticBody = Record<string, unknown> | unknown[] | string | number | boolean | null | FormData | URLSearchParams | Blob;
79
+ /**
80
+ * v0 HTTP case factory — closes the v3 P2 known-open ("HTTP body Needs
81
+ * drift"). Inside a contract spec literal, TypeScript can't correlate
82
+ * `needs: SchemaLike<X>` and `body: (input: Y) => ...` from sibling
83
+ * fields — author can write drift between them and TS won't flag it
84
+ * (`body` runs with `input.email` undefined when `body` destructures
85
+ * a key that isn't on Needs).
86
+ *
87
+ * `defineHttpCase<Needs, T>` captures `Needs` once via the explicit
88
+ * generic; the case literal is then checked against
89
+ * `ContractCase<T, Needs>` so all action fields (`body`, `params`,
90
+ * `query`, `headers`) are constrained to `(input: Needs) => ...`. Drift
91
+ * between `needs` and any action field becomes a compile error.
92
+ *
93
+ * Use it for cases that declare `needs` AND have function-valued action
94
+ * fields. Cases without `needs` (or with only static action fields)
95
+ * don't need the factory; the runtime invariants are unaffected either
96
+ * way (this is a typing improvement only).
97
+ *
98
+ * @example
99
+ * ```ts
100
+ * import { defineHttpCase } from "@glubean/sdk";
101
+ * import { z } from "zod";
102
+ *
103
+ * const successCase = defineHttpCase<{ email: string }>({
104
+ * description: "creates a user",
105
+ * needs: z.object({ email: z.string() }),
106
+ * // body, params, query, headers params now type-checked against
107
+ * // { email: string } — author can NOT write `({wrongKey}) => ...`.
108
+ * body: ({ email }) => ({ email }),
109
+ * expect: { status: 201 },
110
+ * });
111
+ *
112
+ * const api = contract.http.with("users", { client });
113
+ * export const createUser = api("user.create", {
114
+ * endpoint: "POST /users",
115
+ * cases: { success: successCase },
116
+ * });
117
+ * ```
118
+ *
119
+ * @param c The case spec to validate. Returned verbatim.
120
+ */
121
+ export declare function defineHttpCase<Needs = void, T = unknown>(c: ContractCase<T, Needs>): ContractCase<T, Needs>;
122
+ export interface ContractCase<T = unknown, Needs = void> extends BaseCaseSpec {
123
+ /**
124
+ * Per-case logical input schema. Redeclares the `BaseCaseSpec.needs` field
125
+ * with the case-specific `Needs` parameter so author-provided schema and
126
+ * function-valued action field parameter types stay locked together —
127
+ * preventing drift between `needs: SchemaLike<X>` and `body: ({wrong}) => ...`.
128
+ */
129
+ needs?: SchemaLike<Needs>;
73
130
  /** Per-case HTTP client override. */
74
131
  client?: HttpClient;
75
132
  /** Why this case exists — required. */
@@ -77,22 +134,24 @@ export interface ContractCase<T = unknown, S = void> extends BaseCaseSpec {
77
134
  /** Expected response. */
78
135
  expect: ContractExpect<T>;
79
136
  /**
80
- * Request body (for POST/PUT/PATCH). Static value, FormData/URLSearchParams
81
- * /Blob/string for non-JSON content types, or a function of setup state.
137
+ * Request body (for POST/PUT/PATCH). Either a static value (HttpStaticBody)
138
+ * or a function of the case's logical input (matching `needs`). v10
139
+ * attachment model: no more setup state — input comes from overlay
140
+ * bootstrap, explicit `--input-json`, or flow `.step() in` lens.
141
+ *
142
+ * The static branch deliberately uses concrete types (not `unknown`)
143
+ * because `unknown` in a union swallows the function branch — `Needs`
144
+ * typing on the function param would then be silently bypassed.
82
145
  */
83
- body?: unknown | FormData | URLSearchParams | Blob | ((state: S) => unknown);
146
+ body?: HttpStaticBody | ((input: Needs) => unknown);
84
147
  /** Request content type override for this case. */
85
148
  contentType?: string;
86
149
  /** URL params. Values can be `ParamValue` objects for OpenAPI metadata. */
87
- params?: Record<string, ParamValue> | ((state: S) => Record<string, string>);
150
+ params?: Record<string, ParamValue> | ((input: Needs) => Record<string, string>);
88
151
  /** Query parameters. */
89
- query?: Record<string, ParamValue> | ((state: S) => Record<string, string>);
152
+ query?: Record<string, ParamValue> | ((input: Needs) => Record<string, string>);
90
153
  /** Request headers merged with client headers. */
91
- headers?: Record<string, string> | ((state: S) => Record<string, string>);
92
- /** Setup runs before the request. Return value goes to param/query/body/headers functions + teardown. */
93
- setup?: (ctx: TestContext) => Promise<S>;
94
- /** Teardown runs after verify, even on failure. */
95
- teardown?: (ctx: TestContext, state: S) => Promise<void>;
154
+ headers?: Record<string, string> | ((input: Needs) => Record<string, string>);
96
155
  /** Business-logic verify — runs after status and schema validation. */
97
156
  verify?: (ctx: TestContext, res: T) => Promise<void>;
98
157
  }
@@ -228,7 +287,7 @@ export interface HttpFlowCaseOutput {
228
287
  * `contract.http.with("name", defaults)`.
229
288
  */
230
289
  export interface HttpContractFactory {
231
- <Cases extends Record<string, ContractCase<any, any>>>(id: string, spec: HttpContractSpec<Cases>): import("../contract-types.js").ProtocolContract<HttpContractSpec, HttpPayloadSchemas, HttpContractMeta>;
290
+ <Cases extends Record<string, ContractCase<any, any>>>(id: string, spec: HttpContractSpec<Cases>): import("../contract-types.js").ProtocolContract<HttpContractSpec<Cases>, HttpPayloadSchemas, HttpContractMeta, Cases>;
232
291
  with(name: string, defaults: HttpContractDefaults): HttpContractFactory;
233
292
  }
234
293
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/contract-http/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/contract-http/types.ts"],"names":[],"mappings":"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"}
@@ -9,5 +9,49 @@
9
9
  * Source-of-truth for user-facing authoring types (HttpContractSpec,
10
10
  * ContractCase, ContractExpect, etc.).
11
11
  */
12
- export {};
12
+ /**
13
+ * v0 HTTP case factory — closes the v3 P2 known-open ("HTTP body Needs
14
+ * drift"). Inside a contract spec literal, TypeScript can't correlate
15
+ * `needs: SchemaLike<X>` and `body: (input: Y) => ...` from sibling
16
+ * fields — author can write drift between them and TS won't flag it
17
+ * (`body` runs with `input.email` undefined when `body` destructures
18
+ * a key that isn't on Needs).
19
+ *
20
+ * `defineHttpCase<Needs, T>` captures `Needs` once via the explicit
21
+ * generic; the case literal is then checked against
22
+ * `ContractCase<T, Needs>` so all action fields (`body`, `params`,
23
+ * `query`, `headers`) are constrained to `(input: Needs) => ...`. Drift
24
+ * between `needs` and any action field becomes a compile error.
25
+ *
26
+ * Use it for cases that declare `needs` AND have function-valued action
27
+ * fields. Cases without `needs` (or with only static action fields)
28
+ * don't need the factory; the runtime invariants are unaffected either
29
+ * way (this is a typing improvement only).
30
+ *
31
+ * @example
32
+ * ```ts
33
+ * import { defineHttpCase } from "@glubean/sdk";
34
+ * import { z } from "zod";
35
+ *
36
+ * const successCase = defineHttpCase<{ email: string }>({
37
+ * description: "creates a user",
38
+ * needs: z.object({ email: z.string() }),
39
+ * // body, params, query, headers params now type-checked against
40
+ * // { email: string } — author can NOT write `({wrongKey}) => ...`.
41
+ * body: ({ email }) => ({ email }),
42
+ * expect: { status: 201 },
43
+ * });
44
+ *
45
+ * const api = contract.http.with("users", { client });
46
+ * export const createUser = api("user.create", {
47
+ * endpoint: "POST /users",
48
+ * cases: { success: successCase },
49
+ * });
50
+ * ```
51
+ *
52
+ * @param c The case spec to validate. Returned verbatim.
53
+ */
54
+ export function defineHttpCase(c) {
55
+ return c;
56
+ }
13
57
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/contract-http/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/contract-http/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA6GH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAM,UAAU,cAAc,CAC5B,CAAyB;IAEzB,OAAO,CAAC,CAAC;AACX,CAAC"}
@@ -17,7 +17,7 @@
17
17
  * See `internal/40-discovery/proposals/contract-generics-complete.md` v5
18
18
  * and `internal/40-discovery/proposals/contract-flow.md` v9 for design.
19
19
  */
20
- import type { Test, TestContext } from "./types.js";
20
+ import type { SchemaLike, Test, TestContext } from "./types.js";
21
21
  import type { KnownArtifacts, KnownArtifactParts, KnownArtifactOptions } from "./index.js";
22
22
  /**
23
23
  * Case lifecycle.
@@ -81,9 +81,42 @@ export interface FailureClassification {
81
81
  *
82
82
  * Core (`dispatchContract`) reads these fields directly from `spec.cases[key]`.
83
83
  * Adapter-specific fields are opaque to core and passed through to the adapter.
84
+ *
85
+ * @see contract-attachment-model.md v1.3 for `needs` / `given` / `runnability` semantics.
84
86
  */
85
87
  export interface BaseCaseSpec {
86
88
  description?: string;
89
+ /**
90
+ * Logical input schema for the case. The only public input contract.
91
+ * Protocol action fields (HTTP body/headers/params/query etc.) receive
92
+ * this typed input as their argument.
93
+ *
94
+ * Typed as `SchemaLike<unknown>` at the base to accept any concrete
95
+ * schema. The specific type is extracted per-case via `InferCaseInput<C>`
96
+ * when `ProtocolContract.case<K>()` types its return — TS infers the
97
+ * concrete T from the literal `SchemaLike<T>` the author wrote.
98
+ *
99
+ * This avoids a generic on `BaseCaseSpec<Needs>` which would force every
100
+ * adapter's case type (ContractCase / GrpcContractCase / GraphqlContractCase)
101
+ * to thread a Needs parameter through — too invasive for the authoring API.
102
+ */
103
+ needs?: SchemaLike<unknown>;
104
+ /**
105
+ * World-state precondition this case assumes. Projected as part of the
106
+ * contract because it changes what `expect` means (see §0.9 of the
107
+ * attachment model proposal). Bootstrap may *satisfy* `given` at
108
+ * runtime, but it must not be the only place where a semantically
109
+ * relevant precondition is declared.
110
+ */
111
+ given?: string;
112
+ /**
113
+ * Runnability metadata — grouped under `runnability` to make the
114
+ * "not contract semantic" stance structurally visible. Fields here
115
+ * do NOT enter contract projection; they enter runnable inventory.
116
+ */
117
+ runnability?: {
118
+ requireAttachment?: boolean;
119
+ };
87
120
  deferred?: string;
88
121
  deprecated?: string;
89
122
  severity?: CaseSeverity;
@@ -92,6 +125,38 @@ export interface BaseCaseSpec {
92
125
  tags?: string[];
93
126
  extensions?: Extensions;
94
127
  }
128
+ /**
129
+ * Context passed to `bootstrap.run(ctx, params)`. Extends TestContext with
130
+ * cleanup registration — cleanups run LIFO after standalone case execution,
131
+ * even if case expect/verify fails.
132
+ *
133
+ * Flow NEVER invokes bootstrap, so StandaloneBootstrapContext only exists
134
+ * for the standalone execution path.
135
+ */
136
+ export interface StandaloneBootstrapContext extends TestContext {
137
+ cleanup(fn: () => Promise<void> | void): void;
138
+ }
139
+ /**
140
+ * Bootstrap spec. Plain function form is shorthand for structured form
141
+ * with no `params`.
142
+ *
143
+ * Body is opaque (§4.2 attachment model); only `params` schema is projectable.
144
+ */
145
+ export type Bootstrap<Params, Output> = ((ctx: StandaloneBootstrapContext) => Promise<Output>) | {
146
+ params?: SchemaLike<Params>;
147
+ run: (ctx: StandaloneBootstrapContext, params: Params) => Promise<Output>;
148
+ };
149
+ /**
150
+ * Runtime marker carried by a registered bootstrap overlay. Scanner reads
151
+ * the __glubean_type discriminator; runner consults the registry at
152
+ * runnable resolution time.
153
+ */
154
+ export interface BootstrapAttachment<Needs = void, Params = void> {
155
+ readonly __glubean_type: "bootstrap-attachment";
156
+ readonly testId: string;
157
+ readonly __phantom_needs?: Needs;
158
+ readonly __phantom_params?: Params;
159
+ }
95
160
  /**
96
161
  * Protocol-agnostic case metadata. `schemas` is plugin-defined payload shape,
97
162
  * opaque to core.
@@ -116,6 +181,39 @@ export interface CaseMeta<PayloadSchemas = unknown, Meta = unknown> {
116
181
  schemas?: PayloadSchemas;
117
182
  /** Plugin-defined free-form metadata. Opaque to core. */
118
183
  meta?: Meta;
184
+ /**
185
+ * World-state precondition (contract-attachment-model.md §0.9). Projected
186
+ * as part of the contract because it changes what `expect` means.
187
+ * Adapter-independent — threaded verbatim from `BaseCaseSpec.given`.
188
+ */
189
+ given?: string;
190
+ /**
191
+ * Runnability metadata (contract-attachment-model.md §7.2). Not contract
192
+ * semantic; drives runnable inventory (e.g. `requireAttachment` blocks
193
+ * raw execution). Threaded verbatim from `BaseCaseSpec.runnability`.
194
+ */
195
+ runnability?: {
196
+ requireAttachment?: boolean;
197
+ };
198
+ /**
199
+ * v10 attachment-model — the case's logical-input (`needs`) schema in
200
+ * JSON-safe form. Populated by adapter.normalize() when the case's
201
+ * `needs` schema can be projected (`schemaToJsonSchema` returns
202
+ * something). Absent when the case has no `needs` OR when the schema
203
+ * shape isn't projectable (custom `safeParse`-only validator).
204
+ *
205
+ * To decide whether `rawBypass` is available, consumers should check
206
+ * `hasNeeds` below — it is true whenever the case declared `needs`
207
+ * regardless of whether the schema survives projection.
208
+ */
209
+ needsSchema?: unknown;
210
+ /**
211
+ * True iff the case declares `needs`. Independent from `needsSchema`
212
+ * (which may be undefined even when `hasNeeds` is true, e.g. opaque
213
+ * `safeParse`-only schemas). Inventory uses this to decide whether
214
+ * the `rawBypass` execution path should appear on an overlay.
215
+ */
216
+ hasNeeds?: boolean;
119
217
  }
120
218
  /**
121
219
  * Runtime contract projection — adapter.project() output.
@@ -176,8 +274,45 @@ export interface ContractProtocolAdapter<Spec = unknown, RuntimeSchemas = unknow
176
274
  * Execute a single case. Called by the core dispatcher for each spec case.
177
275
  * Adapter does the full case lifecycle: setup → request/invoke → expect →
178
276
  * verify → teardown.
277
+ *
278
+ * **Legacy path** — uses case-local `setup` / `teardown` fields.
279
+ * Replaced by `executeCase` in v10 attachment model (setup/teardown are
280
+ * removed from contract case surface; state is provided via bootstrap
281
+ * overlay or explicit input). Kept for backward compat during migration;
282
+ * removed in Spike 2 Phase 2c.
179
283
  */
180
284
  execute: (ctx: TestContext, caseSpec: unknown, contractSpec: Spec) => Promise<void>;
285
+ /**
286
+ * Execute a single case in **standalone mode** with an already-resolved
287
+ * logical input.
288
+ *
289
+ * Scope note: this method is **standalone-only**. Flow dispatch continues
290
+ * to use `executeCaseInFlow` (below). The two paths coexist because flow
291
+ * never invokes bootstrap (attachment model §14.0 non-negotiable invariant)
292
+ * — if executeCase took `mode: "flow"`, it would imply flow could route
293
+ * through here, which contradicts the invariant.
294
+ *
295
+ * v10 attachment model entry point. Core dispatcher calls this after:
296
+ * - resolving bootstrap overlay (if registered) to produce `resolvedInput`
297
+ * - OR receiving explicit `--input-json` / `input` from runner
298
+ * - validating against the case's `needs` schema
299
+ *
300
+ * Adapter responsibilities:
301
+ * 1. Receive already-validated `resolvedInput` (no re-validation needed)
302
+ * 2. Call function-valued action fields (body / headers / etc.) with the input
303
+ * 3. Execute request / expect / verify
304
+ * 4. No setup / teardown — those are gone in v10
305
+ *
306
+ * @see contract-attachment-model.md v1.3 §10.1
307
+ * @see single-case-execution-api.md v1 §5
308
+ */
309
+ executeCase?: (options: {
310
+ ctx: TestContext;
311
+ contract: ProtocolContract<Spec, SafeSchemas, SafeMeta>;
312
+ caseKey: string;
313
+ /** Logical input already validated against `needs`. `void` when case has no needs. */
314
+ resolvedInput: unknown;
315
+ }) => Promise<void>;
181
316
  /**
182
317
  * Project the spec to a Runtime projection (may contain live schemas).
183
318
  *
@@ -258,16 +393,23 @@ export interface ContractProtocolAdapter<Spec = unknown, RuntimeSchemas = unknow
258
393
  * Optional: execute a single case as a flow step.
259
394
  *
260
395
  * Core has already:
261
- * 1. Computed `resolvedInputs` via `step.bindings.in(state)` (may be partial)
396
+ * 1. Computed `resolvedInputs` via `step.bindings.in(state)`
262
397
  * 2. Prepared current flow state
263
- * 3. Passed the live contract instance (access merged scoped-factory state
398
+ * 3. **v10 (for migrated protocols)**: validated `resolvedInputs` against
399
+ * the case's `needs` schema via `runFlow` → `validateNeedsOutput`, so
400
+ * the adapter receives already-validated logical input.
401
+ * 4. Passed the live contract instance (access merged scoped-factory state
264
402
  * via `contract._spec`)
265
403
  *
266
- * Adapter responsibilities:
267
- * 1. Deep-merge `resolvedInputs` into the case's static input fields
268
- * 2. Run case setup / request / expect / verify / case teardown
269
- * (Rule 1: case teardown is step-local finally — see contract-flow §7.3)
270
- * 3. Return adapter-specific CaseOutput shape (HTTP: { status, headers, body })
404
+ * Adapter responsibility (post-Spike-4; uniform across HTTP / gRPC /
405
+ * GraphQL): treat `resolvedInputs` as the case's **logical input**
406
+ * matching `needs`. Call function-valued action fields (HTTP:
407
+ * `body`/`params`/`query`/`headers`; gRPC: `request`/`metadata`;
408
+ * GraphQL: `variables`/`headers`) with it. The contract case has no
409
+ * lifecycle in v10 — setup-style work belongs to a
410
+ * `contract.bootstrap()` overlay, NOT to the case itself. Return an
411
+ * adapter-specific CaseOutput (HTTP: `{ status, headers, body }`;
412
+ * gRPC: `GrpcCaseResult`; GraphQL: `GraphqlCaseResult`).
271
413
  *
272
414
  * Not implemented = this protocol cannot be referenced in a flow.
273
415
  */
@@ -278,11 +420,21 @@ export interface ContractProtocolAdapter<Spec = unknown, RuntimeSchemas = unknow
278
420
  resolvedInputs: unknown;
279
421
  }) => Promise<unknown>;
280
422
  /**
281
- * Optional: validate that a case can be referenced in a flow. Called by
282
- * ProtocolContract.case(key). HTTP's implementation rejects cases with
283
- * function-valued input fields (body/params/query/headers) because those
284
- * depend on case-local setup state unavailable in flow mode. See
285
- * contract-flow v9 §5.1.1 for rationale.
423
+ * Optional: validate that a case can be referenced in a flow.
424
+ *
425
+ * v10 call-site: `FlowBuilder.step(ref, bindings)` fires at
426
+ * step-declaration time, NOT at `ProtocolContract.case(key)` time.
427
+ * Case-ref creation is pure in v10 (attachment model §4.1);
428
+ * flow-safety is a step-declaration concern.
429
+ *
430
+ * Post-Spike-4 reality: NO built-in adapter implements this hook
431
+ * anymore. The v9 rule "function-valued action fields can't resolve
432
+ * in flow" is semantically reversed in v10 — function fields ARE the
433
+ * canonical flow input channel, receiving `resolvedInputs` via
434
+ * logical input. The hook is kept on the interface for protocol-
435
+ * adapter authors who have legitimate per-protocol flow constraints
436
+ * (e.g. streaming-only methods rejected from non-streaming flows in
437
+ * a future plugin).
286
438
  *
287
439
  * Throws on invalid case; returns undefined on success.
288
440
  */
@@ -306,7 +458,7 @@ export interface PayloadDescriptor {
306
458
  * @template PayloadSchemas Runtime (live) payload shape.
307
459
  * @template Meta Runtime free-form meta.
308
460
  */
309
- export interface ProtocolContract<Spec = unknown, PayloadSchemas = unknown, Meta = unknown> extends Array<Test> {
461
+ export interface ProtocolContract<Spec = unknown, PayloadSchemas = unknown, Meta = unknown, Cases extends Record<string, unknown> = Record<string, unknown>> extends Array<Test> {
310
462
  /**
311
463
  * Runtime projection with `id` injected by core. Consumers duck-type this.
312
464
  */
@@ -343,7 +495,7 @@ export interface ProtocolContract<Spec = unknown, PayloadSchemas = unknown, Meta
343
495
  * headers as functions). Function fields reference case-local setup state
344
496
  * which is not available in flow mode. See contract-flow §5.1.1.
345
497
  */
346
- case(key: string): ContractCaseRef<InferInputs<PayloadSchemas>, InferOutput<PayloadSchemas>>;
498
+ case<K extends keyof Cases & string>(key: K): ContractCaseRef<InferCaseInput<Cases[K]>, InferOutput<PayloadSchemas>>;
347
499
  }
348
500
  /**
349
501
  * Adapter-defined helper: extract the "case inputs" shape from PayloadSchemas.
@@ -357,6 +509,23 @@ export interface ProtocolContract<Spec = unknown, PayloadSchemas = unknown, Meta
357
509
  * direct typing of their own ContractCaseRef.
358
510
  */
359
511
  export type InferInputs<_PayloadSchemas> = unknown;
512
+ /**
513
+ * Extract per-case logical input type from a case spec's `needs` field.
514
+ *
515
+ * Works for any case spec that extends `BaseCaseSpec<Needs>` and declares
516
+ * `needs: SchemaLike<T>`. Returns `void` for cases without `needs`.
517
+ *
518
+ * Used by `ProtocolContract.case<K>()` to infer `ContractCaseRef<Needs, ...>`
519
+ * per-case, so `contract.bootstrap(ref, { run: ... })` can type-check the
520
+ * run return against the specific case's Needs.
521
+ *
522
+ * @see contract-attachment-model.md v1.3 §4.1 / §5.3
523
+ * @see Spike 0 Finding 2 — requires `any` (not `unknown`) in don't-care slot
524
+ * for contravariant positions.
525
+ */
526
+ export type InferCaseInput<C> = C extends {
527
+ needs?: SchemaLike<infer N>;
528
+ } ? unknown extends N ? void : N : void;
360
529
  /** Adapter-defined helper: extract the "case output" shape from PayloadSchemas. */
361
530
  export type InferOutput<_PayloadSchemas> = unknown;
362
531
  /**
@@ -517,12 +686,34 @@ export interface FlowBuilder<State = unknown> {
517
686
  * lens functions (select / repack only; no I/O, no method calls, no
518
687
  * branching). Lens purity is enforced at Proxy dry-run time during
519
688
  * projection extraction.
689
+ *
690
+ * Single signature with rest-parameter conditional tuple (Spike 0 Finding 3).
691
+ * Two-overload form (historically tried) has a subtle hole: overload 1
692
+ * (void-input, no `in`) excess-property-fails when `in` is passed → TS
693
+ * falls through to overload 2, which accepts because `() => X` is
694
+ * bivariant-assignable to `() => void`. Conditional tuple is a single
695
+ * signature so TS doesn't get a second chance:
696
+ * - void-input case → `bindings` optional; `in` not present in the
697
+ * allowed shape
698
+ * - typed-input case → `bindings.in` REQUIRED
699
+ *
700
+ * In v10, `in` returns LOGICAL case input (matches the case's `needs`),
701
+ * NOT an adapter patch. HTTP adapter's `executeCaseInFlow` calls
702
+ * function-valued body/headers/params/query with this logical input
703
+ * (same mechanism as standalone `executeStandaloneCase`).
520
704
  */
521
- step<CaseInputs, CaseOutput, NewState = State>(ref: ContractCaseRef<CaseInputs, CaseOutput>, bindings?: {
522
- in?: (state: State) => CaseInputs;
523
- out?: (state: State, response: CaseOutput) => NewState;
524
- name?: string;
525
- }): FlowBuilder<NewState>;
705
+ step<CaseInputs, CaseOutput, NewState = State>(ref: ContractCaseRef<CaseInputs, CaseOutput>, ...args: [CaseInputs] extends [void] ? [
706
+ bindings?: {
707
+ out?: (state: State, response: CaseOutput) => NewState;
708
+ name?: string;
709
+ }
710
+ ] : [
711
+ bindings: {
712
+ in: (state: State) => CaseInputs;
713
+ out?: (state: State, response: CaseOutput) => NewState;
714
+ name?: string;
715
+ }
716
+ ]): FlowBuilder<NewState>;
526
717
  /**
527
718
  * Add a pure synchronous data-transform step. Accepts any synchronous TS
528
719
  * expression (template literals, method calls, .map()). Projection records