@eduardorenani/atlasjs 0.1.0-alpha.2 → 0.1.0-alpha.4

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
@@ -27,8 +27,7 @@ npm install @eduardorenani/atlasjs@alpha xstate
27
27
  A trivial agent with two modes: `listening` waits for a user message, `answering` calls an LLM and routes back to `listening`.
28
28
 
29
29
  ```ts
30
- import { createActor } from "xstate";
31
- import { defineMode, defineAgent } from "@eduardorenani/atlasjs";
30
+ import { defineMode, defineAgent, startAgent } from "@eduardorenani/atlasjs";
32
31
 
33
32
  type Ctx = { question: string; answer: string };
34
33
  type Ev = { type: "ASK"; question: string };
@@ -79,19 +78,74 @@ const machine = defineAgent<
79
78
  modes: { listening, answering },
80
79
  });
81
80
 
82
- const actor = createActor(machine).start();
81
+ const actor = startAgent<Ctx, Ev>(machine);
83
82
  actor.send({ type: "ASK", question: "What is a mode?" });
84
83
  ```
85
84
 
86
85
  `behavior` returns `{ outcome, payload }`. The route on `achieved` is the **only** way out of a successful run — there is no untyped escape hatch.
87
86
 
87
+ `startAgent` is the runtime boundary: hosts never import from `xstate` directly. The returned actor exposes `send`, `stop`, and `getSnapshot` — nothing else from XState's surface leaks out.
88
+
89
+ ## Multi-turn agents (snapshot rehydration)
90
+
91
+ For agents that span multiple turns, `actor.getSnapshot()` returns an opaque `AgentSnapshot<Ctx>` that round-trips through `JSON.stringify` / `JSON.parse`. Feed it back as `startAgent({ snapshot })` next turn and the agent resumes mid-conversation — including `local` slots declared on `defineCompoundMode`'s `context`.
92
+
93
+ ```ts
94
+ async function runTurn(
95
+ text: string,
96
+ snapshot?: AgentSnapshot<Ctx>,
97
+ ): Promise<AgentSnapshot<Ctx>> {
98
+ let resolveReady: (() => void) | null = null;
99
+ const actor = startAgent<Ctx, Ev>(machine, {
100
+ snapshot,
101
+ inspect: (e) => {
102
+ // Atlas-vocabulary event. `from` / `to` are dot-joined mode paths
103
+ // (e.g. "socratic.teaching"). Phase 1 emits `transition` only.
104
+ if (e.to === "listening" && resolveReady) {
105
+ const r = resolveReady;
106
+ resolveReady = null;
107
+ r();
108
+ }
109
+ },
110
+ });
111
+ const ready = new Promise<void>((r) => { resolveReady = r; });
112
+ actor.send({ type: "ASK", question: text });
113
+ await ready;
114
+ const next = actor.getSnapshot();
115
+ actor.stop();
116
+ return next;
117
+ }
118
+ ```
119
+
120
+ The canonical multi-turn host is one `runTurn` call per incoming message: load the previous snapshot from storage, run one turn, persist the new snapshot. `examples/zoe/` ships this end-to-end with a file-backed session store. Contract details in [`docs/specs/009-snapshot-aware-rehydration.md`](https://github.com/EduardoRenani/atlas/blob/main/docs/specs/009-snapshot-aware-rehydration.md).
121
+
122
+ ### Fire-and-log via `onError`
123
+
124
+ When a `behavior` rejects and **no** `routes.error` entry catches it (absent route, no matched `when`, or matched `target: RE_THROW`), the rejection escapes the machine. `startAgent({ onError })` is the host-side hook — it fires precisely when XState would otherwise raise an uncaught error. Intra-machine recovery (`routes.error: { target: <sibling> }`) is unchanged and the host observes only the recovery transition through `inspect`.
125
+
126
+ ```ts
127
+ import { startAgent, type AgentErrorInfo } from "@eduardorenani/atlasjs";
128
+
129
+ startAgent<Ctx, Ev>(machine, {
130
+ onError: (info: AgentErrorInfo<Ctx>) => {
131
+ // info.error — raw rejection (unknown)
132
+ // info.modePath — dot-joined leaf path, e.g. "socratic.teaching"
133
+ // info.context — root context after any routes.error.assign ran
134
+ // info.snapshot — AgentSnapshot pointing at the failed leaf
135
+ logger.error({ err: info.error, modePath: info.modePath, traceId }, "agent escape");
136
+ },
137
+ });
138
+ ```
139
+
140
+ `onError` is opt-in: when omitted, the wrapper makes no `subscribe` call and Node's default unhandled-rejection propagation applies (strictly additive — no migration). Full contract in [`docs/specs/010-error-channel.md`](https://github.com/EduardoRenani/atlas/blob/main/docs/specs/010-error-channel.md).
141
+
88
142
  ## The three constructors
89
143
 
90
144
  | Constructor | Purpose |
91
145
  | -------------------- | ------------------------------------------------------------------------- |
92
146
  | `defineMode` | A leaf mode. Pass `{ input, behavior, routes }` for active, `{ on }` for passive. Mixing is a compile error. |
93
147
  | `defineCompoundMode` | A composite of nested modes. Routes to `END` to exit; the enclosing scope's `onDone` picks the destination. |
94
- | `defineAgent` | The top-level entry. Compiles to an XState machine ready for `createActor`. |
148
+ | `defineAgent` | The top-level entry. Compiles to an XState machine; boot it with `startAgent`. |
95
149
 
96
150
  ## Concepts in 60 seconds
97
151
 
@@ -104,8 +158,8 @@ actor.send({ type: "ASK", question: "What is a mode?" });
104
158
  ## Where to go next
105
159
 
106
160
  - **API reference** — the type signatures and JSDoc in [`packages/atlas/src/types.ts`](https://github.com/EduardoRenani/atlas/blob/main/packages/atlas/src/types.ts) are the source of truth.
107
- - **Worked example** — [`examples/zoe/`](https://github.com/EduardoRenani/atlas/tree/main/examples/zoe) is a CLI agent that classifies user intent and dispatches across greetings / improvising / socratic modes.
108
- - **Specs** — the API contract lives in [`docs/specs/004-xstate-agent-wrapper.md`](https://github.com/EduardoRenani/atlas/blob/main/docs/specs/004-xstate-agent-wrapper.md), [`005-agent-deps-and-stringifiable-context.md`](https://github.com/EduardoRenani/atlas/blob/main/docs/specs/005-agent-deps-and-stringifiable-context.md), and [`006-modes-not-states.md`](https://github.com/EduardoRenani/atlas/blob/main/docs/specs/006-modes-not-states.md).
161
+ - **Worked example** — [`examples/zoe/`](https://github.com/EduardoRenani/atlas/tree/main/examples/zoe) is a CLI agent that classifies user intent and dispatches across greetings / improvising / socratic modes, and persists every turn via file-backed snapshots.
162
+ - **Specs** — the API contract lives in [`docs/specs/004-xstate-agent-wrapper.md`](https://github.com/EduardoRenani/atlas/blob/main/docs/specs/004-xstate-agent-wrapper.md), [`005-agent-deps-and-stringifiable-context.md`](https://github.com/EduardoRenani/atlas/blob/main/docs/specs/005-agent-deps-and-stringifiable-context.md), [`006-modes-not-states.md`](https://github.com/EduardoRenani/atlas/blob/main/docs/specs/006-modes-not-states.md), [`009-snapshot-aware-rehydration.md`](https://github.com/EduardoRenani/atlas/blob/main/docs/specs/009-snapshot-aware-rehydration.md) (the `startAgent` actor surface + multi-turn persistence contract), and [`010-error-channel.md`](https://github.com/EduardoRenani/atlas/blob/main/docs/specs/010-error-channel.md) (the host-side `onError` channel).
109
163
  - **Design decisions** — [`docs/design-decisions.md`](https://github.com/EduardoRenani/atlas/blob/main/docs/design-decisions.md) records the "why" behind the four-outcome contract, goal-bound exits, and the modes-not-states vocabulary.
110
164
 
111
165
  ## License
@@ -26,7 +26,10 @@ export type CompoundModeCarrier<TParentContext, TEvents extends {
26
26
  *
27
27
  * Children's effective context is `LocalContextOf<TParentContext, TCtx>`:
28
28
  * - With `context` supplied: `Pick<TParentContext, inherit[number]> & typeof local`.
29
- * Inherited keys are live-mirrored; locals are reset on every entry.
29
+ * Inherited keys are live-mirrored; locals are reset on every re-entry, but
30
+ * **NOT** on snapshot restore — when an actor is rehydrated via
31
+ * `startAgent({ snapshot })`, the persisted slot wins over the entry-reset
32
+ * (spec 009 §Persistence Contract).
30
33
  * - Without `context`: children see the full `TParentContext`.
31
34
  *
32
35
  * Children route out of the compound via `END` (defined in `./types.ts`); the
@@ -1 +1 @@
1
- {"version":3,"file":"defineCompoundMode.d.ts","sourceRoot":"","sources":["../src/defineCompoundMode.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EACR,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,QAAQ,EACX,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,mBAAmB,CAC3B,cAAc,EACd,OAAO,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAChC,QAAQ,GAAG,OAAO,EAClB,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAC7D;IACA,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiEG;AACH,wBAAgB,kBAAkB,CAC9B,cAAc,EACd,OAAO,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAChC,IAAI,SACE,eAAe,CACb,cAAc,EACd,aAAa,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,EAO5C,MAAM,CACT,GACC,SAAS,EACf,MAAM,SAAS,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,EAC7E,QAAQ,GAAG,SAAS,EACpB,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAE7D,MAAM,EAAE,kBAAkB,CAAC,cAAc,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,GACnF,YAAY,CAAC,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAMxD"}
1
+ {"version":3,"file":"defineCompoundMode.d.ts","sourceRoot":"","sources":["../src/defineCompoundMode.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EACR,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,QAAQ,EACX,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,mBAAmB,CAC3B,cAAc,EACd,OAAO,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAChC,QAAQ,GAAG,OAAO,EAClB,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAC7D;IACA,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoEG;AACH,wBAAgB,kBAAkB,CAC9B,cAAc,EACd,OAAO,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAChC,IAAI,SACE,eAAe,CACb,cAAc,EACd,aAAa,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,EAO5C,MAAM,CACT,GACC,SAAS,EACf,MAAM,SAAS,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,EAC7E,QAAQ,GAAG,SAAS,EACpB,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAE7D,MAAM,EAAE,kBAAkB,CAAC,cAAc,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,GACnF,YAAY,CAAC,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAMxD"}
@@ -22,7 +22,10 @@
22
22
  *
23
23
  * Children's effective context is `LocalContextOf<TParentContext, TCtx>`:
24
24
  * - With `context` supplied: `Pick<TParentContext, inherit[number]> & typeof local`.
25
- * Inherited keys are live-mirrored; locals are reset on every entry.
25
+ * Inherited keys are live-mirrored; locals are reset on every re-entry, but
26
+ * **NOT** on snapshot restore — when an actor is rehydrated via
27
+ * `startAgent({ snapshot })`, the persisted slot wins over the entry-reset
28
+ * (spec 009 §Persistence Contract).
26
29
  * - Without `context`: children see the full `TParentContext`.
27
30
  *
28
31
  * Children route out of the compound via `END` (defined in `./types.ts`); the
@@ -1 +1 @@
1
- {"version":3,"file":"defineCompoundMode.js","sourceRoot":"","sources":["../src/defineCompoundMode.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,EAAE;AACF,qEAAqE;AACrE,wFAAwF;AACxF,oEAAoE;AACpE,EAAE;AACF,wEAAwE;AACxE,oEAAoE;AACpE,4EAA4E;AAC5E,0DAA0D;AAC1D,EAAE;AACF,2EAA2E;AAC3E,8EAA8E;AAC9E,8EAA8E;AAC9E,4EAA4E;AAC5E,+DAA+D;AAC/D,+EAA+E;AAkC/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiEG;AACH,MAAM,UAAU,kBAAkB,CAoB9B,MAAkF;IAElF,MAAM,OAAO,GAAkE;QAC3E,MAAM,EAAE,UAAU;QAClB,MAAM;KACT,CAAC;IACF,OAAO,OAA4E,CAAC;AACxF,CAAC"}
1
+ {"version":3,"file":"defineCompoundMode.js","sourceRoot":"","sources":["../src/defineCompoundMode.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,EAAE;AACF,qEAAqE;AACrE,wFAAwF;AACxF,oEAAoE;AACpE,EAAE;AACF,wEAAwE;AACxE,oEAAoE;AACpE,4EAA4E;AAC5E,0DAA0D;AAC1D,EAAE;AACF,2EAA2E;AAC3E,8EAA8E;AAC9E,8EAA8E;AAC9E,4EAA4E;AAC5E,+DAA+D;AAC/D,+EAA+E;AAkC/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoEG;AACH,MAAM,UAAU,kBAAkB,CAoB9B,MAAkF;IAElF,MAAM,OAAO,GAAkE;QAC3E,MAAM,EAAE,UAAU;QAClB,MAAM;KACT,CAAC;IACF,OAAO,OAA4E,CAAC;AACxF,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Walk XState's nested mode-value shape and return a dot-joined Atlas
3
+ * mode-path. Strings pass through unchanged. Nested objects representing a
4
+ * compound's active substate are recursed into. Parallel regions (an object
5
+ * with more than one key) are not produced by Atlas's lowering, so we treat
6
+ * them as a wrapper invariant violation and throw.
7
+ *
8
+ * @param value Either a leaf-mode name (`string`) or a nested compound
9
+ * value (`{ [parent]: childValue }`).
10
+ * @returns A dot-joined path, e.g. `"socratic.teaching"` or
11
+ * `"listening"`.
12
+ * @throws If `value` is an object with more than one key — Atlas does
13
+ * not currently lower to XState parallel regions, so this
14
+ * indicates either a future change or a bug.
15
+ */
16
+ export declare function formatModePath(value: unknown): string;
17
+ //# sourceMappingURL=formatModePath.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatModePath.d.ts","sourceRoot":"","sources":["../src/formatModePath.ts"],"names":[],"mappings":"AAWA;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAerD"}
@@ -0,0 +1,42 @@
1
+ // `formatModePath` — render XState's nested `value` shape as an Atlas-
2
+ // vocabulary mode-path string.
3
+ //
4
+ // Spec: docs/specs/009-snapshot-aware-rehydration.md §`AgentInspectionEvent`
5
+ // + §Clarification 6 (dot-only separator; throw on parallel regions).
6
+ //
7
+ // Lifted from the inline `formatStateValue` that used to live in
8
+ // `examples/zoe/src/machine.ts:42-50`, with one defensive change: Atlas does
9
+ // not lower to parallel regions, so a value with more than one key here is
10
+ // a wrapper invariant violation and we throw instead of joining with `, `.
11
+ /**
12
+ * Walk XState's nested mode-value shape and return a dot-joined Atlas
13
+ * mode-path. Strings pass through unchanged. Nested objects representing a
14
+ * compound's active substate are recursed into. Parallel regions (an object
15
+ * with more than one key) are not produced by Atlas's lowering, so we treat
16
+ * them as a wrapper invariant violation and throw.
17
+ *
18
+ * @param value Either a leaf-mode name (`string`) or a nested compound
19
+ * value (`{ [parent]: childValue }`).
20
+ * @returns A dot-joined path, e.g. `"socratic.teaching"` or
21
+ * `"listening"`.
22
+ * @throws If `value` is an object with more than one key — Atlas does
23
+ * not currently lower to XState parallel regions, so this
24
+ * indicates either a future change or a bug.
25
+ */
26
+ export function formatModePath(value) {
27
+ if (typeof value === "string")
28
+ return value;
29
+ if (typeof value !== "object" || value === null) {
30
+ return String(value);
31
+ }
32
+ const entries = Object.entries(value);
33
+ if (entries.length !== 1) {
34
+ throw new Error(`formatModePath: Atlas does not lower to parallel regions; ` +
35
+ `got value with ${entries.length} keys (${entries.map(([k]) => k).join(", ")})`);
36
+ }
37
+ const entry = entries[0];
38
+ if (entry === undefined)
39
+ return "";
40
+ return `${entry[0]}.${formatModePath(entry[1])}`;
41
+ }
42
+ //# sourceMappingURL=formatModePath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatModePath.js","sourceRoot":"","sources":["../src/formatModePath.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,+BAA+B;AAC/B,EAAE;AACF,6EAA6E;AAC7E,6EAA6E;AAC7E,EAAE;AACF,iEAAiE;AACjE,6EAA6E;AAC7E,2EAA2E;AAC3E,2EAA2E;AAE3E;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,cAAc,CAAC,KAAc;IACzC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAC9C,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,CAAC;IACjE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CACX,4DAA4D;YACxD,kBAAkB,OAAO,CAAC,MAAM,UAAU,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACtF,CAAC;IACN,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACnC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACrD,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export { defineMode } from "./defineMode.js";
2
2
  export { defineCompoundMode } from "./defineCompoundMode.js";
3
3
  export { defineAgent } from "./defineAgent.js";
4
+ export { startAgent } from "./startAgent.js";
4
5
  export { END, RE_THROW } from "./types.js";
5
- export type { ModeOutput, Outcome, Mode, CompoundMode, ModeConfig, ActiveModeConfig, PassiveModeConfig, CompoundModeConfig, AgentConfig, ModesMap, CompoundContext, Routes, RouteList, RouteTarget, ErrorRouteTarget, EventHandlers, JsonPrimitive, JsonValue, JsonObject, JsonArray, JsonCompatible, } from "./types.js";
6
+ export type { ModeOutput, Outcome, Mode, CompoundMode, ModeConfig, ActiveModeConfig, PassiveModeConfig, CompoundModeConfig, AgentConfig, ModesMap, CompoundContext, Routes, RouteList, RouteTarget, ErrorRouteTarget, EventHandlers, JsonPrimitive, JsonValue, JsonObject, JsonArray, JsonCompatible, AgentActor, AgentSnapshot, AgentInspectionEvent, AgentErrorInfo, StartAgentOptions, } from "./types.js";
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,YAAY,EACR,UAAU,EACV,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,WAAW,EACX,QAAQ,EACR,eAAe,EACf,MAAM,EACN,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,SAAS,EACT,UAAU,EACV,SAAS,EACT,cAAc,GACjB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,YAAY,EACR,UAAU,EACV,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,WAAW,EACX,QAAQ,EACR,eAAe,EACf,MAAM,EACN,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,SAAS,EACT,UAAU,EACV,SAAS,EACT,cAAc,EACd,UAAU,EACV,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,iBAAiB,GACpB,MAAM,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -2,9 +2,11 @@
2
2
  //
3
3
  // Spec: docs/specs/004-xstate-agent-wrapper.md
4
4
  // docs/specs/005-agent-deps-and-stringifiable-context.md
5
+ // docs/specs/009-snapshot-aware-rehydration.md
5
6
  // Tasks: docs/specs/004-tasks.md
6
7
  export { defineMode } from "./defineMode.js";
7
8
  export { defineCompoundMode } from "./defineCompoundMode.js";
8
9
  export { defineAgent } from "./defineAgent.js";
10
+ export { startAgent } from "./startAgent.js";
9
11
  export { END, RE_THROW } from "./types.js";
10
12
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,EAAE;AACF,+CAA+C;AAC/C,+DAA+D;AAC/D,iCAAiC;AAEjC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,EAAE;AACF,+CAA+C;AAC/C,+DAA+D;AAC/D,qDAAqD;AACrD,iCAAiC;AAEjC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { type AnyStateMachine } from "xstate";
2
+ import type { AgentActor, StartAgentOptions } from "./types.js";
3
+ /**
4
+ * Boot an Atlas agent. Wraps `createActor(...).start()` under the hood.
5
+ *
6
+ * - When `options.snapshot` is provided, the actor is rehydrated from that
7
+ * snapshot. XState v5 does NOT re-run `entry` actions on a restored state,
8
+ * so compound-`local` slots in the snapshot survive (spec 009
9
+ * §Persistence Contract).
10
+ * - When `options.inspect` is provided, it receives Atlas-vocabulary
11
+ * events. Phase 1 emits only `transition`.
12
+ *
13
+ * The returned `AgentActor` is auto-started. Call `.stop()` to dispose.
14
+ *
15
+ * @template TContext The agent's root context shape. Must match the shape
16
+ * the machine was declared with — `AgentSnapshot<TContext>`
17
+ * refuses cross-context restores at the type level.
18
+ * @template TEvents The agent's full event union. Used to type `send`.
19
+ */
20
+ export declare function startAgent<TContext, TEvents extends {
21
+ type: string;
22
+ }>(agent: AnyStateMachine, options?: StartAgentOptions<TContext>): AgentActor<TContext, TEvents>;
23
+ //# sourceMappingURL=startAgent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"startAgent.d.ts","sourceRoot":"","sources":["../src/startAgent.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAe,KAAK,eAAe,EAAuC,MAAM,QAAQ,CAAC;AAGhG,OAAO,KAAK,EACR,UAAU,EAEV,iBAAiB,EACpB,MAAM,YAAY,CAAC;AAIpB;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,OAAO,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EACjE,KAAK,EAAE,eAAe,EACtB,OAAO,CAAC,EAAE,iBAAiB,CAAC,QAAQ,CAAC,GACtC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAsE/B"}
@@ -0,0 +1,108 @@
1
+ // `startAgent` — boot an Atlas agent.
2
+ //
3
+ // Spec: docs/specs/009-snapshot-aware-rehydration.md
4
+ // §`startAgent` + §Persistence Contract + §Mapping
5
+ // docs/specs/010-error-channel.md
6
+ // §Public API Changes + §Behavior Contract + §Mapping
7
+ //
8
+ // Wraps XState's `createActor(...).start()` so:
9
+ // 1. A persisted `AgentSnapshot` survives compound-`local` reset on entry
10
+ // (spec 009 / issue #15).
11
+ // 2. Hosts no longer import from `xstate` directly (spec 009 / issue #12).
12
+ // 3. Rejections that escape the machine's declarative recovery
13
+ // (`routes.error`) surface to a typed host callback via
14
+ // `options.onError`, instead of becoming uncaught process-level errors
15
+ // (spec 010 / P14).
16
+ //
17
+ // This file is the ONLY place inside `packages/atlas/src` allowed to import
18
+ // `createActor`. The wrapper hides it; nothing else in user code or in the
19
+ // examples references XState's runtime API.
20
+ import { createActor } from "xstate";
21
+ import { formatModePath } from "./formatModePath.js";
22
+ const ATLAS_SNAPSHOT_VERSION = "1";
23
+ /**
24
+ * Boot an Atlas agent. Wraps `createActor(...).start()` under the hood.
25
+ *
26
+ * - When `options.snapshot` is provided, the actor is rehydrated from that
27
+ * snapshot. XState v5 does NOT re-run `entry` actions on a restored state,
28
+ * so compound-`local` slots in the snapshot survive (spec 009
29
+ * §Persistence Contract).
30
+ * - When `options.inspect` is provided, it receives Atlas-vocabulary
31
+ * events. Phase 1 emits only `transition`.
32
+ *
33
+ * The returned `AgentActor` is auto-started. Call `.stop()` to dispose.
34
+ *
35
+ * @template TContext The agent's root context shape. Must match the shape
36
+ * the machine was declared with — `AgentSnapshot<TContext>`
37
+ * refuses cross-context restores at the type level.
38
+ * @template TEvents The agent's full event union. Used to type `send`.
39
+ */
40
+ export function startAgent(agent, options) {
41
+ let previousPath;
42
+ const userInspect = options?.inspect;
43
+ const userOnError = options?.onError;
44
+ const xstateActor = createActor(agent, {
45
+ snapshot: options?.snapshot?.persisted,
46
+ inspect: userInspect
47
+ ? (raw) => {
48
+ if (raw.type !== "@xstate.snapshot")
49
+ return;
50
+ // Filter foreign actors. The closure captures `xstateActor`
51
+ // by reference; sound even though the variable is referenced
52
+ // inside its own initializer — the inspect callback fires
53
+ // only on subsequent updates.
54
+ if (raw.actorRef !== xstateActor)
55
+ return;
56
+ const snap = raw.snapshot;
57
+ const next = formatModePath(snap.value);
58
+ if (next === previousPath)
59
+ return;
60
+ const from = previousPath ?? "(init)";
61
+ previousPath = next;
62
+ userInspect({
63
+ type: "transition",
64
+ from,
65
+ to: next,
66
+ context: snap.context,
67
+ });
68
+ }
69
+ : undefined,
70
+ });
71
+ // Spec 010 §Behavior Contract: subscribe ONLY when `onError` is provided.
72
+ // When omitted, no subscribe call is made — XState's default propagation
73
+ // is preserved (the strict additive guarantee).
74
+ if (userOnError !== undefined) {
75
+ xstateActor.subscribe({
76
+ error: (rawError) => {
77
+ // Spec 010 §Snapshot-at-error semantics: read the actor's
78
+ // current snapshot synchronously inside the error subscriber.
79
+ // xstate@5.31.1 keeps `value` and `context` populated at this
80
+ // point (the failed leaf is still in `value`).
81
+ const live = xstateActor.getSnapshot();
82
+ userOnError({
83
+ error: rawError,
84
+ modePath: formatModePath(live.value),
85
+ context: live.context,
86
+ snapshot: buildAgentSnapshot(xstateActor.getPersistedSnapshot()),
87
+ });
88
+ },
89
+ });
90
+ }
91
+ xstateActor.start();
92
+ return {
93
+ send: (event) => {
94
+ xstateActor.send(event);
95
+ },
96
+ stop: () => {
97
+ xstateActor.stop();
98
+ },
99
+ getSnapshot: () => buildAgentSnapshot(xstateActor.getPersistedSnapshot()),
100
+ };
101
+ }
102
+ function buildAgentSnapshot(persisted) {
103
+ return {
104
+ atlasVersion: ATLAS_SNAPSHOT_VERSION,
105
+ persisted,
106
+ };
107
+ }
108
+ //# sourceMappingURL=startAgent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"startAgent.js","sourceRoot":"","sources":["../src/startAgent.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -478,9 +478,11 @@ export type ModesMap<TContext, TEvents extends {
478
478
  * **live-mirrored** into this compound. Keys NOT in `inherit` are invisible
479
479
  * to children at the type level.
480
480
  * - **`local`** — own variables declared at this compound. Initialized on
481
- * entry and **reset on re-entry** (DD-018). Constrained to
482
- * `JsonCompatible<TLocal>` because the slot is persisted as part of the
483
- * root context.
481
+ * entry and **reset on re-entry** (DD-018), but **NOT** reset on snapshot
482
+ * restore: when an actor is rehydrated via `startAgent({ snapshot })`,
483
+ * the persisted slot wins over the entry-reset (spec 009 §Persistence
484
+ * Contract). Constrained to `JsonCompatible<TLocal>` so the slot is
485
+ * JSON-safe — required for snapshot serialization.
484
486
  *
485
487
  * Children see `Pick<TParent, inherit[number]> & typeof local` as their
486
488
  * context.
@@ -591,5 +593,93 @@ export type AgentConfig<TContext, TEvents extends {
591
593
  }) => Partial<TContext>>>;
592
594
  modes: TModes;
593
595
  };
596
+ /**
597
+ * Atlas-vocabulary observation event. Phase 1 emits only `transition`.
598
+ *
599
+ * - `from` / `to` are mode-paths formatted by `formatModePath` (dot-joined,
600
+ * parent first). Hosts no longer parse XState's nested `snapshot.value`
601
+ * shape directly.
602
+ * - `context` is the root `TContext` AFTER the transition's assigns have
603
+ * run.
604
+ */
605
+ export type AgentInspectionEvent<TContext> = {
606
+ type: "transition";
607
+ from: string;
608
+ to: string;
609
+ context: TContext;
610
+ };
611
+ declare const agentSnapshotBrand: unique symbol;
612
+ /**
613
+ * Opaque persisted agent state. Returned by `actor.getSnapshot()`; fed back
614
+ * to `startAgent({ snapshot })` next turn. The `TContext` parameter is brand-
615
+ * only (phantom) — used so a snapshot from agent A cannot be passed to
616
+ * `startAgent` for an agent whose `TContext` shape differs.
617
+ *
618
+ * Treat the value as opaque: persist `JSON.stringify(snapshot)` and restore
619
+ * with `JSON.parse` at the storage boundary.
620
+ */
621
+ export type AgentSnapshot<TContext> = {
622
+ readonly atlasVersion: string;
623
+ readonly persisted: unknown;
624
+ readonly [agentSnapshotBrand]?: (_: TContext) => TContext;
625
+ };
626
+ /**
627
+ * Started Atlas actor. Auto-started by `startAgent`; call `stop()` to
628
+ * dispose. Use `inspect` at construction time for observation; build any
629
+ * readiness gates the host needs from that callback.
630
+ */
631
+ export type AgentActor<TContext, TEvents extends {
632
+ type: string;
633
+ }> = {
634
+ send: (event: TEvents) => void;
635
+ stop: () => void;
636
+ getSnapshot: () => AgentSnapshot<TContext>;
637
+ };
638
+ /**
639
+ * Payload delivered to `StartAgentOptions.onError` when a rejection escapes
640
+ * the machine — i.e. `behavior` rejected and either `routes.error` was
641
+ * absent, no `routes.error` entry's `when` matched, or a matched entry
642
+ * targeted `RE_THROW`. See spec 010 §Behavior Contract.
643
+ *
644
+ * - `error` — the raw rejection value. Typed as `unknown` because
645
+ * `behavior` is a user-controlled `async` function whose rejection value
646
+ * can be anything; narrowing is the host's job.
647
+ * - `modePath` — dot-joined path of the leaf whose `behavior` rejected,
648
+ * formatted by the same `formatModePath` used by `inspect.transition`.
649
+ * - `context` — root context at the moment the rejection became fatal
650
+ * (i.e. after any matched `routes.error.assign` ran).
651
+ * - `snapshot` — the agent snapshot at the moment of error, suitable for
652
+ * persistence. Captured synchronously inside the error subscriber, before
653
+ * the actor's terminal state is observable to `send`. Feeding it to a
654
+ * fresh `startAgent({ snapshot })` re-enters the failed leaf — hosts
655
+ * that want to "fire-and-log and keep listening" persist the *prior*
656
+ * turn's snapshot instead (spec 010 §Recommended host pattern).
657
+ */
658
+ export type AgentErrorInfo<TContext> = {
659
+ error: unknown;
660
+ modePath: string;
661
+ context: TContext;
662
+ snapshot: AgentSnapshot<TContext>;
663
+ };
664
+ /**
665
+ * Options accepted by `startAgent`.
666
+ *
667
+ * - `snapshot` — persisted state from a previous turn. When omitted, the
668
+ * machine boots into its `initial` state. When present, the persisted
669
+ * slot for every compound `local` survives `entry`-reset (spec 009
670
+ * §Persistence Contract).
671
+ * - `inspect` — construction-time callback receiving Atlas-vocabulary
672
+ * events. Phase 1 emits only `transition`.
673
+ * - `onError` — construction-time callback fired when a rejection escapes
674
+ * the machine's declarative recovery (`routes.error`). Strictly
675
+ * additive: when omitted, the wrapper makes no `subscribe` call and
676
+ * current Node `unhandledRejection` propagation is preserved
677
+ * (spec 010 §Behavior Contract).
678
+ */
679
+ export type StartAgentOptions<TContext> = {
680
+ snapshot?: AgentSnapshot<TContext>;
681
+ inspect?: (event: AgentInspectionEvent<TContext>) => void;
682
+ onError?: (info: AgentErrorInfo<TContext>) => void;
683
+ };
594
684
  export {};
595
685
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eduardorenani/atlasjs",
3
- "version": "0.1.0-alpha.2",
3
+ "version": "0.1.0-alpha.4",
4
4
  "description": "Mode-based agent orchestration on top of XState v5. Typed modes, four-outcome contract, goal-bound exits.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",