@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.
- package/dist/contract-core.d.ts +0 -4
- package/dist/contract-core.d.ts.map +1 -1
- package/dist/contract-core.js +305 -55
- package/dist/contract-core.js.map +1 -1
- package/dist/contract-flow-poll.d.ts +157 -0
- package/dist/contract-flow-poll.d.ts.map +1 -0
- package/dist/contract-flow-poll.js +223 -0
- package/dist/contract-flow-poll.js.map +1 -0
- package/dist/contract-http/adapter.d.ts.map +1 -1
- package/dist/contract-http/adapter.js +4 -0
- package/dist/contract-http/adapter.js.map +1 -1
- package/dist/contract-http/types.d.ts +26 -7
- package/dist/contract-http/types.d.ts.map +1 -1
- package/dist/contract-http/types.js +11 -0
- package/dist/contract-http/types.js.map +1 -1
- package/dist/contract-types.d.ts +117 -3
- package/dist/contract-types.d.ts.map +1 -1
- package/dist/test/builder.d.ts +3 -1
- package/dist/test/builder.d.ts.map +1 -1
- package/dist/test/builder.js +50 -0
- package/dist/test/builder.js.map +1 -1
- package/dist/types.d.ts +47 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +4 -0
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module contract-flow-poll
|
|
3
|
+
*
|
|
4
|
+
* Bounded poll-until primitive for `contract.flow()` — runtime + projection.
|
|
5
|
+
*
|
|
6
|
+
* A poll repeats ONE contract case until an exit predicate over the RESPONSE
|
|
7
|
+
* holds, BOUNDED by a total wall-clock deadline and/or a finite per-attempt
|
|
8
|
+
* budget. It is the projectable subset of "loop" (a self-loop on one node), as
|
|
9
|
+
* opposed to the arbitrary loops that stay in `test()`. See the design proposal
|
|
10
|
+
* `internal/40-discovery/proposals/contract-flow-poll.md`.
|
|
11
|
+
*
|
|
12
|
+
* This module owns the poll-specific runtime types, the bounded-retry helpers
|
|
13
|
+
* (quarantined ctx, budget race), the exit-predicate evaluator (three strictness
|
|
14
|
+
* tiers, reusing the condition predicate foundation), the build-time bound
|
|
15
|
+
* validation, and the JSON-safe projection. The execution LOOP lives in
|
|
16
|
+
* `contract-core.ts` (it needs the shared committed-state cell).
|
|
17
|
+
*/
|
|
18
|
+
import type { ContractCaseRef, ProtocolContract, FieldMapping } from "./contract-types.js";
|
|
19
|
+
import type { TestContext } from "./types.js";
|
|
20
|
+
import { type BranchPredicate, type ExtractedPredicate } from "./contract-flow-condition.js";
|
|
21
|
+
/**
|
|
22
|
+
* Runtime representation of a `flow().poll()` step. Carries live callbacks +
|
|
23
|
+
* the live contract ref. Never serialized — `extractPollStep` produces the
|
|
24
|
+
* JSON-safe form.
|
|
25
|
+
*
|
|
26
|
+
* The exit predicate (`until`) is over the RESPONSE (not state): L2 declarative
|
|
27
|
+
* (`BranchPredicate`, projectable) or opaque (L1 sync / L0 async, marked). The
|
|
28
|
+
* opaque form additionally receives `state` so a poll can wait for the response
|
|
29
|
+
* to reflect something already in state (e.g. `res.version >= state.lastSeen`).
|
|
30
|
+
*/
|
|
31
|
+
export interface RuntimePollStep {
|
|
32
|
+
kind: "poll";
|
|
33
|
+
name?: string;
|
|
34
|
+
ref: ContractCaseRef<any, any, any, any>;
|
|
35
|
+
caseKey: string;
|
|
36
|
+
/** Live contract instance (mirrors ref.contract). */
|
|
37
|
+
contract: ProtocolContract<any, any, any>;
|
|
38
|
+
bindings?: {
|
|
39
|
+
in?: (state: any) => any;
|
|
40
|
+
out?: (state: any, response: any) => any;
|
|
41
|
+
accept?: readonly unknown[];
|
|
42
|
+
};
|
|
43
|
+
/** Exit predicate — L2 declarative (over the response) or opaque (gets ctx, res, state). */
|
|
44
|
+
until: BranchPredicate<any> | {
|
|
45
|
+
kind: "opaque";
|
|
46
|
+
sync: boolean;
|
|
47
|
+
fn: (ctx: TestContext, res: any, state: any) => boolean | Promise<boolean>;
|
|
48
|
+
};
|
|
49
|
+
/** Author-supplied label (opaque tiers require it; L2 can auto-generate). */
|
|
50
|
+
message?: string;
|
|
51
|
+
/** Interval between attempts (ms). */
|
|
52
|
+
every: number;
|
|
53
|
+
/** Multiplier applied to `every` after each retry (1 = fixed). Capped at BACKOFF_CAP_MS. */
|
|
54
|
+
backoff: number;
|
|
55
|
+
/** Total wall-clock bound (ms). */
|
|
56
|
+
timeoutMs?: number;
|
|
57
|
+
/** Per-attempt budget (ms) — required when `timeoutMs` is absent. */
|
|
58
|
+
perAttemptTimeoutMs?: number;
|
|
59
|
+
/** Max attempts (>= 1). */
|
|
60
|
+
maxAttempts?: number;
|
|
61
|
+
}
|
|
62
|
+
/** Backoff cap — mirrors the test() step retry-backoff ceiling. */
|
|
63
|
+
export declare const BACKOFF_CAP_MS = 30000;
|
|
64
|
+
/** Default interval between attempts when `every` is omitted. */
|
|
65
|
+
export declare const DEFAULT_EVERY_MS = 1000;
|
|
66
|
+
export declare class PollExhaustedError extends Error {
|
|
67
|
+
readonly attempts: number;
|
|
68
|
+
constructor(stepLabel: string, attempts: number, detail?: string);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* A child `TestContext` that isolates the **pass/fail-affecting** APIs of a poll
|
|
72
|
+
* attempt — `assert` / `expect` / `validate` / `fail` — so a probe's validation
|
|
73
|
+
* noise or a timed-out orphan's late failure cannot corrupt the run's pass/fail
|
|
74
|
+
* outcome. Those are buffered and either flushed (the satisfying attempt / an
|
|
75
|
+
* in-budget deliberate failure) or discarded (probe / orphan).
|
|
76
|
+
*
|
|
77
|
+
* Everything else PASSES THROUGH to the real ctx and emits per-attempt, by
|
|
78
|
+
* design — and this is deliberate, not an oversight:
|
|
79
|
+
* - Observability (`trace` / `metric` / `log` / `action` / `event`): the
|
|
80
|
+
* polling requests genuinely happened; their traces/metrics are wanted (you
|
|
81
|
+
* want to see "polled 3×"). Buffering them would also be inconsistent: the
|
|
82
|
+
* adapter's HTTP client is pre-bound to the real ctx at construction, so its
|
|
83
|
+
* auto-traces emit to the real ctx regardless of this wrapper — there is no
|
|
84
|
+
* way to intercept them here, so we don't pretend to.
|
|
85
|
+
* - Accessors / side effects (`vars` / `secrets` / `session` / `http`): a
|
|
86
|
+
* predicate that reads/writes these runs against the live ctx, exactly like
|
|
87
|
+
* a condition predicate does (which is also evaluated against the real ctx).
|
|
88
|
+
*
|
|
89
|
+
* `skip` is pure control flow — the real `skip` only throws a SkipError (it
|
|
90
|
+
* emits nothing), so it is delegated. The poll loop catches any rejection from a
|
|
91
|
+
* raced-out attempt so a late skip/fail cannot surface as an unhandled rejection.
|
|
92
|
+
*/
|
|
93
|
+
export interface QuarantinedContext extends TestContext {
|
|
94
|
+
/** Replay all buffered emissions onto a real ctx (the satisfying attempt / in-budget predicate). */
|
|
95
|
+
flushTo(target: TestContext): void;
|
|
96
|
+
/** True if any buffered assertion / validation / fail recorded a failure. */
|
|
97
|
+
hasFailure(): boolean;
|
|
98
|
+
}
|
|
99
|
+
export declare function quarantinedCtx(real: TestContext): QuarantinedContext;
|
|
100
|
+
/**
|
|
101
|
+
* Race a promise against a finite budget (ms). If the budget elapses first,
|
|
102
|
+
* reject with `onTimeout()`. A non-finite budget degrades to a plain await
|
|
103
|
+
* (build-time validation guarantees attempt budgets are finite, so this only
|
|
104
|
+
* happens defensively).
|
|
105
|
+
*/
|
|
106
|
+
export declare function raceBudget<T>(promise: Promise<T>, budgetMs: number, onTimeout: () => Error): Promise<T>;
|
|
107
|
+
/**
|
|
108
|
+
* Evaluate a poll exit predicate. L2 declarative reads the RESPONSE (`evalPredicate`
|
|
109
|
+
* with subject = response). Opaque tiers get `(ctx, res, state)`. Non-boolean
|
|
110
|
+
* results fail fast (mirrors condition Phase 6); a thrown error / `ctx.skip()`
|
|
111
|
+
* propagates to the caller.
|
|
112
|
+
*/
|
|
113
|
+
export declare function evalPollExit(until: RuntimePollStep["until"], response: unknown, ctx: TestContext, state: unknown): Promise<boolean>;
|
|
114
|
+
/**
|
|
115
|
+
* Validate poll bounds at construction. Two rules (both required), plus
|
|
116
|
+
* finiteness on every timing value (an `Infinity` bound would un-bound the loop):
|
|
117
|
+
* 1. total stop condition: `timeout` OR `maxAttempts`
|
|
118
|
+
* 2. finite per-attempt budget: `timeout` OR `perAttemptTimeout`
|
|
119
|
+
* (so `maxAttempts`-only — with no per-attempt budget — is illegal: a single
|
|
120
|
+
* hung request/predicate could block forever before the attempt counter advances.)
|
|
121
|
+
*/
|
|
122
|
+
export declare function validatePollBounds(bounds: {
|
|
123
|
+
timeout?: number;
|
|
124
|
+
maxAttempts?: number;
|
|
125
|
+
perAttemptTimeout?: number;
|
|
126
|
+
every?: number;
|
|
127
|
+
backoff?: number;
|
|
128
|
+
}, stepLabel: string): void;
|
|
129
|
+
export interface ExtractedPollStep {
|
|
130
|
+
kind: "poll";
|
|
131
|
+
name?: string;
|
|
132
|
+
contractId: string;
|
|
133
|
+
caseKey: string;
|
|
134
|
+
protocol: string;
|
|
135
|
+
target: string;
|
|
136
|
+
inputs?: FieldMapping[];
|
|
137
|
+
outputs?: FieldMapping[];
|
|
138
|
+
accept?: ReadonlyArray<string | number>;
|
|
139
|
+
/** Exit predicate — L2 precise (compare/in/...) or `{kind:"opaque",...}`. */
|
|
140
|
+
until: ExtractedPredicate;
|
|
141
|
+
message?: string;
|
|
142
|
+
every: number;
|
|
143
|
+
backoff: number;
|
|
144
|
+
timeoutMs?: number;
|
|
145
|
+
perAttemptTimeoutMs?: number;
|
|
146
|
+
maxAttempts?: number;
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Normalize a runtime poll step to JSON-safe form. `dryRun` produces the
|
|
150
|
+
* input/output field mappings (the same Proxy dry-run normalizeFlow uses for a
|
|
151
|
+
* contract-call step), so the poll node carries data-flow edges like a step.
|
|
152
|
+
*/
|
|
153
|
+
export declare function extractPollStep(step: RuntimePollStep, dryRun: (step: RuntimePollStep) => {
|
|
154
|
+
inputs?: FieldMapping[];
|
|
155
|
+
outputs?: FieldMapping[];
|
|
156
|
+
}): ExtractedPollStep;
|
|
157
|
+
//# sourceMappingURL=contract-flow-poll.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract-flow-poll.d.ts","sourceRoot":"","sources":["../src/contract-flow-poll.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EAChB,YAAY,EACb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,WAAW,EAAc,MAAM,YAAY,CAAC;AAE1D,OAAO,EACL,KAAK,eAAe,EAEpB,KAAK,kBAAkB,EAGxB,MAAM,8BAA8B,CAAC;AAMtC;;;;;;;;;GASG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,qDAAqD;IACrD,QAAQ,EAAE,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC1C,QAAQ,CAAC,EAAE;QACT,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;QACzB,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,KAAK,GAAG,CAAC;QACzC,MAAM,CAAC,EAAE,SAAS,OAAO,EAAE,CAAC;KAC7B,CAAC;IACF,4FAA4F;IAC5F,KAAK,EACD,eAAe,CAAC,GAAG,CAAC,GACpB;QACE,IAAI,EAAE,QAAQ,CAAC;QACf,IAAI,EAAE,OAAO,CAAC;QACd,EAAE,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;KAC5E,CAAC;IACN,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,4FAA4F;IAC5F,OAAO,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qEAAqE;IACrE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,2BAA2B;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,mEAAmE;AACnE,eAAO,MAAM,cAAc,QAAS,CAAC;AACrC,iEAAiE;AACjE,eAAO,MAAM,gBAAgB,OAAO,CAAC;AAMrC,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;gBACd,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;CAQjE;AAMD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACrD,oGAAoG;IACpG,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IACnC,6EAA6E;IAC7E,UAAU,IAAI,OAAO,CAAC;CACvB;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,kBAAkB,CA2FpE;AAMD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAC1B,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,KAAK,GACrB,OAAO,CAAC,CAAC,CAAC,CAeZ;AAYD;;;;;GAKG;AACH,wBAAsB,YAAY,CAChC,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,EAC/B,QAAQ,EAAE,OAAO,EACjB,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAmBlB;AAMD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE;IACN,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,EACD,SAAS,EAAE,MAAM,GAChB,IAAI,CA2BN;AAMD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,MAAM,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IACxC,6EAA6E;IAC7E,KAAK,EAAE,kBAAkB,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK;IAAE,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;IAAC,OAAO,CAAC,EAAE,YAAY,EAAE,CAAA;CAAE,GACvF,iBAAiB,CAwBnB"}
|
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module contract-flow-poll
|
|
3
|
+
*
|
|
4
|
+
* Bounded poll-until primitive for `contract.flow()` — runtime + projection.
|
|
5
|
+
*
|
|
6
|
+
* A poll repeats ONE contract case until an exit predicate over the RESPONSE
|
|
7
|
+
* holds, BOUNDED by a total wall-clock deadline and/or a finite per-attempt
|
|
8
|
+
* budget. It is the projectable subset of "loop" (a self-loop on one node), as
|
|
9
|
+
* opposed to the arbitrary loops that stay in `test()`. See the design proposal
|
|
10
|
+
* `internal/40-discovery/proposals/contract-flow-poll.md`.
|
|
11
|
+
*
|
|
12
|
+
* This module owns the poll-specific runtime types, the bounded-retry helpers
|
|
13
|
+
* (quarantined ctx, budget race), the exit-predicate evaluator (three strictness
|
|
14
|
+
* tiers, reusing the condition predicate foundation), the build-time bound
|
|
15
|
+
* validation, and the JSON-safe projection. The execution LOOP lives in
|
|
16
|
+
* `contract-core.ts` (it needs the shared committed-state cell).
|
|
17
|
+
*/
|
|
18
|
+
import { Expectation } from "./expect.js";
|
|
19
|
+
import { evalPredicate, extractPredicate, } from "./contract-flow-condition.js";
|
|
20
|
+
/** Backoff cap — mirrors the test() step retry-backoff ceiling. */
|
|
21
|
+
export const BACKOFF_CAP_MS = 30_000;
|
|
22
|
+
/** Default interval between attempts when `every` is omitted. */
|
|
23
|
+
export const DEFAULT_EVERY_MS = 1000;
|
|
24
|
+
// =============================================================================
|
|
25
|
+
// Exhaustion error
|
|
26
|
+
// =============================================================================
|
|
27
|
+
export class PollExhaustedError extends Error {
|
|
28
|
+
attempts;
|
|
29
|
+
constructor(stepLabel, attempts, detail) {
|
|
30
|
+
super(`poll "${stepLabel}" exhausted: condition not met after ${attempts} attempt(s)` +
|
|
31
|
+
(detail ? ` (${detail})` : ""));
|
|
32
|
+
this.name = "PollExhaustedError";
|
|
33
|
+
this.attempts = attempts;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
export function quarantinedCtx(real) {
|
|
37
|
+
const buffer = [];
|
|
38
|
+
let failed = false;
|
|
39
|
+
const recordAssert = (passed) => {
|
|
40
|
+
if (!passed)
|
|
41
|
+
failed = true;
|
|
42
|
+
};
|
|
43
|
+
// `Object.create(real)` (not a spread) so PROTOTYPE-inherited APIs survive —
|
|
44
|
+
// a fixture-augmented ctx (test.extend) carries vars/http/log/etc. on its
|
|
45
|
+
// prototype chain, which `{ ...real }` would drop. Accessors + observability
|
|
46
|
+
// resolve through the prototype; only the pass/fail APIs below are overridden.
|
|
47
|
+
// `skip` is intentionally NOT overridden — it inherits real.skip (throws a
|
|
48
|
+
// SkipError, emits nothing → safe to delegate).
|
|
49
|
+
const q = Object.assign(Object.create(real), {
|
|
50
|
+
assert: (a, message, details) => {
|
|
51
|
+
const passed = typeof a === "boolean" ? a : a.passed;
|
|
52
|
+
recordAssert(passed);
|
|
53
|
+
buffer.push((t) => t.assert(a, message, details));
|
|
54
|
+
},
|
|
55
|
+
expect: (actual) => new Expectation(actual, (result) => {
|
|
56
|
+
recordAssert(result.passed);
|
|
57
|
+
buffer.push((t) => t.assert({ passed: result.passed, actual: result.actual, expected: result.expected }, result.message));
|
|
58
|
+
}),
|
|
59
|
+
validate: (data, schema, label, options) => {
|
|
60
|
+
// Run the schema NOW (the adapter consumes the return value); buffer the
|
|
61
|
+
// event so it only lands on the real ctx if this attempt is flushed.
|
|
62
|
+
// Mirror ctx.validate: support both safeParse and parse-only SchemaLikes
|
|
63
|
+
// (a parse-only schema must still run + transform, not silently no-op).
|
|
64
|
+
const s = schema;
|
|
65
|
+
let ok = true;
|
|
66
|
+
let value;
|
|
67
|
+
if (typeof s.safeParse === "function") {
|
|
68
|
+
const r = s.safeParse(data);
|
|
69
|
+
ok = r.success;
|
|
70
|
+
value = r.success ? r.data : undefined;
|
|
71
|
+
}
|
|
72
|
+
else if (typeof s.parse === "function") {
|
|
73
|
+
try {
|
|
74
|
+
value = s.parse(data);
|
|
75
|
+
}
|
|
76
|
+
catch {
|
|
77
|
+
ok = false;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
recordAssert(ok);
|
|
81
|
+
buffer.push((t) => t.validate(data, schema, label, options));
|
|
82
|
+
// `severity: "fatal"` aborts at the validation point in the real ctx —
|
|
83
|
+
// preserve that control flow (the buffered event still flushes/discards
|
|
84
|
+
// with the attempt). The throw propagates; the poll loop flushes this
|
|
85
|
+
// ctx for an in-budget throw, discards it for a timed-out orphan.
|
|
86
|
+
if (!ok && options?.severity === "fatal") {
|
|
87
|
+
throw new Error(`fatal validation failed: ${label ?? "data"}`);
|
|
88
|
+
}
|
|
89
|
+
return value;
|
|
90
|
+
},
|
|
91
|
+
// fail emits a failed assertion AND bumps the counter in the real ctx, so it
|
|
92
|
+
// must NOT delegate (a timed-out orphan would mutate the abandoned run).
|
|
93
|
+
// Buffer the failure event + throw locally; the poll loop flushes this ctx
|
|
94
|
+
// for an in-budget fail (the assertion lands + the throw fails the poll) and
|
|
95
|
+
// discards it for an orphan.
|
|
96
|
+
fail: (message) => {
|
|
97
|
+
failed = true;
|
|
98
|
+
buffer.push((t) => t.assert({ passed: false }, message));
|
|
99
|
+
throw new Error(message);
|
|
100
|
+
},
|
|
101
|
+
});
|
|
102
|
+
q.flushTo = (target) => {
|
|
103
|
+
for (const replay of buffer)
|
|
104
|
+
replay(target);
|
|
105
|
+
};
|
|
106
|
+
q.hasFailure = () => failed;
|
|
107
|
+
return q;
|
|
108
|
+
}
|
|
109
|
+
// =============================================================================
|
|
110
|
+
// Budget race
|
|
111
|
+
// =============================================================================
|
|
112
|
+
/**
|
|
113
|
+
* Race a promise against a finite budget (ms). If the budget elapses first,
|
|
114
|
+
* reject with `onTimeout()`. A non-finite budget degrades to a plain await
|
|
115
|
+
* (build-time validation guarantees attempt budgets are finite, so this only
|
|
116
|
+
* happens defensively).
|
|
117
|
+
*/
|
|
118
|
+
export function raceBudget(promise, budgetMs, onTimeout) {
|
|
119
|
+
if (!Number.isFinite(budgetMs))
|
|
120
|
+
return promise;
|
|
121
|
+
return new Promise((resolve, reject) => {
|
|
122
|
+
const timer = setTimeout(() => reject(onTimeout()), Math.max(0, budgetMs));
|
|
123
|
+
promise.then((v) => {
|
|
124
|
+
clearTimeout(timer);
|
|
125
|
+
resolve(v);
|
|
126
|
+
}, (e) => {
|
|
127
|
+
clearTimeout(timer);
|
|
128
|
+
reject(e);
|
|
129
|
+
});
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
// =============================================================================
|
|
133
|
+
// Exit-predicate evaluation (three tiers)
|
|
134
|
+
// =============================================================================
|
|
135
|
+
function isOpaqueExit(p) {
|
|
136
|
+
return p.kind === "opaque";
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Evaluate a poll exit predicate. L2 declarative reads the RESPONSE (`evalPredicate`
|
|
140
|
+
* with subject = response). Opaque tiers get `(ctx, res, state)`. Non-boolean
|
|
141
|
+
* results fail fast (mirrors condition Phase 6); a thrown error / `ctx.skip()`
|
|
142
|
+
* propagates to the caller.
|
|
143
|
+
*/
|
|
144
|
+
export async function evalPollExit(until, response, ctx, state) {
|
|
145
|
+
if (isOpaqueExit(until)) {
|
|
146
|
+
const out = until.fn(ctx, response, state);
|
|
147
|
+
if (until.sync && out && typeof out.then === "function") {
|
|
148
|
+
throw new Error("pollFn (L1) exit predicate must be synchronous — it returned a thenable. Use pollAsync for async/I-O exit predicates.");
|
|
149
|
+
}
|
|
150
|
+
const result = await out;
|
|
151
|
+
if (typeof result !== "boolean") {
|
|
152
|
+
throw new Error(`${until.sync ? "pollFn (L1)" : "pollAsync (L0)"} exit predicate must return a boolean; ` +
|
|
153
|
+
`got ${result === null ? "null" : typeof result}`);
|
|
154
|
+
}
|
|
155
|
+
return result;
|
|
156
|
+
}
|
|
157
|
+
// L2 declarative — predicate subject is the response.
|
|
158
|
+
return evalPredicate(until, response);
|
|
159
|
+
}
|
|
160
|
+
// =============================================================================
|
|
161
|
+
// Build-time bound validation
|
|
162
|
+
// =============================================================================
|
|
163
|
+
/**
|
|
164
|
+
* Validate poll bounds at construction. Two rules (both required), plus
|
|
165
|
+
* finiteness on every timing value (an `Infinity` bound would un-bound the loop):
|
|
166
|
+
* 1. total stop condition: `timeout` OR `maxAttempts`
|
|
167
|
+
* 2. finite per-attempt budget: `timeout` OR `perAttemptTimeout`
|
|
168
|
+
* (so `maxAttempts`-only — with no per-attempt budget — is illegal: a single
|
|
169
|
+
* hung request/predicate could block forever before the attempt counter advances.)
|
|
170
|
+
*/
|
|
171
|
+
export function validatePollBounds(bounds, stepLabel) {
|
|
172
|
+
const { timeout, maxAttempts, perAttemptTimeout, every, backoff } = bounds;
|
|
173
|
+
const finitePos = (v, name, min = 0, integer = false) => {
|
|
174
|
+
if (v === undefined)
|
|
175
|
+
return;
|
|
176
|
+
if (typeof v !== "number" || !Number.isFinite(v) || v < min || (integer && !Number.isInteger(v))) {
|
|
177
|
+
throw new Error(`poll "${stepLabel}": \`${name}\` must be a finite ${integer ? "integer " : ""}number >= ${min}; got ${String(v)}`);
|
|
178
|
+
}
|
|
179
|
+
};
|
|
180
|
+
finitePos(timeout, "timeout", 1);
|
|
181
|
+
finitePos(maxAttempts, "maxAttempts", 1, true);
|
|
182
|
+
finitePos(perAttemptTimeout, "perAttemptTimeout", 1);
|
|
183
|
+
finitePos(every, "every", 0);
|
|
184
|
+
finitePos(backoff, "backoff", 1);
|
|
185
|
+
if (timeout === undefined && maxAttempts === undefined) {
|
|
186
|
+
throw new Error(`poll "${stepLabel}": needs a stop condition — provide \`timeout\` or \`maxAttempts\`.`);
|
|
187
|
+
}
|
|
188
|
+
if (timeout === undefined && perAttemptTimeout === undefined) {
|
|
189
|
+
throw new Error(`poll "${stepLabel}": a \`maxAttempts\`-only poll is not bounded — a single hung request/predicate ` +
|
|
190
|
+
`could block forever. Provide \`timeout\` (total wall-clock) or \`perAttemptTimeout\` (per-attempt budget).`);
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Normalize a runtime poll step to JSON-safe form. `dryRun` produces the
|
|
195
|
+
* input/output field mappings (the same Proxy dry-run normalizeFlow uses for a
|
|
196
|
+
* contract-call step), so the poll node carries data-flow edges like a step.
|
|
197
|
+
*/
|
|
198
|
+
export function extractPollStep(step, dryRun) {
|
|
199
|
+
const projection = step.contract._projection;
|
|
200
|
+
const { inputs, outputs } = dryRun(step);
|
|
201
|
+
const untilExtracted = isOpaqueExit(step.until)
|
|
202
|
+
? { kind: "opaque", strictness: step.until.sync ? "L1" : "L0", mayDoAsyncIO: !step.until.sync }
|
|
203
|
+
: extractPredicate(step.until);
|
|
204
|
+
return {
|
|
205
|
+
kind: "poll",
|
|
206
|
+
...(step.name ? { name: step.name } : {}),
|
|
207
|
+
contractId: projection.id,
|
|
208
|
+
caseKey: step.caseKey,
|
|
209
|
+
protocol: projection.protocol,
|
|
210
|
+
target: projection.target ?? "",
|
|
211
|
+
...(inputs && inputs.length ? { inputs } : {}),
|
|
212
|
+
...(outputs && outputs.length ? { outputs } : {}),
|
|
213
|
+
...(step.bindings?.accept ? { accept: step.bindings.accept } : {}),
|
|
214
|
+
until: untilExtracted,
|
|
215
|
+
...(step.message ? { message: step.message } : {}),
|
|
216
|
+
every: step.every ?? DEFAULT_EVERY_MS,
|
|
217
|
+
backoff: step.backoff ?? 1,
|
|
218
|
+
...(step.timeoutMs !== undefined ? { timeoutMs: step.timeoutMs } : {}),
|
|
219
|
+
...(step.perAttemptTimeoutMs !== undefined ? { perAttemptTimeoutMs: step.perAttemptTimeoutMs } : {}),
|
|
220
|
+
...(step.maxAttempts !== undefined ? { maxAttempts: step.maxAttempts } : {}),
|
|
221
|
+
};
|
|
222
|
+
}
|
|
223
|
+
//# sourceMappingURL=contract-flow-poll.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract-flow-poll.js","sourceRoot":"","sources":["../src/contract-flow-poll.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/contract-http/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EACV,uBAAuB,EAMxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAGV,UAAU,EAEX,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAGV,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAEhB,kBAAkB,EAClB,eAAe,EAIf,WAAW,EACZ,MAAM,YAAY,CAAC;AAQpB,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAOhF;AAUD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAC1C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAOpC;AAsBD,UAAU,iBAAiB;IACzB,IAAI,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC7C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;CACrD;AAED,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,WAAW,GAAG,SAAS,GAC3B,iBAAiB,GAAG,SAAS,CAO/B;AA8ED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CAoBlE;
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/contract-http/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EACV,uBAAuB,EAMxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAGV,UAAU,EAEX,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAGV,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAEhB,kBAAkB,EAClB,eAAe,EAIf,WAAW,EACZ,MAAM,YAAY,CAAC;AAQpB,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAOhF;AAUD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAC1C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAOpC;AAsBD,UAAU,iBAAiB;IACzB,IAAI,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC7C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;CACrD;AAED,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,WAAW,GAAG,SAAS,GAC3B,iBAAiB,GAAG,SAAS,CAO/B;AA8ED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CAoBlE;AAikBD,eAAO,MAAM,WAAW,EAAE,uBAAuB,CAC/C,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,CA4EjB,CAAC"}
|
|
@@ -507,6 +507,10 @@ async function executeCaseInFlowHttp(input) {
|
|
|
507
507
|
const normalizedReq = normalizeRequest(spec.request);
|
|
508
508
|
const effectiveContentType = caseSpec.contentType ?? normalizedReq?.contentType ?? "application/json";
|
|
509
509
|
const requestOptions = { throwHttpErrors: false };
|
|
510
|
+
// Poll attempts pass an AbortSignal (per-attempt budget). Honoring it truly
|
|
511
|
+
// cancels the in-flight request; non-poll calls never set it (behavior unchanged).
|
|
512
|
+
if (input.signal)
|
|
513
|
+
requestOptions.signal = input.signal;
|
|
510
514
|
if (body !== undefined) {
|
|
511
515
|
Object.assign(requestOptions, buildRequestBodyOptions(body, effectiveContentType));
|
|
512
516
|
}
|
|
@@ -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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"}
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* ContractCase, ContractExpect, etc.).
|
|
11
11
|
*/
|
|
12
12
|
import type { HttpClient, SchemaLike, TestContext } from "../types.js";
|
|
13
|
-
import type { BaseCaseSpec, Extensions } from "../contract-types.js";
|
|
13
|
+
import type { BaseCaseSpec, Extensions, ProtocolContract } from "../contract-types.js";
|
|
14
14
|
/**
|
|
15
15
|
* HTTP security scheme declaration for contract instances.
|
|
16
16
|
* Maps to OpenAPI `securitySchemes`. Authoritative metadata, not docs-only.
|
|
@@ -100,6 +100,17 @@ export type HttpStaticBody = Record<string, unknown> | unknown[] | string | numb
|
|
|
100
100
|
* don't need the factory; the runtime invariants are unaffected either
|
|
101
101
|
* way (this is a typing improvement only).
|
|
102
102
|
*
|
|
103
|
+
* **Typed flow `res.body`**: a `.step`/`.poll` lens types `res.body` from a case's
|
|
104
|
+
* `expect.schema` (core's `ApplyCaseOutput`/`ExtractCaseResponse`) when the case is
|
|
105
|
+
* written as an INLINE literal in the spec (`api(id, { cases: { ok: { ...,
|
|
106
|
+
* expect: { schema } } } })`) — the literal keeps the `schema` key visible, and
|
|
107
|
+
* ONLY a real schema types it (a docs-only `expect.example` does not).
|
|
108
|
+
* `defineHttpCase(...)` returns the nominal `ContractCase<T, Needs>` (which erases
|
|
109
|
+
* schema presence for drift-locking), so a case routed through it leaves flow
|
|
110
|
+
* `res.body` as `unknown` — that's the trade for its compile-time case-shape +
|
|
111
|
+
* needs-drift checks. Use inline cases for typed flow lenses; use `defineHttpCase`
|
|
112
|
+
* when you want the action-field drift guard.
|
|
113
|
+
*
|
|
103
114
|
* @example
|
|
104
115
|
* ```ts
|
|
105
116
|
* import { defineHttpCase } from "@glubean/sdk";
|
|
@@ -213,14 +224,16 @@ export interface HttpPayloadSchemas {
|
|
|
213
224
|
query?: Record<string, HttpParamSchema>;
|
|
214
225
|
security?: HttpSecurityScheme;
|
|
215
226
|
/**
|
|
216
|
-
* Type-only markers read by core's `InferAcceptKey` / `InferRawOutcome`
|
|
217
|
-
* so a flow step's `accept` is typed as `number`
|
|
218
|
-
* `out`'s `res` becomes the raw `HttpFlowCaseOutput
|
|
219
|
-
*
|
|
220
|
-
*
|
|
227
|
+
* Type-only markers read by core's `InferAcceptKey` / `InferRawOutcome` /
|
|
228
|
+
* `ApplyCaseOutput` hooks so a flow step's `accept` is typed as `number`
|
|
229
|
+
* (status), `out`'s `res` becomes the raw `HttpFlowCaseOutput` under `accept`,
|
|
230
|
+
* and the primary `out`/`until` `res` is `HttpFlowCaseOutput` with `body` typed
|
|
231
|
+
* from the case's `expect.schema`. NEVER set at runtime — they exist purely so
|
|
232
|
+
* core stays protocol-agnostic while HTTP supplies the concrete types.
|
|
221
233
|
*/
|
|
222
234
|
readonly __acceptKey?: number;
|
|
223
235
|
readonly __rawOutcome?: HttpFlowCaseOutput;
|
|
236
|
+
readonly __caseOutputShape?: HttpFlowCaseOutput;
|
|
224
237
|
}
|
|
225
238
|
/**
|
|
226
239
|
* JSON-safe payload shape produced by adapter.normalize. All SchemaLike
|
|
@@ -296,12 +309,18 @@ export interface HttpFlowCaseOutput {
|
|
|
296
309
|
headers: NormalizedHeaders;
|
|
297
310
|
body: unknown;
|
|
298
311
|
}
|
|
312
|
+
/**
|
|
313
|
+
* Extract a case's primary response body type from its `expect.schema`
|
|
314
|
+
* (`SchemaLike<T>`). Falls back to `unknown` when the case declares no schema.
|
|
315
|
+
* Used to type the flow lens `res.body` per-case (so `.step`/`.poll` lenses get
|
|
316
|
+
* `res.body: T` instead of `unknown` — no cast needed).
|
|
317
|
+
*/
|
|
299
318
|
/**
|
|
300
319
|
* Callable + chainable HTTP contract factory. Returned by
|
|
301
320
|
* `contract.http.with("name", defaults)`.
|
|
302
321
|
*/
|
|
303
322
|
export interface HttpContractFactory {
|
|
304
|
-
<Cases extends Record<string, ContractCase<any, any>>>(id: string, spec: HttpContractSpec<Cases>):
|
|
323
|
+
<const Cases extends Record<string, ContractCase<any, any>>>(id: string, spec: HttpContractSpec<Cases>): ProtocolContract<HttpContractSpec<Cases>, HttpPayloadSchemas, HttpContractMeta, Cases>;
|
|
305
324
|
with(name: string, defaults: HttpContractDefaults): HttpContractFactory;
|
|
306
325
|
}
|
|
307
326
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/contract-http/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACvE,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/contract-http/types.ts"],"names":[],"mappings":"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"}
|