@typeonce/effect-machine 0.3.0 → 0.4.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 (149) hide show
  1. package/README.md +203 -16
  2. package/dist/Machine.d.ts +784 -289
  3. package/dist/Machine.d.ts.map +1 -1
  4. package/dist/Machine.js +158 -528
  5. package/dist/Machine.js.map +1 -1
  6. package/dist/internal/machine/activities.d.ts +57 -0
  7. package/dist/internal/machine/activities.d.ts.map +1 -0
  8. package/dist/internal/machine/activities.js +49 -0
  9. package/dist/internal/machine/activities.js.map +1 -0
  10. package/dist/internal/machine/atom.d.ts +69 -0
  11. package/dist/internal/machine/atom.d.ts.map +1 -0
  12. package/dist/{AtomMachine.js → internal/machine/atom.js} +19 -94
  13. package/dist/internal/machine/atom.js.map +1 -0
  14. package/dist/internal/machine/cluster.d.ts +63 -0
  15. package/dist/internal/machine/cluster.d.ts.map +1 -0
  16. package/dist/{ClusterMachine.js → internal/machine/cluster.js} +14 -118
  17. package/dist/internal/machine/cluster.js.map +1 -0
  18. package/dist/internal/machine/command.d.ts +16 -0
  19. package/dist/internal/machine/command.d.ts.map +1 -0
  20. package/dist/internal/machine/command.js +45 -0
  21. package/dist/internal/machine/command.js.map +1 -0
  22. package/dist/internal/machine/commandRuntime.d.ts +13 -0
  23. package/dist/internal/machine/commandRuntime.d.ts.map +1 -0
  24. package/dist/internal/machine/commandRuntime.js +16 -0
  25. package/dist/internal/machine/commandRuntime.js.map +1 -0
  26. package/dist/internal/{machineModel.d.ts → machine/configuration.d.ts} +11 -60
  27. package/dist/internal/machine/configuration.d.ts.map +1 -0
  28. package/dist/internal/{machineModel.js → machine/configuration.js} +249 -544
  29. package/dist/internal/machine/configuration.js.map +1 -0
  30. package/dist/internal/{machineErrors.d.ts → machine/errors.d.ts} +1 -1
  31. package/dist/internal/machine/errors.d.ts.map +1 -0
  32. package/dist/internal/{machineErrors.js → machine/errors.js} +1 -1
  33. package/dist/internal/machine/errors.js.map +1 -0
  34. package/dist/internal/machine/executionPlan.d.ts +49 -0
  35. package/dist/internal/machine/executionPlan.d.ts.map +1 -0
  36. package/dist/internal/machine/executionPlan.js +667 -0
  37. package/dist/internal/machine/executionPlan.js.map +1 -0
  38. package/dist/internal/machine/invocation.d.ts +23 -0
  39. package/dist/internal/machine/invocation.d.ts.map +1 -0
  40. package/dist/internal/machine/invocation.js +77 -0
  41. package/dist/internal/machine/invocation.js.map +1 -0
  42. package/dist/internal/machine/machine.d.ts +183 -0
  43. package/dist/internal/machine/machine.d.ts.map +1 -0
  44. package/dist/internal/machine/machine.js +552 -0
  45. package/dist/internal/machine/machine.js.map +1 -0
  46. package/dist/internal/machine/planner.d.ts +182 -0
  47. package/dist/internal/machine/planner.d.ts.map +1 -0
  48. package/dist/internal/machine/planner.js +1082 -0
  49. package/dist/internal/machine/planner.js.map +1 -0
  50. package/dist/internal/{machineProcess.d.ts → machine/process.d.ts} +10 -4
  51. package/dist/internal/machine/process.d.ts.map +1 -0
  52. package/dist/internal/machine/process.js +446 -0
  53. package/dist/internal/machine/process.js.map +1 -0
  54. package/dist/internal/machine/protocol.d.ts +34 -0
  55. package/dist/internal/machine/protocol.d.ts.map +1 -0
  56. package/dist/internal/machine/protocol.js +182 -0
  57. package/dist/internal/machine/protocol.js.map +1 -0
  58. package/dist/internal/machine/readiness.d.ts +4 -0
  59. package/dist/internal/machine/readiness.d.ts.map +1 -0
  60. package/dist/internal/machine/readiness.js +2 -0
  61. package/dist/internal/machine/readiness.js.map +1 -0
  62. package/dist/internal/{machineRuntime.d.ts → machine/runtime.d.ts} +104 -2
  63. package/dist/internal/machine/runtime.d.ts.map +1 -0
  64. package/dist/internal/machine/runtime.js +1381 -0
  65. package/dist/internal/machine/runtime.js.map +1 -0
  66. package/dist/internal/machine/serialization.d.ts +14 -0
  67. package/dist/internal/machine/serialization.d.ts.map +1 -0
  68. package/dist/internal/machine/serialization.js +338 -0
  69. package/dist/internal/machine/serialization.js.map +1 -0
  70. package/dist/internal/machine/stateDefinition.d.ts +15 -0
  71. package/dist/internal/machine/stateDefinition.d.ts.map +1 -0
  72. package/dist/internal/machine/stateDefinition.js +210 -0
  73. package/dist/internal/machine/stateDefinition.js.map +1 -0
  74. package/dist/internal/machine/symbols.d.ts +3 -0
  75. package/dist/internal/machine/symbols.d.ts.map +1 -0
  76. package/dist/internal/machine/symbols.js +3 -0
  77. package/dist/internal/machine/symbols.js.map +1 -0
  78. package/dist/internal/machine/topology.d.ts +98 -0
  79. package/dist/internal/machine/topology.d.ts.map +1 -0
  80. package/dist/internal/machine/topology.js +347 -0
  81. package/dist/internal/machine/topology.js.map +1 -0
  82. package/dist/internal/testing/machine/arbitrary.d.ts +36 -0
  83. package/dist/internal/testing/machine/arbitrary.d.ts.map +1 -0
  84. package/dist/internal/testing/machine/arbitrary.js +68 -0
  85. package/dist/internal/testing/machine/arbitrary.js.map +1 -0
  86. package/dist/internal/testing/machine/finiteModel.d.ts +322 -0
  87. package/dist/internal/testing/machine/finiteModel.d.ts.map +1 -0
  88. package/dist/internal/testing/machine/finiteModel.js +976 -0
  89. package/dist/internal/testing/machine/finiteModel.js.map +1 -0
  90. package/dist/internal/testing/machine/referenceModel.d.ts +203 -0
  91. package/dist/internal/testing/machine/referenceModel.d.ts.map +1 -0
  92. package/dist/internal/testing/machine/referenceModel.js +1012 -0
  93. package/dist/internal/testing/machine/referenceModel.js.map +1 -0
  94. package/dist/internal/testing/machine/runtime.d.ts +328 -0
  95. package/dist/internal/testing/machine/runtime.d.ts.map +1 -0
  96. package/dist/internal/testing/machine/runtime.js +437 -0
  97. package/dist/internal/testing/machine/runtime.js.map +1 -0
  98. package/dist/internal/testing/machine/verification.d.ts +33 -0
  99. package/dist/internal/testing/machine/verification.d.ts.map +1 -0
  100. package/dist/internal/testing/machine/verification.js +1446 -0
  101. package/dist/internal/testing/machine/verification.js.map +1 -0
  102. package/dist/testing/MachineTest.d.ts +606 -0
  103. package/dist/testing/MachineTest.d.ts.map +1 -0
  104. package/dist/testing/MachineTest.js +102 -0
  105. package/dist/testing/MachineTest.js.map +1 -0
  106. package/dist/testing/index.d.ts +7 -0
  107. package/dist/testing/index.d.ts.map +1 -0
  108. package/dist/testing/index.js +7 -0
  109. package/dist/testing/index.js.map +1 -0
  110. package/dist/{ClusterMachine.d.ts → unstable/cluster/ClusterMachine.d.ts} +19 -27
  111. package/dist/unstable/cluster/ClusterMachine.d.ts.map +1 -0
  112. package/dist/unstable/cluster/ClusterMachine.js +126 -0
  113. package/dist/unstable/cluster/ClusterMachine.js.map +1 -0
  114. package/dist/{cluster.js → unstable/cluster/index.d.ts} +1 -1
  115. package/dist/unstable/cluster/index.d.ts.map +1 -0
  116. package/dist/{cluster.d.ts → unstable/cluster/index.js} +1 -1
  117. package/dist/unstable/cluster/index.js.map +1 -0
  118. package/dist/{AtomMachine.d.ts → unstable/reactivity/AtomMachine.d.ts} +35 -20
  119. package/dist/unstable/reactivity/AtomMachine.d.ts.map +1 -0
  120. package/dist/unstable/reactivity/AtomMachine.js +113 -0
  121. package/dist/unstable/reactivity/AtomMachine.js.map +1 -0
  122. package/dist/{reactivity.js → unstable/reactivity/index.d.ts} +1 -1
  123. package/dist/unstable/reactivity/index.d.ts.map +1 -0
  124. package/dist/{reactivity.d.ts → unstable/reactivity/index.js} +1 -1
  125. package/dist/unstable/reactivity/index.js.map +1 -0
  126. package/docs/agent-guide.md +169 -31
  127. package/package.json +19 -10
  128. package/dist/AtomMachine.d.ts.map +0 -1
  129. package/dist/AtomMachine.js.map +0 -1
  130. package/dist/ClusterMachine.d.ts.map +0 -1
  131. package/dist/ClusterMachine.js.map +0 -1
  132. package/dist/cluster.d.ts.map +0 -1
  133. package/dist/cluster.js.map +0 -1
  134. package/dist/internal/machineErrors.d.ts.map +0 -1
  135. package/dist/internal/machineErrors.js.map +0 -1
  136. package/dist/internal/machineModel.d.ts.map +0 -1
  137. package/dist/internal/machineModel.js.map +0 -1
  138. package/dist/internal/machinePlanner.d.ts +0 -74
  139. package/dist/internal/machinePlanner.d.ts.map +0 -1
  140. package/dist/internal/machinePlanner.js +0 -797
  141. package/dist/internal/machinePlanner.js.map +0 -1
  142. package/dist/internal/machineProcess.d.ts.map +0 -1
  143. package/dist/internal/machineProcess.js +0 -181
  144. package/dist/internal/machineProcess.js.map +0 -1
  145. package/dist/internal/machineRuntime.d.ts.map +0 -1
  146. package/dist/internal/machineRuntime.js +0 -365
  147. package/dist/internal/machineRuntime.js.map +0 -1
  148. package/dist/reactivity.d.ts.map +0 -1
  149. package/dist/reactivity.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"referenceModel.js","sourceRoot":"","sources":["../../../../src/internal/testing/machine/referenceModel.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,328 @@
1
+ /**
2
+ * Effect-native command-model testing for live machine references.
3
+ *
4
+ * @since 4.0.0
5
+ */
6
+ import * as Cause from "effect/Cause";
7
+ import * as Duration from "effect/Duration";
8
+ import * as Effect from "effect/Effect";
9
+ import { FastCheck } from "effect/testing";
10
+ import * as Machine from "../../../Machine.js";
11
+ import { type SchemaArbitraryReport } from "./arbitrary.js";
12
+ type AnyMachine = Machine.Machine.Any;
13
+ /**
14
+ * A command applied to a running machine during model-based testing.
15
+ *
16
+ * @category models
17
+ * @since 4.0.0
18
+ */
19
+ export type RuntimeCommand<Event> = {
20
+ readonly _tag: "Send";
21
+ readonly event: Event;
22
+ } | {
23
+ readonly _tag: "Advance";
24
+ readonly duration: Duration.Input;
25
+ } | {
26
+ readonly _tag: "Stop";
27
+ } | {
28
+ readonly _tag: "Checkpoint";
29
+ readonly label: string | undefined;
30
+ };
31
+ /**
32
+ * Constructs a command that sends one public event.
33
+ *
34
+ * @category constructors
35
+ * @since 4.0.0
36
+ */
37
+ export declare const sendCommand: <Event>(event: Event) => RuntimeCommand<Event>;
38
+ /**
39
+ * Constructs a command that advances Effect's `TestClock`.
40
+ *
41
+ * @category constructors
42
+ * @since 4.0.0
43
+ */
44
+ export declare const advanceCommand: <Event = never>(duration: Duration.Input) => RuntimeCommand<Event>;
45
+ /**
46
+ * Constructs an idempotent command that stops the machine.
47
+ *
48
+ * @category constructors
49
+ * @since 4.0.0
50
+ */
51
+ export declare const stopCommand: <Event = never>() => RuntimeCommand<Event>;
52
+ /**
53
+ * Constructs a no-op command used to synchronize with work enqueued by earlier
54
+ * commands. Its behavior is selected by the reference-model step.
55
+ *
56
+ * @category constructors
57
+ * @since 4.0.0
58
+ */
59
+ export declare const checkpointCommand: <Event = never>(label?: string) => RuntimeCommand<Event>;
60
+ /**
61
+ * The result of executing one runtime command.
62
+ *
63
+ * @category models
64
+ * @since 4.0.0
65
+ */
66
+ export type RuntimeCommandResult = {
67
+ readonly _tag: "SendAccepted";
68
+ } | {
69
+ readonly _tag: "SendRejected";
70
+ readonly error: Machine.StoppedError;
71
+ } | {
72
+ readonly _tag: "ClockAdvanced";
73
+ } | {
74
+ readonly _tag: "Stopped";
75
+ } | {
76
+ readonly _tag: "Checkpoint";
77
+ };
78
+ /**
79
+ * Defines how a model step synchronizes with public machine observations.
80
+ *
81
+ * `None` is appropriate when a send is intentionally only enqueued. `Next`
82
+ * consumes the next snapshot published after the previously consumed one.
83
+ * `Until` also consumes intermediate snapshots and is useful for a checkpoint
84
+ * after several queued sends. `Current` is only a sample; it should be used
85
+ * when the model already knows there is no outstanding asynchronous work.
86
+ *
87
+ * @category models
88
+ * @since 4.0.0
89
+ */
90
+ export type RuntimeSynchronization<State, Error, Output> = {
91
+ readonly _tag: "None";
92
+ } | {
93
+ readonly _tag: "Current";
94
+ } | {
95
+ readonly _tag: "Next";
96
+ } | {
97
+ readonly _tag: "Until";
98
+ readonly predicate: (snapshot: Machine.RuntimeSnapshot<State, Error, Output>) => boolean;
99
+ };
100
+ /**
101
+ * Constructors for runtime synchronization policies.
102
+ *
103
+ * @category constructors
104
+ * @since 4.0.0
105
+ */
106
+ export declare const RuntimeSynchronization: {
107
+ readonly none: {
108
+ readonly _tag: "None";
109
+ };
110
+ readonly current: {
111
+ readonly _tag: "Current";
112
+ };
113
+ readonly next: {
114
+ readonly _tag: "Next";
115
+ };
116
+ readonly until: <State, Error = never, Output = never>(predicate: (snapshot: Machine.RuntimeSnapshot<State, Error, Output>) => boolean) => RuntimeSynchronization<State, Error, Output>;
117
+ };
118
+ /**
119
+ * The pure/reference-model result for one runtime command.
120
+ *
121
+ * @category models
122
+ * @since 4.0.0
123
+ */
124
+ export interface RuntimeModelStep<Model, Expected, State, Error, Output> {
125
+ readonly model: Model;
126
+ readonly expected: Expected;
127
+ readonly synchronize: RuntimeSynchronization<State, Error, Output>;
128
+ }
129
+ /**
130
+ * Actual evidence made available to a runtime command assertion.
131
+ *
132
+ * @category models
133
+ * @since 4.0.0
134
+ */
135
+ export interface RuntimeCommandActual<State, Error, Output, Observed> {
136
+ readonly result: RuntimeCommandResult;
137
+ readonly snapshot: Machine.RuntimeSnapshot<State, Error, Output> | undefined;
138
+ readonly published: ReadonlyArray<Machine.RuntimeSnapshot<State, Error, Output>>;
139
+ readonly inspected: Observed | undefined;
140
+ }
141
+ /**
142
+ * Context supplied to a custom runtime inspection effect.
143
+ *
144
+ * @category models
145
+ * @since 4.0.0
146
+ */
147
+ export interface RuntimeInspectionContext<State, Event, Error, Output> {
148
+ readonly index: number;
149
+ readonly command: RuntimeCommand<Event>;
150
+ readonly result: RuntimeCommandResult;
151
+ readonly ref: Machine.MachineRef<State, Event, Error, Output>;
152
+ readonly snapshot: Machine.RuntimeSnapshot<State, Error, Output> | undefined;
153
+ readonly published: ReadonlyArray<Machine.RuntimeSnapshot<State, Error, Output>>;
154
+ }
155
+ /**
156
+ * Context supplied to the reference-model assertion.
157
+ *
158
+ * @category models
159
+ * @since 4.0.0
160
+ */
161
+ export interface RuntimeAssertionContext<Model, Expected, State, Event, Error, Output, Observed> extends RuntimeInspectionContext<State, Event, Error, Output> {
162
+ readonly model: Model;
163
+ readonly expected: Expected;
164
+ readonly actual: RuntimeCommandActual<State, Error, Output, Observed>;
165
+ }
166
+ /**
167
+ * Configuration for an Effect-native runtime command-model run.
168
+ *
169
+ * @category models
170
+ * @since 4.0.0
171
+ */
172
+ export interface RuntimeModelOptions<Model, Expected, State, Event, Error, Output, Observed = never, ModelError = never, ModelServices = never, InspectionError = never, InspectionServices = never, AssertionError = never, AssertionServices = never> {
173
+ readonly initialModel: Model;
174
+ /**
175
+ * Live-clock bound for `Next` and `Until` synchronization. Defaults to one
176
+ * second and never advances the machine's virtual `TestClock`.
177
+ */
178
+ readonly observationTimeout?: Duration.Input;
179
+ readonly transition: (model: Model, command: RuntimeCommand<Event>, index: number) => Effect.Effect<RuntimeModelStep<Model, Expected, State, Error, Output>, ModelError, ModelServices>;
180
+ readonly inspect?: (context: RuntimeInspectionContext<State, Event, Error, Output>) => Effect.Effect<Observed, InspectionError, InspectionServices>;
181
+ readonly assert: (context: RuntimeAssertionContext<Model, Expected, State, Event, Error, Output, Observed>) => Effect.Effect<void, AssertionError, AssertionServices>;
182
+ }
183
+ /**
184
+ * One successfully checked command in a replayable runtime transcript.
185
+ *
186
+ * @category models
187
+ * @since 4.0.0
188
+ */
189
+ export interface RuntimeCommandRecord<Model, Expected, State, Event, Error, Output, Observed> {
190
+ readonly index: number;
191
+ readonly command: RuntimeCommand<Event>;
192
+ readonly model: Model;
193
+ readonly expected: Expected;
194
+ readonly actual: RuntimeCommandActual<State, Error, Output, Observed>;
195
+ }
196
+ /**
197
+ * A complete command-model execution transcript.
198
+ *
199
+ * @category models
200
+ * @since 4.0.0
201
+ */
202
+ export interface RuntimeTranscript<Model, Expected, State, Event, Error, Output, Observed> {
203
+ readonly commands: ReadonlyArray<RuntimeCommand<Event>>;
204
+ readonly initial: Machine.RuntimeSnapshot<State, Error, Output>;
205
+ readonly records: ReadonlyArray<RuntimeCommandRecord<Model, Expected, State, Event, Error, Output, Observed>>;
206
+ readonly finalModel: Model;
207
+ /** The last explicitly synchronized snapshot, never a racy trailing sample. */
208
+ readonly final: Machine.RuntimeSnapshot<State, Error, Output>;
209
+ /**
210
+ * `false` when potentially outstanding work has not been bounded by an
211
+ * `Until` predicate or a terminal snapshot.
212
+ */
213
+ readonly synchronized: boolean;
214
+ }
215
+ declare const RuntimeObservationError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => Cause.YieldableError & {
216
+ readonly _tag: "MachineTestRuntimeObservationError";
217
+ } & Readonly<A>;
218
+ /**
219
+ * Failure raised when an expected public change stream observation is absent.
220
+ *
221
+ * @category errors
222
+ * @since 4.0.0
223
+ */
224
+ export declare class RuntimeObservationError extends RuntimeObservationError_base<{
225
+ readonly index: number;
226
+ readonly synchronization: "Next" | "Until";
227
+ readonly reason: "ended" | "timeout";
228
+ readonly message: string;
229
+ }> {
230
+ }
231
+ declare const RuntimeCommandFailure_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => Cause.YieldableError & {
232
+ readonly _tag: "MachineTestRuntimeCommandFailure";
233
+ } & Readonly<A>;
234
+ /**
235
+ * A typed command-model failure retaining the successfully checked prefix.
236
+ *
237
+ * @category errors
238
+ * @since 4.0.0
239
+ */
240
+ export declare class RuntimeCommandFailure<Failure = unknown, Model = unknown, Expected = unknown, State = unknown, Event = unknown, Error = unknown, Output = unknown, Observed = unknown> extends RuntimeCommandFailure_base<{
241
+ readonly phase: "model" | "execution" | "observation" | "inspection" | "assertion";
242
+ readonly index: number;
243
+ readonly command: RuntimeCommand<Event>;
244
+ readonly cause: Cause.Cause<Failure>;
245
+ readonly prefix: ReadonlyArray<RuntimeCommandRecord<Model, Expected, State, Event, Error, Output, Observed>>;
246
+ readonly attempted: RuntimeCommandRecord<Model, Expected, State, Event, Error, Output, Observed> | undefined;
247
+ }> {
248
+ }
249
+ /**
250
+ * Runs typed commands against a live `MachineRef` and checks them against a
251
+ * supplied Effect-native reference model.
252
+ *
253
+ * The runner observes only public `MachineRef` behavior. In particular, a
254
+ * successful send means enqueue acceptance, not completed processing. A model
255
+ * must request `Next`/`Until` only when it predicts a publication, or use an
256
+ * explicit checkpoint to drain previously enqueued work. Machine emissions can
257
+ * be captured by the runtime service used by the machine and returned from the
258
+ * optional `inspect` effect.
259
+ *
260
+ * Typed failures and defects from model transitions, command execution,
261
+ * inspection, and assertions are retained as full `Cause` values. A cause
262
+ * containing only interruption is propagated as interruption so cancelling a
263
+ * property run cannot be mistaken for a machine counterexample.
264
+ *
265
+ * @category constructors
266
+ * @since 4.0.0
267
+ */
268
+ export declare const runRuntimeCommands: <Model, Expected, State, Event, Error, Output, Observed = never, ModelError = never, ModelServices = never, InspectionError = never, InspectionServices = never, AssertionError = never, AssertionServices = never>(ref: Machine.MachineRef<State, Event, Error, Output>, commands: Iterable<RuntimeCommand<Event>>, options: RuntimeModelOptions<Model, Expected, State, Event, Error, Output, Observed, ModelError, ModelServices, InspectionError, InspectionServices, AssertionError, AssertionServices>) => Effect.Effect<RuntimeTranscript<Model, Expected, State, Event, Error, Output, Observed>, RuntimeCommandFailure<ModelError | InspectionError | AssertionError | RuntimeObservationError, Model, Expected, State, Event, Error, Output, Observed>, ModelServices | InspectionServices | AssertionServices>;
269
+ /**
270
+ * Options controlling schema-derived runtime command generation.
271
+ *
272
+ * @category models
273
+ * @since 4.0.0
274
+ */
275
+ export interface RuntimeCommandsOptions<M extends AnyMachine> {
276
+ readonly minCommands?: number;
277
+ readonly maxCommands?: number;
278
+ readonly eventArbitrary?: FastCheck.Arbitrary<Machine.Machine.InputEvent<M>>;
279
+ readonly advanceArbitrary?: FastCheck.Arbitrary<Duration.Input>;
280
+ readonly includeAdvance?: boolean;
281
+ readonly includeStop?: boolean;
282
+ readonly includeCheckpoint?: boolean;
283
+ readonly additionalCommands?: ReadonlyArray<FastCheck.Arbitrary<RuntimeCommand<Machine.Machine.InputEvent<M>>>>;
284
+ }
285
+ /**
286
+ * Diagnostics describing a schema-derived runtime command arbitrary.
287
+ *
288
+ * @category models
289
+ * @since 4.0.0
290
+ */
291
+ export interface RuntimeCommandsDiagnostics {
292
+ readonly events: "none" | "schema" | "override";
293
+ readonly schemaReports: ReadonlyArray<SchemaArbitraryReport>;
294
+ readonly includesAdvance: boolean;
295
+ readonly includesStop: boolean;
296
+ readonly includesCheckpoint: boolean;
297
+ }
298
+ /**
299
+ * A shrinkable runtime command arbitrary and its derivation diagnostics.
300
+ *
301
+ * @category models
302
+ * @since 4.0.0
303
+ */
304
+ export interface RuntimeCommands<M extends AnyMachine> {
305
+ readonly arbitrary: FastCheck.Arbitrary<ReadonlyArray<RuntimeCommand<Machine.Machine.InputEvent<M>>>>;
306
+ readonly diagnostics: RuntimeCommandsDiagnostics;
307
+ }
308
+ /**
309
+ * Derives a shrinkable command sequence from public event schemas and explicit
310
+ * clock/stop/checkpoint command choices.
311
+ *
312
+ * This deliberately returns ordinary Effect FastCheck arbitraries instead of
313
+ * adapting the runner through `asyncModelRun`: the latter requires Promise
314
+ * callbacks and would erase Effect error and service channels.
315
+ *
316
+ * @category constructors
317
+ * @since 4.0.0
318
+ */
319
+ export declare const runtimeCommands: <M extends AnyMachine>(machine: M, options?: RuntimeCommandsOptions<M>) => RuntimeCommands<M>;
320
+ /**
321
+ * Formats a runtime transcript or failure as replayable line-oriented evidence.
322
+ *
323
+ * @category formatting
324
+ * @since 4.0.0
325
+ */
326
+ export declare const formatRuntimeTranscript: (value: RuntimeTranscript<any, any, any, any, any, any, any> | RuntimeCommandFailure<any, any, any, any, any, any, any, any>) => string;
327
+ export {};
328
+ //# sourceMappingURL=runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../src/internal/testing/machine/runtime.ts"],"names":[],"mappings":"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"}