@glubean/sdk 0.4.0 → 0.5.1

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.
@@ -28,6 +28,17 @@
28
28
  * don't need the factory; the runtime invariants are unaffected either
29
29
  * way (this is a typing improvement only).
30
30
  *
31
+ * **Typed flow `res.body`**: a `.step`/`.poll` lens types `res.body` from a case's
32
+ * `expect.schema` (core's `ApplyCaseOutput`/`ExtractCaseResponse`) when the case is
33
+ * written as an INLINE literal in the spec (`api(id, { cases: { ok: { ...,
34
+ * expect: { schema } } } })`) — the literal keeps the `schema` key visible, and
35
+ * ONLY a real schema types it (a docs-only `expect.example` does not).
36
+ * `defineHttpCase(...)` returns the nominal `ContractCase<T, Needs>` (which erases
37
+ * schema presence for drift-locking), so a case routed through it leaves flow
38
+ * `res.body` as `unknown` — that's the trade for its compile-time case-shape +
39
+ * needs-drift checks. Use inline cases for typed flow lenses; use `defineHttpCase`
40
+ * when you want the action-field drift guard.
41
+ *
31
42
  * @example
32
43
  * ```ts
33
44
  * import { defineHttpCase } from "@glubean/sdk";
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/contract-http/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAkHH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAM,UAAU,cAAc,CAC5B,CAAyB;IAEzB,OAAO,CAAC,CAAC;AACX,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/contract-http/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAmHH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,MAAM,UAAU,cAAc,CAC5B,CAAyB;IAEzB,OAAO,CAAC,CAAC;AACX,CAAC"}
@@ -20,6 +20,7 @@
20
20
  import type { SchemaLike, Test, TestContext } from "./types.js";
21
21
  import type { KnownArtifacts, KnownArtifactParts, KnownArtifactOptions } from "./index.js";
22
22
  import type { RuntimeBranchStep, ExtractedBranchStep, ExtractedPredicate, JsonScalar, BranchPredicate, PredicateScope } from "./contract-flow-condition.js";
23
+ import type { RuntimePollStep, ExtractedPollStep } from "./contract-flow-poll.js";
23
24
  /**
24
25
  * Case lifecycle.
25
26
  *
@@ -474,6 +475,15 @@ export interface ContractProtocolAdapter<Spec = unknown, RuntimeSchemas = unknow
474
475
  * (validate against the single primary outcome).
475
476
  */
476
477
  accept?: readonly unknown[];
478
+ /**
479
+ * Optional abort signal — set only by `flow().poll()` (a poll caps each
480
+ * attempt with a budget and aborts the in-flight request when it elapses).
481
+ * Adapters that honor it (HTTP → `fetch({ signal })`) truly cancel the
482
+ * request; adapters that ignore it are still bounded by the core-side budget
483
+ * race. Absent on every non-poll call → existing step/condition behavior
484
+ * is unchanged.
485
+ */
486
+ signal?: AbortSignal;
477
487
  }) => Promise<unknown>;
478
488
  /**
479
489
  * Optional: validate that a case can be referenced in a flow.
@@ -551,7 +561,7 @@ export interface ProtocolContract<Spec = unknown, PayloadSchemas = unknown, Meta
551
561
  * headers as functions). Function fields reference case-local setup state
552
562
  * which is not available in flow mode. See contract-flow §5.1.1.
553
563
  */
554
- case<K extends keyof Cases & string>(key: K): ContractCaseRef<InferCaseInput<Cases[K]>, InferOutput<PayloadSchemas>, InferAcceptKey<PayloadSchemas>, InferRawOutcome<PayloadSchemas, InferOutput<PayloadSchemas>>>;
564
+ case<K extends keyof Cases & string>(key: K): ContractCaseRef<InferCaseInput<Cases[K]>, ApplyCaseOutput<PayloadSchemas, Cases[K]>, InferAcceptKey<PayloadSchemas>, InferRawOutcome<PayloadSchemas, InferOutput<PayloadSchemas>>>;
555
565
  }
556
566
  /**
557
567
  * Adapter-defined helper: extract the "case inputs" shape from PayloadSchemas.
@@ -584,6 +594,33 @@ export type InferCaseInput<C> = C extends {
584
594
  } ? unknown extends N ? void : N : void;
585
595
  /** Adapter-defined helper: extract the "case output" shape from PayloadSchemas. */
586
596
  export type InferOutput<_PayloadSchemas> = unknown;
597
+ /**
598
+ * Per-case flow `CaseOutput` (the type of `res` in a `.step`/`.poll` `out`/`until`
599
+ * lens, sans `accept`). Adapters that carry a `__caseOutputShape` marker on their
600
+ * `PayloadSchemas` (HTTP = `HttpFlowCaseOutput`) get that shape with its `body`
601
+ * replaced by THIS case's validated response (`ExtractCaseResponse`); adapters
602
+ * without the marker fall back to `InferOutput`. Computed INSIDE the base `.case()`
603
+ * (not a subtype override) so HTTP contracts stay assignable to the base
604
+ * `ProtocolContract` while still typing `res.body` per case.
605
+ */
606
+ export type ApplyCaseOutput<PayloadSchemas, Case> = PayloadSchemas extends {
607
+ readonly __caseOutputShape?: infer Shape;
608
+ } ? [unknown] extends [Shape] ? InferOutput<PayloadSchemas> : Shape extends {
609
+ body: unknown;
610
+ } ? Omit<Shape, "body"> & {
611
+ body: ExtractCaseResponse<Case>;
612
+ } : InferOutput<PayloadSchemas> : InferOutput<PayloadSchemas>;
613
+ /**
614
+ * A case's validated response body — ONLY from a PRESENT `expect.schema` (matched
615
+ * as required, not `schema?:`). A docs-only `expect.example`, an explicit response
616
+ * generic with no schema value, or any schema-less case stays `unknown`, so a flow
617
+ * lens never types a body the runtime didn't validate.
618
+ */
619
+ export type ExtractCaseResponse<Case> = Case extends {
620
+ expect: {
621
+ schema: SchemaLike<infer S>;
622
+ };
623
+ } ? [unknown] extends [S] ? unknown : S : unknown;
587
624
  /**
588
625
  * Adapter-defined helper: the element type of a step's `accept` list (the
589
626
  * "accepted alternate outcome key"). HTTP = `number` (status); other protocols
@@ -673,7 +710,7 @@ export interface FieldMapping {
673
710
  * kind "contract-call" = a ContractCaseRef with bindings (Rule 1 teardown applies).
674
711
  * kind "compute" = a pure sync data-transform function (no adapter, no teardown).
675
712
  */
676
- export type RuntimeFlowStep = RuntimeContractCallStep | RuntimeComputeStep | RuntimeBranchStep;
713
+ export type RuntimeFlowStep = RuntimeContractCallStep | RuntimeComputeStep | RuntimeBranchStep | RuntimePollStep;
677
714
  export interface RuntimeContractCallStep {
678
715
  kind: "contract-call";
679
716
  name?: string;
@@ -728,7 +765,7 @@ export interface RuntimeFlowProjection<State = unknown> {
728
765
  /**
729
766
  * Extracted flow step — discriminated union, JSON-safe.
730
767
  */
731
- export type ExtractedFlowStep = ExtractedContractCallStep | ExtractedComputeStep | ExtractedBranchStep;
768
+ export type ExtractedFlowStep = ExtractedContractCallStep | ExtractedComputeStep | ExtractedBranchStep | ExtractedPollStep;
732
769
  export interface ExtractedContractCallStep {
733
770
  kind: "contract-call";
734
771
  name?: string;
@@ -774,6 +811,39 @@ export interface ExtractedFlowProjection {
774
811
  setupDynamic?: true;
775
812
  steps: ExtractedFlowStep[];
776
813
  }
814
+ /**
815
+ * Base options shared by `poll` / `pollFn` / `pollAsync`. `Res` switches on
816
+ * `accept` exactly like `step` (no accept → CaseOutput; accept → RawOutcome).
817
+ * `accept?: Accept` is what drives the `Accept` inference. Bound semantics +
818
+ * the build-time rules live in `validatePollBounds`. (Spike P.)
819
+ */
820
+ export interface PollOptsBase<State, Res, NewState, Accept extends readonly unknown[]> {
821
+ /** The exit (satisfying) response written into state. */
822
+ out?: (state: State, response: Res) => NewState;
823
+ /** Accepted alternate outcome keys (HTTP: status numbers) — drives `Accept` inference. */
824
+ accept?: Accept;
825
+ name?: string;
826
+ /** Total wall-clock bound (ms). */
827
+ timeout?: number;
828
+ /** Max attempts (incl. the first). */
829
+ maxAttempts?: number;
830
+ /** Per-attempt budget (ms) — required when `timeout` is absent. */
831
+ perAttemptTimeout?: number;
832
+ /** Interval between attempts (ms, default 1000). */
833
+ every?: number;
834
+ /** Backoff multiplier applied to `every` after each retry (default 1, capped). */
835
+ backoff?: number;
836
+ }
837
+ /**
838
+ * Poll argument tuple. Mirrors `step`'s conditional tuple: `in` is REQUIRED for
839
+ * a needs-input case and FORBIDDEN for a void-input case. `Exit` is each tier's
840
+ * `{ until, message }` fragment (L2 declarative vs opaque). (Spike P.)
841
+ */
842
+ export type PollArgs<State, CaseInputs, Res, NewState, Accept extends readonly unknown[], Exit> = [
843
+ CaseInputs
844
+ ] extends [void] ? [opts: PollOptsBase<State, Res, NewState, Accept> & Exit] : [opts: PollOptsBase<State, Res, NewState, Accept> & Exit & {
845
+ in: (state: State) => CaseInputs;
846
+ }];
777
847
  /**
778
848
  * Builder for `contract.flow(id)`. State chain threads through `.step()` /
779
849
  * `.compute()` via TypeScript generics.
@@ -877,6 +947,21 @@ export interface FlowBuilder<State = unknown> {
877
947
  when: (w: PredicateScope<State>) => BranchPredicate<State>;
878
948
  then: (b: FlowFragmentBuilder<State>) => FlowFragmentBuilder<NoInfer<T>>;
879
949
  }>, deflt: (b: FlowFragmentBuilder<State>) => FlowFragmentBuilder<T>): FlowBuilder<T>;
950
+ /** L2 — declarative exit predicate over the response (precisely projectable). poll-on-status needs `accept`. */
951
+ poll<CaseInputs, CaseOutput, AcceptKey, RawOutcome, Accept extends readonly AcceptKey[] = never, NewState = State>(ref: ContractCaseRef<CaseInputs, CaseOutput, AcceptKey, RawOutcome>, ...args: PollArgs<State, CaseInputs, [Accept] extends [never] ? CaseOutput : RawOutcome, NewState, Accept, {
952
+ until: (w: PredicateScope<[Accept] extends [never] ? CaseOutput : RawOutcome>) => BranchPredicate<[Accept] extends [never] ? CaseOutput : RawOutcome>;
953
+ message?: string;
954
+ }>): FlowBuilder<NewState>;
955
+ /** L1 — opaque sync exit predicate (gets ctx, res, state). `message` required (marked gate). */
956
+ pollFn<CaseInputs, CaseOutput, AcceptKey, RawOutcome, Accept extends readonly AcceptKey[] = never, NewState = State>(ref: ContractCaseRef<CaseInputs, CaseOutput, AcceptKey, RawOutcome>, ...args: PollArgs<State, CaseInputs, [Accept] extends [never] ? CaseOutput : RawOutcome, NewState, Accept, {
957
+ until: (ctx: TestContext, res: [Accept] extends [never] ? CaseOutput : RawOutcome, state: State) => boolean;
958
+ message: string;
959
+ }>): FlowBuilder<NewState>;
960
+ /** L0 — opaque async exit predicate (may do contract-external I/O). `message` required (marked gate). */
961
+ pollAsync<CaseInputs, CaseOutput, AcceptKey, RawOutcome, Accept extends readonly AcceptKey[] = never, NewState = State>(ref: ContractCaseRef<CaseInputs, CaseOutput, AcceptKey, RawOutcome>, ...args: PollArgs<State, CaseInputs, [Accept] extends [never] ? CaseOutput : RawOutcome, NewState, Accept, {
962
+ until: (ctx: TestContext, res: [Accept] extends [never] ? CaseOutput : RawOutcome, state: State) => Promise<boolean>;
963
+ message: string;
964
+ }>): FlowBuilder<NewState>;
880
965
  build(): FlowContract<State>;
881
966
  }
882
967
  /**
@@ -942,6 +1027,18 @@ export interface FlowFragmentBuilder<State = unknown> {
942
1027
  when: (w: PredicateScope<State>) => BranchPredicate<State>;
943
1028
  then: (b: FlowFragmentBuilder<State>) => FlowFragmentBuilder<NoInfer<T>>;
944
1029
  }>, deflt: (b: FlowFragmentBuilder<State>) => FlowFragmentBuilder<T>): FlowFragmentBuilder<T>;
1030
+ poll<CaseInputs, CaseOutput, AcceptKey, RawOutcome, Accept extends readonly AcceptKey[] = never, NewState = State>(ref: ContractCaseRef<CaseInputs, CaseOutput, AcceptKey, RawOutcome>, ...args: PollArgs<State, CaseInputs, [Accept] extends [never] ? CaseOutput : RawOutcome, NewState, Accept, {
1031
+ until: (w: PredicateScope<[Accept] extends [never] ? CaseOutput : RawOutcome>) => BranchPredicate<[Accept] extends [never] ? CaseOutput : RawOutcome>;
1032
+ message?: string;
1033
+ }>): FlowFragmentBuilder<NewState>;
1034
+ pollFn<CaseInputs, CaseOutput, AcceptKey, RawOutcome, Accept extends readonly AcceptKey[] = never, NewState = State>(ref: ContractCaseRef<CaseInputs, CaseOutput, AcceptKey, RawOutcome>, ...args: PollArgs<State, CaseInputs, [Accept] extends [never] ? CaseOutput : RawOutcome, NewState, Accept, {
1035
+ until: (ctx: TestContext, res: [Accept] extends [never] ? CaseOutput : RawOutcome, state: State) => boolean;
1036
+ message: string;
1037
+ }>): FlowFragmentBuilder<NewState>;
1038
+ pollAsync<CaseInputs, CaseOutput, AcceptKey, RawOutcome, Accept extends readonly AcceptKey[] = never, NewState = State>(ref: ContractCaseRef<CaseInputs, CaseOutput, AcceptKey, RawOutcome>, ...args: PollArgs<State, CaseInputs, [Accept] extends [never] ? CaseOutput : RawOutcome, NewState, Accept, {
1039
+ until: (ctx: TestContext, res: [Accept] extends [never] ? CaseOutput : RawOutcome, state: State) => Promise<boolean>;
1040
+ message: string;
1041
+ }>): FlowFragmentBuilder<NewState>;
945
1042
  }
946
1043
  /** Module-private phantom brand making FlowFragmentBuilder invariant in State. */
947
1044
  declare const FRAGMENT_STATE: unique symbol;
@@ -1025,6 +1122,23 @@ export type FlowRegistryStep = {
1025
1122
  steps: FlowRegistryStep[];
1026
1123
  }>;
1027
1124
  default: FlowRegistryStep[];
1125
+ } | {
1126
+ kind: "poll";
1127
+ name?: string;
1128
+ contractId?: string;
1129
+ caseKey?: string;
1130
+ protocol?: string;
1131
+ target?: string;
1132
+ inputs?: FieldMapping[];
1133
+ outputs?: FieldMapping[];
1134
+ accept?: ReadonlyArray<string | number>;
1135
+ until?: ExtractedPredicate;
1136
+ message?: string;
1137
+ every?: number;
1138
+ backoff?: number;
1139
+ timeoutMs?: number;
1140
+ perAttemptTimeoutMs?: number;
1141
+ maxAttempts?: number;
1028
1142
  };
1029
1143
  export interface FlowRegistryMeta {
1030
1144
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"contract-types.d.ts","sourceRoot":"","sources":["../src/contract-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract-types.d.ts","sourceRoot":"","sources":["../src/contract-types.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@
8
8
  * State flows between steps via the return value of each step function.
9
9
  * `.build()` is optional — the builder auto-registers via microtask.
10
10
  */
11
- import type { ExtensionFn, StepJsonScalar, StepMeta, StepNoExtraKeys, Test, TestConditionSpec, TestContext, TestFragmentBuilder, TestMeta } from "../types.js";
11
+ import type { ExtensionFn, StepJsonScalar, StepMeta, StepNoExtraKeys, Test, TestConditionSpec, TestContext, TestFragmentBuilder, TestMeta, TestPollOpts } from "../types.js";
12
12
  /**
13
13
  * Builder class for creating tests with a fluent API.
14
14
  *
@@ -242,6 +242,8 @@ export declare class TestBuilder<S = unknown, Ctx extends TestContext = TestCont
242
242
  when: (ctx: Ctx, state: S) => boolean | Promise<boolean>;
243
243
  then: (b: TestFragmentBuilder<S, Ctx>) => TestFragmentBuilder<NoInfer<T>, Ctx>;
244
244
  }>, deflt: (b: TestFragmentBuilder<S, Ctx>) => TestFragmentBuilder<T, Ctx>): TestBuilder<T, Ctx>;
245
+ /** Bounded poll-until — repeat `fn` until `opts.until` holds (or a bound exhausts). */
246
+ poll<Res, NewS = S>(name: string, fn: (ctx: Ctx, state: S) => Promise<Res>, opts: TestPollOpts<S, Ctx, Res, NewS>): TestBuilder<NewS, Ctx>;
245
247
  /**
246
248
  * Finalize and register the test in the global registry.
247
249
  * Called automatically via microtask if not explicitly invoked via build().
@@ -1 +1 @@
1
- {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/test/builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/test/builder.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { isTestBranchStep } from "../types.js";
2
2
  import { registerTest } from "../internal.js";
3
3
  import { toArray } from "../data.js";
4
4
  import { assertSwitchCaseValues } from "../contract-flow-condition.js";
5
+ import { validatePollBounds } from "../contract-flow-poll.js";
5
6
  /**
6
7
  * Flatten steps for registry metadata: a branch contributes its first-class
7
8
  * LEAF steps (recursively, across cases + default) — NOT a synthetic branch
@@ -86,6 +87,9 @@ function makeTestSink(steps) {
86
87
  switchCond(cases, deflt) {
87
88
  return extend(buildTestSwitchCondStep(cases, deflt));
88
89
  },
90
+ poll(name, fn, opts) {
91
+ return extend(buildTestPollStep(name, fn, opts));
92
+ },
89
93
  };
90
94
  Object.defineProperty(sink, FRAGMENT_STEPS, {
91
95
  value: Object.freeze(steps),
@@ -129,6 +133,48 @@ function buildTestSwitchOnStep(lens, cases, deflt) {
129
133
  default: collectTestFragment(deflt),
130
134
  });
131
135
  }
136
+ /**
137
+ * A poll step is a StepDefinition carrying `poll`; a poll-aware harness
138
+ * dispatches on it and never calls `fn`. If `fn` IS called the runner is too old
139
+ * (SDK/runner version skew) — surface an actionable upgrade message.
140
+ */
141
+ function makePollStepDef(name, poll) {
142
+ return {
143
+ meta: { name },
144
+ fn: (async () => {
145
+ throw new Error(`This test uses test().poll, which requires a @glubean/runner / Glubean CLI new ` +
146
+ `enough to execute poll steps. Your runner is older than the @glubean/sdk that built ` +
147
+ `this test — upgrade @glubean/runner and the CLI to match @glubean/sdk.`);
148
+ }),
149
+ poll,
150
+ };
151
+ }
152
+ /** test().poll → a bounded poll-until step (validates bounds at construction). */
153
+ function buildTestPollStep(name, fn, opts) {
154
+ if (typeof fn !== "function") {
155
+ throw new Error("test().poll: the attempt `fn` must be a function");
156
+ }
157
+ if (!opts || typeof opts.until !== "function") {
158
+ throw new Error("test().poll: `opts.until` must be a function");
159
+ }
160
+ validatePollBounds({
161
+ timeout: opts.timeout,
162
+ maxAttempts: opts.maxAttempts,
163
+ perAttemptTimeout: opts.perAttemptTimeout,
164
+ every: opts.every,
165
+ backoff: opts.backoff,
166
+ }, name);
167
+ return makePollStepDef(name, {
168
+ fn,
169
+ until: opts.until,
170
+ ...(opts.out ? { out: opts.out } : {}),
171
+ ...(opts.every !== undefined ? { every: opts.every } : {}),
172
+ ...(opts.backoff !== undefined ? { backoff: opts.backoff } : {}),
173
+ ...(opts.timeout !== undefined ? { timeout: opts.timeout } : {}),
174
+ ...(opts.perAttemptTimeout !== undefined ? { perAttemptTimeout: opts.perAttemptTimeout } : {}),
175
+ ...(opts.maxAttempts !== undefined ? { maxAttempts: opts.maxAttempts } : {}),
176
+ });
177
+ }
132
178
  /**
133
179
  * Builder class for creating tests with a fluent API.
134
180
  *
@@ -349,6 +395,10 @@ export class TestBuilder {
349
395
  this._steps.push(buildTestSwitchCondStep(cases, deflt));
350
396
  return this;
351
397
  }
398
+ poll(name, fn, opts) {
399
+ this._steps.push(buildTestPollStep(name, fn, opts));
400
+ return this;
401
+ }
352
402
  /**
353
403
  * Finalize and register the test in the global registry.
354
404
  * Called automatically via microtask if not explicitly invoked via build().
@@ -1 +1 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/test/builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/test/builder.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -2087,21 +2087,50 @@ export interface TestBranchData<S = unknown> {
2087
2087
  }>;
2088
2088
  default: StepDefinition<S>[];
2089
2089
  }
2090
+ /**
2091
+ * Runtime poll data attached to a `StepDefinition` via its optional `poll` field
2092
+ * (`test().poll`). The harness repeats `fn` until `until` holds (or a bound is
2093
+ * exhausted → the step fails), bounded by timeout / maxAttempts / per-attempt
2094
+ * budget. test-side `fn`/`until` are arbitrary functions (may be async / impure
2095
+ * / read ctx); there is no projection, so no purity gate. Unlike the flow side
2096
+ * the abort is best-effort (arbitrary user code can't be force-cancelled), so
2097
+ * each attempt is RACED against its budget — the step won't wait past it.
2098
+ */
2099
+ export interface TestPollData<S = unknown> {
2100
+ /** The repeated attempt — arbitrary async work returning a probe response. */
2101
+ fn: (ctx: TestContext, state: S) => Promise<unknown>;
2102
+ /** Exit predicate (first true ends the poll). Gets ctx, the response, and state. */
2103
+ until: (ctx: TestContext, res: unknown, state: S) => boolean | Promise<boolean>;
2104
+ /** Capture the satisfying response into state. */
2105
+ out?: (state: S, res: unknown) => unknown;
2106
+ every?: number;
2107
+ backoff?: number;
2108
+ timeout?: number;
2109
+ perAttemptTimeout?: number;
2110
+ maxAttempts?: number;
2111
+ }
2090
2112
  /**
2091
2113
  * Internal step definition (stored in builder). A normal step has a callable
2092
- * `fn`; a branch step (condition/switch) additionally carries `branch` and the
2093
- * harness dispatches on it before ever calling `fn` (which is a throwing stub).
2114
+ * `fn`; a branch step (condition/switch) additionally carries `branch` and a
2115
+ * poll step carries `poll` for both, the harness dispatches on the extra
2116
+ * field before ever calling `fn` (which is a throwing stub).
2094
2117
  */
2095
2118
  export interface StepDefinition<S = unknown> {
2096
2119
  meta: StepMeta;
2097
2120
  fn: StepFunction<S>;
2098
2121
  /** Present iff this is a branch step. */
2099
2122
  branch?: TestBranchData<S>;
2123
+ /** Present iff this is a poll step. */
2124
+ poll?: TestPollData<S>;
2100
2125
  }
2101
2126
  /** Narrow a StepDefinition to a branch step. */
2102
2127
  export declare function isTestBranchStep<S>(step: StepDefinition<S>): step is StepDefinition<S> & {
2103
2128
  branch: TestBranchData<S>;
2104
2129
  };
2130
+ /** Narrow a StepDefinition to a poll step. */
2131
+ export declare function isTestPollStep<S>(step: StepDefinition<S>): step is StepDefinition<S> & {
2132
+ poll: TestPollData<S>;
2133
+ };
2105
2134
  /** No-else branch shape guard (same intent as the flow side): forbids added keys. */
2106
2135
  export type StepNoExtraKeys<R, S> = {
2107
2136
  [K in Exclude<keyof R, keyof S>]: never;
@@ -2112,6 +2141,20 @@ export interface TestConditionSpec<S, Ctx extends TestContext = TestContext> {
2112
2141
  /** Display label shown on the branch decision event. */
2113
2142
  message?: string;
2114
2143
  }
2144
+ /**
2145
+ * `test().poll` options. `Res` is inferred from the attempt `fn`'s return, tying
2146
+ * `until`/`out` to it. Bound semantics mirror the flow side (timeout / maxAttempts
2147
+ * / per-attempt budget); `maxAttempts`-only is rejected at runtime.
2148
+ */
2149
+ export interface TestPollOpts<S, Ctx extends TestContext, Res, NewS> {
2150
+ until: (ctx: Ctx, res: Res, state: S) => boolean | Promise<boolean>;
2151
+ every?: number;
2152
+ backoff?: number;
2153
+ timeout?: number;
2154
+ perAttemptTimeout?: number;
2155
+ maxAttempts?: number;
2156
+ out?: (state: S, res: Res) => NewS;
2157
+ }
2115
2158
  /** Module-private phantom brand making TestFragmentBuilder invariant in State. */
2116
2159
  declare const TEST_FRAGMENT_STATE: unique symbol;
2117
2160
  /**
@@ -2138,6 +2181,8 @@ export interface TestFragmentBuilder<S = unknown, Ctx extends TestContext = Test
2138
2181
  when: (ctx: Ctx, state: S) => boolean | Promise<boolean>;
2139
2182
  then: (b: TestFragmentBuilder<S, Ctx>) => TestFragmentBuilder<NoInfer<T>, Ctx>;
2140
2183
  }>, deflt: (b: TestFragmentBuilder<S, Ctx>) => TestFragmentBuilder<T, Ctx>): TestFragmentBuilder<T, Ctx>;
2184
+ /** Bounded poll-until — repeat `fn` until `opts.until` holds (or a bound exhausts). */
2185
+ poll<Res, NewS = S>(name: string, fn: (ctx: Ctx, state: S) => Promise<Res>, opts: TestPollOpts<S, Ctx, Res, NewS>): TestFragmentBuilder<NewS, Ctx>;
2141
2186
  }
2142
2187
  /**
2143
2188
  * A complete test definition (output of builder).