@typeonce/effect-machine 0.2.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.
- package/README.md +345 -42
- package/dist/Machine.d.ts +1273 -347
- package/dist/Machine.d.ts.map +1 -1
- package/dist/Machine.js +161 -426
- package/dist/Machine.js.map +1 -1
- package/dist/internal/machine/activities.d.ts +57 -0
- package/dist/internal/machine/activities.d.ts.map +1 -0
- package/dist/internal/machine/activities.js +49 -0
- package/dist/internal/machine/activities.js.map +1 -0
- package/dist/internal/machine/atom.d.ts +69 -0
- package/dist/internal/machine/atom.d.ts.map +1 -0
- package/dist/{AtomMachine.js → internal/machine/atom.js} +19 -94
- package/dist/internal/machine/atom.js.map +1 -0
- package/dist/internal/machine/cluster.d.ts +63 -0
- package/dist/internal/machine/cluster.d.ts.map +1 -0
- package/dist/{ClusterMachine.js → internal/machine/cluster.js} +15 -119
- package/dist/internal/machine/cluster.js.map +1 -0
- package/dist/internal/machine/command.d.ts +16 -0
- package/dist/internal/machine/command.d.ts.map +1 -0
- package/dist/internal/machine/command.js +45 -0
- package/dist/internal/machine/command.js.map +1 -0
- package/dist/internal/machine/commandRuntime.d.ts +13 -0
- package/dist/internal/machine/commandRuntime.d.ts.map +1 -0
- package/dist/internal/machine/commandRuntime.js +16 -0
- package/dist/internal/machine/commandRuntime.js.map +1 -0
- package/dist/internal/{machineModel.d.ts → machine/configuration.d.ts} +32 -38
- package/dist/internal/machine/configuration.d.ts.map +1 -0
- package/dist/internal/machine/configuration.js +965 -0
- package/dist/internal/machine/configuration.js.map +1 -0
- package/dist/internal/{machineErrors.d.ts → machine/errors.d.ts} +3 -3
- package/dist/internal/machine/errors.d.ts.map +1 -0
- package/dist/internal/{machineErrors.js → machine/errors.js} +1 -1
- package/dist/internal/machine/errors.js.map +1 -0
- package/dist/internal/machine/executionPlan.d.ts +49 -0
- package/dist/internal/machine/executionPlan.d.ts.map +1 -0
- package/dist/internal/machine/executionPlan.js +667 -0
- package/dist/internal/machine/executionPlan.js.map +1 -0
- package/dist/internal/machine/invocation.d.ts +23 -0
- package/dist/internal/machine/invocation.d.ts.map +1 -0
- package/dist/internal/machine/invocation.js +77 -0
- package/dist/internal/machine/invocation.js.map +1 -0
- package/dist/internal/machine/machine.d.ts +183 -0
- package/dist/internal/machine/machine.d.ts.map +1 -0
- package/dist/internal/machine/machine.js +552 -0
- package/dist/internal/machine/machine.js.map +1 -0
- package/dist/internal/machine/planner.d.ts +182 -0
- package/dist/internal/machine/planner.d.ts.map +1 -0
- package/dist/internal/machine/planner.js +1082 -0
- package/dist/internal/machine/planner.js.map +1 -0
- package/dist/internal/{machineProcess.d.ts → machine/process.d.ts} +10 -4
- package/dist/internal/machine/process.d.ts.map +1 -0
- package/dist/internal/machine/process.js +446 -0
- package/dist/internal/machine/process.js.map +1 -0
- package/dist/internal/machine/protocol.d.ts +34 -0
- package/dist/internal/machine/protocol.d.ts.map +1 -0
- package/dist/internal/machine/protocol.js +182 -0
- package/dist/internal/machine/protocol.js.map +1 -0
- package/dist/internal/machine/readiness.d.ts +4 -0
- package/dist/internal/machine/readiness.d.ts.map +1 -0
- package/dist/internal/machine/readiness.js +2 -0
- package/dist/internal/machine/readiness.js.map +1 -0
- package/dist/internal/{machineRuntime.d.ts → machine/runtime.d.ts} +104 -2
- package/dist/internal/machine/runtime.d.ts.map +1 -0
- package/dist/internal/machine/runtime.js +1381 -0
- package/dist/internal/machine/runtime.js.map +1 -0
- package/dist/internal/machine/serialization.d.ts +14 -0
- package/dist/internal/machine/serialization.d.ts.map +1 -0
- package/dist/internal/machine/serialization.js +338 -0
- package/dist/internal/machine/serialization.js.map +1 -0
- package/dist/internal/machine/stateDefinition.d.ts +15 -0
- package/dist/internal/machine/stateDefinition.d.ts.map +1 -0
- package/dist/internal/machine/stateDefinition.js +210 -0
- package/dist/internal/machine/stateDefinition.js.map +1 -0
- package/dist/internal/machine/symbols.d.ts +3 -0
- package/dist/internal/machine/symbols.d.ts.map +1 -0
- package/dist/internal/machine/symbols.js +3 -0
- package/dist/internal/machine/symbols.js.map +1 -0
- package/dist/internal/machine/topology.d.ts +98 -0
- package/dist/internal/machine/topology.d.ts.map +1 -0
- package/dist/internal/machine/topology.js +347 -0
- package/dist/internal/machine/topology.js.map +1 -0
- package/dist/internal/testing/machine/arbitrary.d.ts +36 -0
- package/dist/internal/testing/machine/arbitrary.d.ts.map +1 -0
- package/dist/internal/testing/machine/arbitrary.js +68 -0
- package/dist/internal/testing/machine/arbitrary.js.map +1 -0
- package/dist/internal/testing/machine/finiteModel.d.ts +322 -0
- package/dist/internal/testing/machine/finiteModel.d.ts.map +1 -0
- package/dist/internal/testing/machine/finiteModel.js +976 -0
- package/dist/internal/testing/machine/finiteModel.js.map +1 -0
- package/dist/internal/testing/machine/referenceModel.d.ts +203 -0
- package/dist/internal/testing/machine/referenceModel.d.ts.map +1 -0
- package/dist/internal/testing/machine/referenceModel.js +1012 -0
- package/dist/internal/testing/machine/referenceModel.js.map +1 -0
- package/dist/internal/testing/machine/runtime.d.ts +328 -0
- package/dist/internal/testing/machine/runtime.d.ts.map +1 -0
- package/dist/internal/testing/machine/runtime.js +437 -0
- package/dist/internal/testing/machine/runtime.js.map +1 -0
- package/dist/internal/testing/machine/verification.d.ts +33 -0
- package/dist/internal/testing/machine/verification.d.ts.map +1 -0
- package/dist/internal/testing/machine/verification.js +1446 -0
- package/dist/internal/testing/machine/verification.js.map +1 -0
- package/dist/testing/MachineTest.d.ts +606 -0
- package/dist/testing/MachineTest.d.ts.map +1 -0
- package/dist/testing/MachineTest.js +102 -0
- package/dist/testing/MachineTest.js.map +1 -0
- package/dist/testing/index.d.ts +7 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +7 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/{ClusterMachine.d.ts → unstable/cluster/ClusterMachine.d.ts} +22 -30
- package/dist/unstable/cluster/ClusterMachine.d.ts.map +1 -0
- package/dist/unstable/cluster/ClusterMachine.js +126 -0
- package/dist/unstable/cluster/ClusterMachine.js.map +1 -0
- package/dist/{cluster.js → unstable/cluster/index.d.ts} +1 -1
- package/dist/unstable/cluster/index.d.ts.map +1 -0
- package/dist/{cluster.d.ts → unstable/cluster/index.js} +1 -1
- package/dist/unstable/cluster/index.js.map +1 -0
- package/dist/{AtomMachine.d.ts → unstable/reactivity/AtomMachine.d.ts} +40 -23
- package/dist/unstable/reactivity/AtomMachine.d.ts.map +1 -0
- package/dist/unstable/reactivity/AtomMachine.js +113 -0
- package/dist/unstable/reactivity/AtomMachine.js.map +1 -0
- package/dist/{reactivity.js → unstable/reactivity/index.d.ts} +1 -1
- package/dist/unstable/reactivity/index.d.ts.map +1 -0
- package/dist/{reactivity.d.ts → unstable/reactivity/index.js} +1 -1
- package/dist/unstable/reactivity/index.js.map +1 -0
- package/docs/agent-guide.md +271 -38
- package/package.json +23 -13
- package/dist/AtomMachine.d.ts.map +0 -1
- package/dist/AtomMachine.js.map +0 -1
- package/dist/ClusterMachine.d.ts.map +0 -1
- package/dist/ClusterMachine.js.map +0 -1
- package/dist/cluster.d.ts.map +0 -1
- package/dist/cluster.js.map +0 -1
- package/dist/internal/machineErrors.d.ts.map +0 -1
- package/dist/internal/machineErrors.js.map +0 -1
- package/dist/internal/machineModel.d.ts.map +0 -1
- package/dist/internal/machineModel.js +0 -766
- package/dist/internal/machineModel.js.map +0 -1
- package/dist/internal/machinePlanner.d.ts +0 -74
- package/dist/internal/machinePlanner.d.ts.map +0 -1
- package/dist/internal/machinePlanner.js +0 -621
- package/dist/internal/machinePlanner.js.map +0 -1
- package/dist/internal/machineProcess.d.ts.map +0 -1
- package/dist/internal/machineProcess.js +0 -181
- package/dist/internal/machineProcess.js.map +0 -1
- package/dist/internal/machineRuntime.d.ts.map +0 -1
- package/dist/internal/machineRuntime.js +0 -365
- package/dist/internal/machineRuntime.js.map +0 -1
- package/dist/reactivity.d.ts.map +0 -1
- package/dist/reactivity.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../src/internal/machine/runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Internal encoded snapshot serialization.
|
|
3
|
+
*
|
|
4
|
+
* @since 4.0.0
|
|
5
|
+
*/
|
|
6
|
+
import * as Effect from "effect/Effect";
|
|
7
|
+
import type { Machine } from "../../Machine.js";
|
|
8
|
+
import { MachineSchemaDecodeError, MachineSchemaEncodeError } from "./errors.js";
|
|
9
|
+
/** Defensively validates and normalizes an in-memory logical snapshot. Unlike
|
|
10
|
+
* the transport decoder this consumes decoded schema values. */
|
|
11
|
+
export declare const normalizeSnapshotEffect: <const States extends Machine.StateSchemas>(machine: Machine.Any, snapshot: Machine.Snapshot<States>) => Effect.Effect<Machine.Snapshot<States>, MachineSchemaDecodeError>;
|
|
12
|
+
export declare const encodeSnapshot: (machine: Machine.Any, snapshot: Machine.Snapshot<any>) => Effect.Effect<Machine.EncodedSnapshot, MachineSchemaEncodeError, unknown>;
|
|
13
|
+
export declare const decodeSnapshot: (machine: Machine.Any, encoded: unknown) => Effect.Effect<Machine.Snapshot<any>, MachineSchemaDecodeError, unknown>;
|
|
14
|
+
//# sourceMappingURL=serialization.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serialization.d.ts","sourceRoot":"","sources":["../../../src/internal/machine/serialization.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAe/C,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAgFhF;gEACgE;AAChE,eAAO,MAAM,uBAAuB,GAAI,KAAK,CAAC,MAAM,SAAS,OAAO,CAAC,YAAY,EAC/E,SAAS,OAAO,CAAC,GAAG,EACpB,UAAU,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,KACjC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,wBAAwB,CAiCK,CAAA;AAiDxE,eAAO,MAAM,cAAc,GACzB,SAAS,OAAO,CAAC,GAAG,EACpB,UAAU,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,KAC9B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,EAAE,wBAAwB,EAAE,OAAO,CA2IH,CAAA;AAExE,eAAO,MAAM,cAAc,GACzB,SAAS,OAAO,CAAC,GAAG,EACpB,SAAS,OAAO,KACf,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,wBAAwB,EAAE,OAAO,CA8JD,CAAA"}
|
|
@@ -0,0 +1,338 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Internal encoded snapshot serialization.
|
|
3
|
+
*
|
|
4
|
+
* @since 4.0.0
|
|
5
|
+
*/
|
|
6
|
+
import * as Cause from "effect/Cause";
|
|
7
|
+
import * as Effect from "effect/Effect";
|
|
8
|
+
import * as Option from "effect/Option";
|
|
9
|
+
import * as Schema from "effect/Schema";
|
|
10
|
+
import { compareDocumentOrder, configurationFromSnapshot, getActiveChildPath, getActiveValue, getPathToRoot, isActiveFinalNode, isPathInSubtree, normalizeConfigurationEffect, snapshotFromConfiguration, validateHistoryRecordControl } from "./configuration.js";
|
|
11
|
+
import { MachineSchemaDecodeError, MachineSchemaEncodeError } from "./errors.js";
|
|
12
|
+
import { decodeBoundary } from "./protocol.js";
|
|
13
|
+
import { getNode, getStateNodeSchema } from "./topology.js";
|
|
14
|
+
const EncodedSnapshotSchema = Schema.Struct({
|
|
15
|
+
_tag: Schema.Literal("MachineSnapshot"),
|
|
16
|
+
active: Schema.Array(Schema.Struct({
|
|
17
|
+
path: Schema.String,
|
|
18
|
+
value: Schema.Unknown
|
|
19
|
+
})),
|
|
20
|
+
completed: Schema.optional(Schema.Array(Schema.Struct({
|
|
21
|
+
path: Schema.String,
|
|
22
|
+
output: Schema.optional(Schema.Unknown)
|
|
23
|
+
}))),
|
|
24
|
+
history: Schema.optional(Schema.Record(Schema.String, Schema.Struct({
|
|
25
|
+
mode: Schema.Literals(["shallow", "deep"]),
|
|
26
|
+
active: Schema.Array(Schema.String),
|
|
27
|
+
values: Schema.Record(Schema.String, Schema.Unknown)
|
|
28
|
+
})))
|
|
29
|
+
});
|
|
30
|
+
const encodeBoundary = (machine, schema, value, options) => Schema.encodeUnknownEffect(schema)(value).pipe(Effect.mapError((cause) => new MachineSchemaEncodeError({
|
|
31
|
+
machineId: machine.id,
|
|
32
|
+
boundary: options.boundary,
|
|
33
|
+
state: options.state,
|
|
34
|
+
cause
|
|
35
|
+
})));
|
|
36
|
+
const decodeEncodedBoundary = (machine, schema, value, options) => Schema.decodeUnknownEffect(schema)(value).pipe(Effect.mapError((cause) => new MachineSchemaDecodeError({
|
|
37
|
+
machineId: machine.id,
|
|
38
|
+
boundary: options.boundary,
|
|
39
|
+
state: options.state,
|
|
40
|
+
cause
|
|
41
|
+
})));
|
|
42
|
+
const getCompletionSchema = (machine, configuration, path) => {
|
|
43
|
+
const node = getNode(machine, path);
|
|
44
|
+
if (node.type === "compound") {
|
|
45
|
+
const child = getActiveChildPath(machine, configuration, path);
|
|
46
|
+
if (child === undefined) {
|
|
47
|
+
throw new Error(`Machine expected completed state "${path}" to have an active child`);
|
|
48
|
+
}
|
|
49
|
+
return getCompletionSchema(machine, configuration, child);
|
|
50
|
+
}
|
|
51
|
+
return node.output ?? Schema.Void;
|
|
52
|
+
};
|
|
53
|
+
/** Defensively validates and normalizes an in-memory logical snapshot. Unlike
|
|
54
|
+
* the transport decoder this consumes decoded schema values. */
|
|
55
|
+
export const normalizeSnapshotEffect = (machine, snapshot) => Effect.gen(function* () {
|
|
56
|
+
const configuration = yield* normalizeConfigurationEffect(machine, snapshot);
|
|
57
|
+
const outputs = new Map();
|
|
58
|
+
const completionPaths = new Set();
|
|
59
|
+
const completions = snapshot.completed ?? [];
|
|
60
|
+
if (!Array.isArray(completions)) {
|
|
61
|
+
throw new Error("Machine snapshot completion metadata must be an array");
|
|
62
|
+
}
|
|
63
|
+
for (const completion of completions) {
|
|
64
|
+
if (typeof completion !== "object" || completion === null ||
|
|
65
|
+
typeof completion.path !== "string") {
|
|
66
|
+
throw new Error("Machine snapshot contains malformed completion metadata");
|
|
67
|
+
}
|
|
68
|
+
const path = completion.path;
|
|
69
|
+
if (completionPaths.has(path)) {
|
|
70
|
+
throw new Error(`Machine snapshot contains duplicate completion "${path}"`);
|
|
71
|
+
}
|
|
72
|
+
if (!configuration.active.has(path) || !isActiveFinalNode(machine, configuration, path)) {
|
|
73
|
+
throw new Error(`Machine snapshot contains invalid completion "${path}"`);
|
|
74
|
+
}
|
|
75
|
+
completionPaths.add(path);
|
|
76
|
+
outputs.set(path, yield* decodeBoundary(machine, getCompletionSchema(machine, configuration, path), completion.output, {
|
|
77
|
+
boundary: "output",
|
|
78
|
+
state: path
|
|
79
|
+
}));
|
|
80
|
+
}
|
|
81
|
+
return snapshotFromConfiguration(machine, { ...configuration, outputs });
|
|
82
|
+
}).pipe(Effect.catchCause((cause) => failDecodeCause(machine, cause)));
|
|
83
|
+
const validateEncodedConfiguration = (machine, configuration) => {
|
|
84
|
+
const snapshot = snapshotFromConfiguration(machine, configuration);
|
|
85
|
+
const normalized = configurationFromSnapshot(machine, snapshot);
|
|
86
|
+
if (normalized.active.size !== configuration.active.size ||
|
|
87
|
+
Array.from(configuration.active).some((path) => !normalized.active.has(path))) {
|
|
88
|
+
throw new Error("Machine encoded snapshot contains states outside its active configuration");
|
|
89
|
+
}
|
|
90
|
+
return snapshot;
|
|
91
|
+
};
|
|
92
|
+
const failEncodeCause = (machine, cause) => {
|
|
93
|
+
const error = Cause.findErrorOption(cause);
|
|
94
|
+
return Option.isSome(error) && error.value instanceof MachineSchemaEncodeError
|
|
95
|
+
? Effect.fail(error.value)
|
|
96
|
+
: Effect.fail(new MachineSchemaEncodeError({
|
|
97
|
+
machineId: machine.id,
|
|
98
|
+
boundary: "configuration",
|
|
99
|
+
cause
|
|
100
|
+
}));
|
|
101
|
+
};
|
|
102
|
+
const failDecodeCause = (machine, cause) => {
|
|
103
|
+
const error = Cause.findErrorOption(cause);
|
|
104
|
+
return Option.isSome(error) && error.value instanceof MachineSchemaDecodeError
|
|
105
|
+
? Effect.fail(error.value)
|
|
106
|
+
: Effect.fail(new MachineSchemaDecodeError({
|
|
107
|
+
machineId: machine.id,
|
|
108
|
+
boundary: "configuration",
|
|
109
|
+
cause
|
|
110
|
+
}));
|
|
111
|
+
};
|
|
112
|
+
export const encodeSnapshot = (machine, snapshot) => Effect.gen(function* () {
|
|
113
|
+
const configuration = yield* normalizeConfigurationEffect(machine, snapshot).pipe(Effect.mapError((error) => new MachineSchemaEncodeError({
|
|
114
|
+
machineId: machine.id,
|
|
115
|
+
boundary: error.boundary === "state" || error.boundary === "history" ? error.boundary : "configuration",
|
|
116
|
+
...(error.state === undefined ? {} : { state: error.state }),
|
|
117
|
+
cause: error.cause
|
|
118
|
+
})));
|
|
119
|
+
const completionPaths = new Set();
|
|
120
|
+
for (const completion of snapshot.completed ?? []) {
|
|
121
|
+
if (completionPaths.has(completion.path)) {
|
|
122
|
+
throw new Error(`Machine snapshot contains duplicate completion "${completion.path}"`);
|
|
123
|
+
}
|
|
124
|
+
if (!configuration.active.has(completion.path) || !isActiveFinalNode(machine, configuration, completion.path)) {
|
|
125
|
+
throw new Error(`Machine snapshot contains invalid completion "${completion.path}"`);
|
|
126
|
+
}
|
|
127
|
+
completionPaths.add(completion.path);
|
|
128
|
+
}
|
|
129
|
+
const active = [];
|
|
130
|
+
for (const path of Array.from(configuration.active).sort((left, right) => compareDocumentOrder(machine, left, right))) {
|
|
131
|
+
const node = getNode(machine, path);
|
|
132
|
+
active.push({
|
|
133
|
+
path,
|
|
134
|
+
value: yield* encodeBoundary(machine, getStateNodeSchema(node), getActiveValue(configuration, path), {
|
|
135
|
+
boundary: "state",
|
|
136
|
+
state: path
|
|
137
|
+
})
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
const completed = [];
|
|
141
|
+
for (const [path, output] of Array.from(configuration.outputs).sort(([left], [right]) => compareDocumentOrder(machine, left, right))) {
|
|
142
|
+
if (!configuration.active.has(path) || !isActiveFinalNode(machine, configuration, path)) {
|
|
143
|
+
throw new Error(`Machine encoded snapshot contains invalid completion "${path}"`);
|
|
144
|
+
}
|
|
145
|
+
const encodedOutput = yield* encodeBoundary(machine, getCompletionSchema(machine, configuration, path), output, {
|
|
146
|
+
boundary: "output",
|
|
147
|
+
state: path
|
|
148
|
+
});
|
|
149
|
+
completed.push({
|
|
150
|
+
path,
|
|
151
|
+
...(encodedOutput === undefined ? {} : { output: encodedOutput })
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
const history = {};
|
|
155
|
+
for (const [historyPath, record] of Array.from(configuration.history).sort(([left], [right]) => left.localeCompare(right))) {
|
|
156
|
+
const historyNode = machine.stateNodes.byPath.get(historyPath);
|
|
157
|
+
if (historyNode === undefined || historyNode.type !== "history" || historyNode.parent !== record.parent ||
|
|
158
|
+
historyNode.history !== record.mode) {
|
|
159
|
+
return yield* Effect.fail(new MachineSchemaEncodeError({
|
|
160
|
+
machineId: machine.id,
|
|
161
|
+
boundary: "history",
|
|
162
|
+
state: historyPath,
|
|
163
|
+
cause: Cause.die(new Error(`Machine snapshot contains invalid history record "${historyPath}"`))
|
|
164
|
+
}));
|
|
165
|
+
}
|
|
166
|
+
try {
|
|
167
|
+
validateHistoryRecordControl(machine, record);
|
|
168
|
+
}
|
|
169
|
+
catch (cause) {
|
|
170
|
+
return yield* Effect.fail(new MachineSchemaEncodeError({
|
|
171
|
+
machineId: machine.id,
|
|
172
|
+
boundary: "history",
|
|
173
|
+
state: historyPath,
|
|
174
|
+
cause: Cause.die(cause)
|
|
175
|
+
}));
|
|
176
|
+
}
|
|
177
|
+
const encodedValues = {};
|
|
178
|
+
for (const path of record.active) {
|
|
179
|
+
const stateNode = machine.stateNodes.byPath.get(path);
|
|
180
|
+
if (stateNode === undefined || stateNode.type === "history" || stateNode.type === "choice" ||
|
|
181
|
+
!record.values.has(path) ||
|
|
182
|
+
!(isPathInSubtree(path, record.parent) || getPathToRoot(machine, record.parent).includes(path))) {
|
|
183
|
+
return yield* Effect.fail(new MachineSchemaEncodeError({
|
|
184
|
+
machineId: machine.id,
|
|
185
|
+
boundary: "history",
|
|
186
|
+
state: path,
|
|
187
|
+
cause: Cause.die(new Error(`Machine snapshot contains invalid remembered state "${path}"`))
|
|
188
|
+
}));
|
|
189
|
+
}
|
|
190
|
+
encodedValues[path] = yield* encodeBoundary(machine, getStateNodeSchema(stateNode), record.values.get(path), { boundary: "history", state: path });
|
|
191
|
+
}
|
|
192
|
+
if (record.values.size !== record.active.size) {
|
|
193
|
+
return yield* Effect.fail(new MachineSchemaEncodeError({
|
|
194
|
+
machineId: machine.id,
|
|
195
|
+
boundary: "history",
|
|
196
|
+
state: historyPath,
|
|
197
|
+
cause: Cause.die(new Error(`Machine history record "${historyPath}" contains values outside its paths`))
|
|
198
|
+
}));
|
|
199
|
+
}
|
|
200
|
+
history[historyPath] = {
|
|
201
|
+
mode: record.mode,
|
|
202
|
+
active: Array.from(record.active).sort((left, right) => compareDocumentOrder(machine, left, right)),
|
|
203
|
+
values: encodedValues
|
|
204
|
+
};
|
|
205
|
+
}
|
|
206
|
+
return {
|
|
207
|
+
_tag: "MachineSnapshot",
|
|
208
|
+
active,
|
|
209
|
+
...(completed.length === 0 ? {} : { completed }),
|
|
210
|
+
...(Object.keys(history).length === 0 ? {} : { history })
|
|
211
|
+
};
|
|
212
|
+
}).pipe(Effect.catchCause((cause) => failEncodeCause(machine, cause)));
|
|
213
|
+
export const decodeSnapshot = (machine, encoded) => Effect.gen(function* () {
|
|
214
|
+
const decoded = yield* Schema.decodeUnknownEffect(EncodedSnapshotSchema)(encoded).pipe(Effect.mapError((cause) => new MachineSchemaDecodeError({
|
|
215
|
+
machineId: machine.id,
|
|
216
|
+
boundary: "configuration",
|
|
217
|
+
cause
|
|
218
|
+
})));
|
|
219
|
+
const active = new Set();
|
|
220
|
+
const values = new Map();
|
|
221
|
+
for (const entry of decoded.active) {
|
|
222
|
+
if (active.has(entry.path)) {
|
|
223
|
+
throw new Error(`Machine encoded snapshot contains duplicate state "${entry.path}"`);
|
|
224
|
+
}
|
|
225
|
+
const node = getNode(machine, entry.path);
|
|
226
|
+
active.add(entry.path);
|
|
227
|
+
values.set(entry.path, yield* decodeEncodedBoundary(machine, getStateNodeSchema(node), entry.value, {
|
|
228
|
+
boundary: "state",
|
|
229
|
+
state: entry.path
|
|
230
|
+
}));
|
|
231
|
+
}
|
|
232
|
+
const history = new Map();
|
|
233
|
+
for (const [historyPath, encodedRecord] of Object.entries(decoded.history ?? {})) {
|
|
234
|
+
const historyNode = machine.stateNodes.byPath.get(historyPath);
|
|
235
|
+
if (historyNode === undefined || historyNode.type !== "history" || historyNode.parent === undefined ||
|
|
236
|
+
historyNode.history !== encodedRecord.mode) {
|
|
237
|
+
return yield* Effect.fail(new MachineSchemaDecodeError({
|
|
238
|
+
machineId: machine.id,
|
|
239
|
+
boundary: "history",
|
|
240
|
+
state: historyPath,
|
|
241
|
+
cause: Cause.die(new Error(`Machine encoded snapshot contains invalid history record "${historyPath}"`))
|
|
242
|
+
}));
|
|
243
|
+
}
|
|
244
|
+
const rememberedActive = new Set();
|
|
245
|
+
const rememberedValues = new Map();
|
|
246
|
+
for (const path of encodedRecord.active) {
|
|
247
|
+
if (rememberedActive.has(path)) {
|
|
248
|
+
return yield* Effect.fail(new MachineSchemaDecodeError({
|
|
249
|
+
machineId: machine.id,
|
|
250
|
+
boundary: "history",
|
|
251
|
+
state: path,
|
|
252
|
+
cause: Cause.die(new Error(`Machine encoded history contains duplicate state "${path}"`))
|
|
253
|
+
}));
|
|
254
|
+
}
|
|
255
|
+
const stateNode = machine.stateNodes.byPath.get(path);
|
|
256
|
+
if (stateNode === undefined || stateNode.type === "history" || stateNode.type === "choice" ||
|
|
257
|
+
!Object.prototype.hasOwnProperty.call(encodedRecord.values, path) ||
|
|
258
|
+
!(isPathInSubtree(path, historyNode.parent) || getPathToRoot(machine, historyNode.parent).includes(path))) {
|
|
259
|
+
return yield* Effect.fail(new MachineSchemaDecodeError({
|
|
260
|
+
machineId: machine.id,
|
|
261
|
+
boundary: "history",
|
|
262
|
+
state: path,
|
|
263
|
+
cause: Cause.die(new Error(`Machine encoded snapshot contains invalid remembered state "${path}"`))
|
|
264
|
+
}));
|
|
265
|
+
}
|
|
266
|
+
rememberedActive.add(path);
|
|
267
|
+
rememberedValues.set(path, yield* decodeEncodedBoundary(machine, getStateNodeSchema(stateNode), encodedRecord.values[path], {
|
|
268
|
+
boundary: "history",
|
|
269
|
+
state: path
|
|
270
|
+
}));
|
|
271
|
+
}
|
|
272
|
+
if (Object.keys(encodedRecord.values).length !== rememberedActive.size) {
|
|
273
|
+
return yield* Effect.fail(new MachineSchemaDecodeError({
|
|
274
|
+
machineId: machine.id,
|
|
275
|
+
boundary: "history",
|
|
276
|
+
state: historyPath,
|
|
277
|
+
cause: Cause.die(new Error(`Machine encoded history "${historyPath}" contains values outside its paths`))
|
|
278
|
+
}));
|
|
279
|
+
}
|
|
280
|
+
if (!rememberedActive.has(historyNode.parent)) {
|
|
281
|
+
return yield* Effect.fail(new MachineSchemaDecodeError({
|
|
282
|
+
machineId: machine.id,
|
|
283
|
+
boundary: "history",
|
|
284
|
+
state: historyPath,
|
|
285
|
+
cause: Cause.die(new Error(`Machine encoded history "${historyPath}" does not contain its parent state`))
|
|
286
|
+
}));
|
|
287
|
+
}
|
|
288
|
+
const record = {
|
|
289
|
+
mode: encodedRecord.mode,
|
|
290
|
+
parent: historyNode.parent,
|
|
291
|
+
active: rememberedActive,
|
|
292
|
+
values: rememberedValues
|
|
293
|
+
};
|
|
294
|
+
try {
|
|
295
|
+
validateHistoryRecordControl(machine, record);
|
|
296
|
+
}
|
|
297
|
+
catch (cause) {
|
|
298
|
+
return yield* Effect.fail(new MachineSchemaDecodeError({
|
|
299
|
+
machineId: machine.id,
|
|
300
|
+
boundary: "history",
|
|
301
|
+
state: historyPath,
|
|
302
|
+
cause: Cause.die(cause)
|
|
303
|
+
}));
|
|
304
|
+
}
|
|
305
|
+
history.set(historyPath, record);
|
|
306
|
+
}
|
|
307
|
+
const configuration = {
|
|
308
|
+
active,
|
|
309
|
+
values,
|
|
310
|
+
outputs: new Map(),
|
|
311
|
+
history
|
|
312
|
+
};
|
|
313
|
+
const snapshot = validateEncodedConfiguration(machine, configuration);
|
|
314
|
+
const completions = [];
|
|
315
|
+
const completionPaths = new Set();
|
|
316
|
+
for (const completion of decoded.completed ?? []) {
|
|
317
|
+
if (completionPaths.has(completion.path)) {
|
|
318
|
+
throw new Error(`Machine encoded snapshot contains duplicate completion "${completion.path}"`);
|
|
319
|
+
}
|
|
320
|
+
if (!active.has(completion.path) || !isActiveFinalNode(machine, configuration, completion.path)) {
|
|
321
|
+
throw new Error(`Machine encoded snapshot contains invalid completion "${completion.path}"`);
|
|
322
|
+
}
|
|
323
|
+
completionPaths.add(completion.path);
|
|
324
|
+
completions.push({
|
|
325
|
+
path: completion.path,
|
|
326
|
+
output: yield* decodeEncodedBoundary(machine, getCompletionSchema(machine, configuration, completion.path), completion.output, {
|
|
327
|
+
boundary: "output",
|
|
328
|
+
state: completion.path
|
|
329
|
+
})
|
|
330
|
+
});
|
|
331
|
+
}
|
|
332
|
+
if (completions.length > 0) {
|
|
333
|
+
;
|
|
334
|
+
snapshot.completed = completions;
|
|
335
|
+
}
|
|
336
|
+
return snapshot;
|
|
337
|
+
}).pipe(Effect.catchCause((cause) => failDecodeCause(machine, cause)));
|
|
338
|
+
//# sourceMappingURL=serialization.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serialization.js","sourceRoot":"","sources":["../../../src/internal/machine/serialization.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare const StateNodePropertyPolicy: {
|
|
2
|
+
readonly atomic: readonly ["schema", "type"];
|
|
3
|
+
readonly final: readonly ["schema", "type", "output"];
|
|
4
|
+
readonly compound: readonly ["schema", "type", "initial", "states"];
|
|
5
|
+
readonly parallel: readonly ["schema", "type", "output", "states"];
|
|
6
|
+
readonly history: readonly ["type", "history", "annotations"];
|
|
7
|
+
readonly choice: readonly ["type", "annotations"];
|
|
8
|
+
};
|
|
9
|
+
export declare const PseudoStateAnnotationProperties: readonly ["title", "description", "documentation"];
|
|
10
|
+
export type StateNodeKind = keyof typeof StateNodePropertyPolicy;
|
|
11
|
+
export type AllowedStateNodeProperty<Kind extends StateNodeKind> = (typeof StateNodePropertyPolicy)[Kind][number];
|
|
12
|
+
export type AllowedPseudoStateAnnotationProperty = (typeof PseudoStateAnnotationProperties)[number];
|
|
13
|
+
export type StateDefinitionBoundary = "Machine.defineStates" | "Machine.make";
|
|
14
|
+
export declare const validateStateDefinitions: (states: unknown, boundary: StateDefinitionBoundary) => void;
|
|
15
|
+
//# sourceMappingURL=stateDefinition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stateDefinition.d.ts","sourceRoot":"","sources":["../../../src/internal/machine/stateDefinition.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,uBAAuB;;;;;;;CAO1B,CAAA;AAEV,eAAO,MAAM,+BAA+B,oDAAqD,CAAA;AAEjG,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,uBAAuB,CAAA;AAEhE,MAAM,MAAM,wBAAwB,CAAC,IAAI,SAAS,aAAa,IAAI,CAAC,OAAO,uBAAuB,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjH,MAAM,MAAM,oCAAoC,GAAG,CAAC,OAAO,+BAA+B,CAAC,CAAC,MAAM,CAAC,CAAA;AAEnG,MAAM,MAAM,uBAAuB,GAAG,sBAAsB,GAAG,cAAc,CAAA;AAsP7E,eAAO,MAAM,wBAAwB,GACnC,QAAQ,OAAO,EACf,UAAU,uBAAuB,KAChC,IAAsD,CAAA"}
|