From 8ecb7600d4cc4a550686429eff7c8dcb0fad1c2a Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 19 Aug 2026 14:05:42 +0000 Subject: [PATCH] Version Packages --- .changeset/clean-dodos-extract.md | 7 ------- .changeset/fluent-state-invocations.md | 18 ------------------ CHANGELOG.md | 24 ++++++++++++++++++++++++ package.json | 2 +- 4 files changed, 25 insertions(+), 26 deletions(-) delete mode 100644 .changeset/clean-dodos-extract.md delete mode 100644 .changeset/fluent-state-invocations.md diff --git a/.changeset/clean-dodos-extract.md b/.changeset/clean-dodos-extract.md deleted file mode 100644 index 4c22c39..0000000 --- a/.changeset/clean-dodos-extract.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@typeonce/effect-machine": minor ---- - -Add consumer-facing state and startup-input extractors. `Machine.Snapshot`, `Machine.Value`, and `Machine.SnapshotAt` accept either the object returned by `Machine.states` or a machine definition, while preserving exact path validation and excluding control-only paths from `Value`. - -`Machine.Machine.Input` now extracts the decoded startup value and is `never` when the machine uses `Schema.Void`. Code that needs the startup schema should migrate from `Machine.Machine.Input` to `Machine.Machine.InputSchema`; code that previously used `Machine.Machine.Input["Type"]` can use `Machine.Machine.Input` directly. diff --git a/.changeset/fluent-state-invocations.md b/.changeset/fluent-state-invocations.md deleted file mode 100644 index e261ecd..0000000 --- a/.changeset/fluent-state-invocations.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -"@typeonce/effect-machine": minor ---- - -Replace `Machine.invoke` and its object-configuration helper types with state-local fluent invocation chains. Select an Effect, Stream, timer, process logic, or child from the handler's `from` parameter, then handle every reachable lifecycle channel before returning the chain: - -```ts -machine.handle({ - Loading: { - invoke: (from) => - from.effect("load", () => loadUser()) - .onDone((to) => to.full.Ready()) - .onFailure((to) => to.full.Failed()) - } -}) -``` - -Return an array of completed chains for multiple activities. Sources and child descriptors remain reusable, while keeping the invocation declaration local preserves exact owner-state, event, parent, output, failure, element, snapshot, and service inference. diff --git a/CHANGELOG.md b/CHANGELOG.md index 53033a5..860f2f9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,29 @@ # @typeonce/effect-machine +## 0.18.0 + +### Minor Changes + +- 9e54de3: Add consumer-facing state and startup-input extractors. `Machine.Snapshot`, `Machine.Value`, and `Machine.SnapshotAt` accept either the object returned by `Machine.states` or a machine definition, while preserving exact path validation and excluding control-only paths from `Value`. + + `Machine.Machine.Input` now extracts the decoded startup value and is `never` when the machine uses `Schema.Void`. Code that needs the startup schema should migrate from `Machine.Machine.Input` to `Machine.Machine.InputSchema`; code that previously used `Machine.Machine.Input["Type"]` can use `Machine.Machine.Input` directly. + +- d6d19c1: Replace `Machine.invoke` and its object-configuration helper types with state-local fluent invocation chains. Select an Effect, Stream, timer, process logic, or child from the handler's `from` parameter, then handle every reachable lifecycle channel before returning the chain: + + ```ts + machine.handle({ + Loading: { + invoke: (from) => + from + .effect("load", () => loadUser()) + .onDone((to) => to.full.Ready()) + .onFailure((to) => to.full.Failed()) + } + }) + ``` + + Return an array of completed chains for multiple activities. Sources and child descriptors remain reusable, while keeping the invocation declaration local preserves exact owner-state, event, parent, output, failure, element, snapshot, and service inference. + ## 0.17.0 ### Minor Changes diff --git a/package.json b/package.json index c4bc528..e20f4dd 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@typeonce/effect-machine", - "version": "0.17.0", + "version": "0.18.0", "description": "Schema-first state machines and statecharts for Effect", "author": "Sandro Maglione", "repository": {