@typeonce/effect-machine 0.6.0 → 0.7.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 +4 -3
- package/dist/Machine.d.ts +24 -6
- package/dist/Machine.d.ts.map +1 -1
- package/dist/Machine.js.map +1 -1
- package/dist/internal/machine/atom.d.ts +5 -0
- package/dist/internal/machine/atom.d.ts.map +1 -1
- package/dist/internal/machine/atom.js +6 -3
- package/dist/internal/machine/atom.js.map +1 -1
- package/dist/internal/machine/machine.d.ts.map +1 -1
- package/dist/internal/machine/machine.js +1 -1
- package/dist/internal/machine/machine.js.map +1 -1
- package/dist/unstable/reactivity/AtomMachine.d.ts +26 -0
- package/dist/unstable/reactivity/AtomMachine.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomMachine.js +23 -0
- package/dist/unstable/reactivity/AtomMachine.js.map +1 -1
- package/docs/agent-guide.md +14 -0
- package/package.json +5 -5
- package/src/Machine.ts +6909 -0
- package/src/index.ts +1 -0
- package/src/internal/machine/activities.ts +108 -0
- package/src/internal/machine/atom.ts +684 -0
- package/src/internal/machine/cluster.ts +394 -0
- package/src/internal/machine/command.ts +58 -0
- package/src/internal/machine/commandRuntime.ts +43 -0
- package/src/internal/machine/configuration.ts +1331 -0
- package/src/internal/machine/errors.ts +87 -0
- package/src/internal/machine/executionPlan.ts +996 -0
- package/src/internal/machine/invocation.ts +119 -0
- package/src/internal/machine/machine.ts +1750 -0
- package/src/internal/machine/planner.ts +1933 -0
- package/src/internal/machine/process.ts +906 -0
- package/src/internal/machine/protocol.ts +322 -0
- package/src/internal/machine/readiness.ts +10 -0
- package/src/internal/machine/runtime.ts +2512 -0
- package/src/internal/machine/serialization.ts +498 -0
- package/src/internal/machine/stateDefinition.ts +270 -0
- package/src/internal/machine/symbols.ts +2 -0
- package/src/internal/machine/topology.ts +479 -0
- package/src/internal/testing/machine/arbitrary.ts +102 -0
- package/src/internal/testing/machine/exploration.ts +331 -0
- package/src/internal/testing/machine/finiteModel.ts +1498 -0
- package/src/internal/testing/machine/invariant.ts +372 -0
- package/src/internal/testing/machine/probe.ts +79 -0
- package/src/internal/testing/machine/referenceModel.ts +1505 -0
- package/src/internal/testing/machine/runtime.ts +1710 -0
- package/src/internal/testing/machine/runtimeInvariant.ts +486 -0
- package/src/internal/testing/machine/trace.ts +150 -0
- package/src/internal/testing/machine/verification.ts +1890 -0
- package/src/testing/MachineTest.ts +2067 -0
- package/src/testing/index.ts +7 -0
- package/src/unstable/cluster/ClusterMachine.ts +390 -0
- package/src/unstable/cluster/index.ts +1 -0
- package/src/unstable/reactivity/AtomMachine.ts +696 -0
- package/src/unstable/reactivity/index.ts +1 -0
package/README.md
CHANGED
|
@@ -204,9 +204,10 @@ Binding a shared runtime once is the canonical form for service-backed
|
|
|
204
204
|
applications. Service-free machines can use `AtomMachine.make(Counter)`.
|
|
205
205
|
|
|
206
206
|
The bridge exposes `ref`, `snapshot`, `state`, fail-aware `result`, writable
|
|
207
|
-
`send` and `stop` atoms, and `child(descriptor)`. Use `AtomMachine.select
|
|
208
|
-
`AtomMachine.matches` for typed,
|
|
209
|
-
using `@effect/atom-react` need
|
|
207
|
+
`send` and `stop` atoms, and `child(descriptor)`. Use `AtomMachine.select`,
|
|
208
|
+
`AtomMachine.selectSnapshot`, and `AtomMachine.matches` for typed,
|
|
209
|
+
equality-aware derivations. React applications using `@effect/atom-react` need
|
|
210
|
+
a `RegistryProvider`.
|
|
210
211
|
|
|
211
212
|
## Persistence
|
|
212
213
|
|
package/dist/Machine.d.ts
CHANGED
|
@@ -1423,11 +1423,17 @@ export declare namespace Machine {
|
|
|
1423
1423
|
/** Type-safe builders for constructing valid initial snapshots. */
|
|
1424
1424
|
readonly initial: InitialBuilder<States>;
|
|
1425
1425
|
/**
|
|
1426
|
-
* Returns the decoded value for an active state path.
|
|
1426
|
+
* Returns the decoded value for an active state path. The supplied
|
|
1427
|
+
* snapshot may be a complete root snapshot or a snapshot previously
|
|
1428
|
+
* extracted from this definition. Extracted snapshots accept only their
|
|
1429
|
+
* own absolute path and descendant paths.
|
|
1427
1430
|
*
|
|
1428
1431
|
* @since 0.4.0
|
|
1429
1432
|
*/
|
|
1430
|
-
readonly get:
|
|
1433
|
+
readonly get: {
|
|
1434
|
+
<Path extends StateIdentifier<States>>(snapshot: Snapshot<States>, path: Path): Option.Option<StateByIdentifier<States, Path>>;
|
|
1435
|
+
<const From extends StateIdentifier<States>, const Path extends StateIdentifier<States>>(snapshot: SnapshotByIdentifier<States, From>, path: Path & (Path extends NoInfer<From> | `${NoInfer<From>}.${string}` ? unknown : never)): Option.Option<StateByIdentifier<States, Path>>;
|
|
1436
|
+
};
|
|
1431
1437
|
/**
|
|
1432
1438
|
* Returns the decoded value for an active state path together with all of
|
|
1433
1439
|
* its active parent values.
|
|
@@ -1440,17 +1446,29 @@ export declare namespace Machine {
|
|
|
1440
1446
|
*/
|
|
1441
1447
|
readonly getWithParents: <Path extends StateIdentifier<States>>(snapshot: Snapshot<States>, path: Path) => Option.Option<StateWithParents<States, Path>>;
|
|
1442
1448
|
/**
|
|
1443
|
-
* Returns the snapshot for an active state path.
|
|
1449
|
+
* Returns the snapshot for an active state path. The supplied snapshot may
|
|
1450
|
+
* be a complete root snapshot or a snapshot previously extracted from this
|
|
1451
|
+
* definition. Extracted snapshots accept only their own absolute path and
|
|
1452
|
+
* descendant paths.
|
|
1444
1453
|
*
|
|
1445
1454
|
* @since 0.4.0
|
|
1446
1455
|
*/
|
|
1447
|
-
readonly getSnapshot:
|
|
1456
|
+
readonly getSnapshot: {
|
|
1457
|
+
<Path extends StateIdentifier<States>>(snapshot: Snapshot<States>, path: Path): Option.Option<SnapshotByIdentifier<States, Path>>;
|
|
1458
|
+
<const From extends StateIdentifier<States>, const Path extends StateIdentifier<States>>(snapshot: SnapshotByIdentifier<States, From>, path: Path & (Path extends NoInfer<From> | `${NoInfer<From>}.${string}` ? unknown : never)): Option.Option<SnapshotByIdentifier<States, Path>>;
|
|
1459
|
+
};
|
|
1448
1460
|
/**
|
|
1449
|
-
* Returns whether a state path is active in the snapshot.
|
|
1461
|
+
* Returns whether a state path is active in the snapshot. The supplied
|
|
1462
|
+
* snapshot may be a complete root snapshot or a snapshot previously
|
|
1463
|
+
* extracted from this definition. Extracted snapshots accept only their
|
|
1464
|
+
* own absolute path and descendant paths.
|
|
1450
1465
|
*
|
|
1451
1466
|
* @since 0.4.0
|
|
1452
1467
|
*/
|
|
1453
|
-
readonly matches:
|
|
1468
|
+
readonly matches: {
|
|
1469
|
+
<Path extends StateIdentifier<States>>(snapshot: Snapshot<States>, path: Path): boolean;
|
|
1470
|
+
<const From extends StateIdentifier<States>, const Path extends StateIdentifier<States>>(snapshot: SnapshotByIdentifier<States, From>, path: Path & (Path extends NoInfer<From> | `${NoInfer<From>}.${string}` ? unknown : never)): boolean;
|
|
1471
|
+
};
|
|
1454
1472
|
}
|
|
1455
1473
|
/**
|
|
1456
1474
|
* Validates the nested shape of state schema definitions.
|