@orkestrel/workflow 0.0.7 → 0.0.8

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 CHANGED
@@ -1,14 +1,8 @@
1
1
  # @orkestrel/workflow
2
2
 
3
- A typed workflow engine for the `@orkestrel` line a serializable
4
- `Workflow → Phase → Task` tree that a UI or an LLM authors as pure JSON, and
5
- a PURE `WorkflowRunner` engine executes by COMPOSING the shipped substrate (a
6
- per-phase `Runner`, `Abort`, `Timeout`, `Budget`, and a cooperative
7
- cross-environment `Scheduler`) rather than re-implementing its own
8
- concurrency / retry / abort machinery. Each task's `run` is a plain
9
- behavior-name string resolved once into a `handler`; wiring a task to a tool
10
- or an agent is an opt-in adapter shipped by the separate `@orkestrel/tool`
11
- package, composed into the caller's own `functions` registry.
3
+ A typed, host-independent workflow engine for the `@orkestrel` line. It keeps
4
+ work as a serializable `Workflow → Phase → Task` tree and executes task behavior
5
+ through a caller-supplied function registry on a cooperative scheduler.
12
6
 
13
7
  ## Install
14
8
 
@@ -25,30 +19,29 @@ npm install @orkestrel/workflow
25
19
 
26
20
  ## Status
27
21
 
28
- Pre-release (`0.0.1`): the definition contract, the live entity tree, the
29
- pure-engine runner (a `run`-string / `handler` model the opt-in tool/agent
30
- adapters and the depth/cycle-bounded agent-native recursion now ship in the
31
- separate `@orkestrel/tool` package), the durable `WorkflowStore`
32
- (in-memory + driver-pluggable), and the cooperative `Scheduler` (the
33
- cross-environment default plus the browser and Node environment backends)
34
- are all implemented and tested, but the public API is still unstable and
35
- may change without notice. The live tree also supports runtime-only
36
- `pause` / `resume` / `wait` (at both the workflow and phase tiers) plus a
37
- gated `add` / `remove` / `move` / `update` structural-mutation API
38
- (pending-suffix positions, append-only on a running phase), a hard
39
- `destroy` teardown alongside the runner's existing graceful `stop`, and a
40
- `WorkflowRunnerInterface.execute` overload that drives an already-built,
41
- caller-owned live tree instead of only building one from a definition. See
42
- [guides/src/workflow.md](./guides/src/workflow.md) for the full documented
43
- surface.
22
+ Pre-release (`0.0.7`): the definition contract, live entity tree, runner,
23
+ cooperative schedulers, and durable stores are implemented and tested. A task
24
+ can publish its current note, progress, operations, constraints, pulse, and
25
+ signal; observers can derive silence without polling. Workflow, phase, and task
26
+ execution can pause, resume, wait, skip, stop, and destroy according to the
27
+ documented lifecycle.
28
+
29
+ Snapshots are exact JSON values with owned nested data. Attempts, checkpoints,
30
+ settlements, and final state can be persisted through memory or database-backed
31
+ stores, then explicitly restored or recovered without reusing a consumed
32
+ attempt. Runtime pause gates are intentionally not persisted.
33
+
34
+ Provider sessions, external processes, MCP projection, journals, leases, and
35
+ distributed fencing remain integration concerns rather than core workflow
36
+ behavior. See [guides/src/workflow.md](./guides/src/workflow.md) for the complete
37
+ shipped contract and [PROPOSAL.md](./PROPOSAL.md) for the proposed integration
38
+ architecture.
44
39
 
45
40
  ## Package
46
41
 
47
- Published as three environment-scoped entry points per the `exports` field
48
- in `package.json`: `.` (the shared, environment-agnostic core — the
49
- definition/entity/runner surface plus the cross-environment `Scheduler`
50
- default), `./browser` (adds the browser-native scheduler backends), and
51
- `./server` (adds the Node-native scheduler backend). Core ships dual
42
+ Published as three environment-scoped entry points: `.` provides the shared
43
+ environment-agnostic core and default scheduler, `./browser` adds browser-native
44
+ schedulers, and `./server` adds the Node-native scheduler. Core ships dual
52
45
  ESM+CJS builds; `./browser` is ESM-only.
53
46
 
54
47
  ## License