@rkat/web 0.4.13 → 0.5.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/dist/runtime.d.ts CHANGED
@@ -16,6 +16,7 @@ export interface WasmModule {
16
16
  register_tool_callback: (name: string, description: string, schemaJson: string, callback: (args: string) => Promise<string>) => void;
17
17
  register_js_tool: (name: string, description: string, schemaJson: string) => void;
18
18
  clear_tool_callbacks: () => void;
19
+ destroy_runtime: () => void;
19
20
  create_session_simple: (configJson: string) => number;
20
21
  create_session: (mobpackBytes: Uint8Array, configJson: string) => number;
21
22
  start_turn: (handle: number, prompt: string, optionsJson: string) => Promise<string>;
@@ -33,10 +34,18 @@ export interface WasmModule {
33
34
  mob_retire: (mobId: string, meerkatId: string) => Promise<void>;
34
35
  mob_wire: (mobId: string, a: string, b: string) => Promise<void>;
35
36
  mob_unwire: (mobId: string, a: string, b: string) => Promise<void>;
37
+ mob_wire_peer?: (mobId: string, member: string, peerJson: string) => Promise<void>;
38
+ mob_unwire_peer?: (mobId: string, member: string, peerJson: string) => Promise<void>;
39
+ mob_wire_target: (mobId: string, local: string, targetJson: string) => Promise<void>;
40
+ mob_unwire_target: (mobId: string, local: string, targetJson: string) => Promise<void>;
36
41
  mob_list_members: (mobId: string) => Promise<string>;
37
42
  mob_append_system_context: (mobId: string, meerkatId: string, requestJson: string) => Promise<string>;
38
- mob_send_message: (mobId: string, meerkatId: string, message: string) => Promise<void>;
39
- mob_respawn: (mobId: string, meerkatId: string, initialMessage?: string) => Promise<void>;
43
+ mob_member_send: (mobId: string, meerkatId: string, requestJson: string) => Promise<string>;
44
+ mob_member_status: (mobId: string, meerkatId: string) => Promise<string>;
45
+ mob_respawn: (mobId: string, meerkatId: string, initialMessage?: string) => Promise<string>;
46
+ mob_force_cancel: (mobId: string, meerkatId: string) => Promise<void>;
47
+ mob_spawn_helper: (mobId: string, requestJson: string) => Promise<string>;
48
+ mob_fork_helper: (mobId: string, requestJson: string) => Promise<string>;
40
49
  mob_run_flow: (mobId: string, flowId: string, paramsJson: string) => Promise<string>;
41
50
  mob_flow_status: (mobId: string, runId: string) => Promise<string>;
42
51
  mob_cancel_flow: (mobId: string, runId: string) => Promise<void>;
@@ -51,6 +60,7 @@ export interface WasmModule {
51
60
  /** Entry point for the Meerkat WASM runtime in the browser. */
52
61
  export declare class MeerkatRuntime {
53
62
  private wasm;
63
+ private destroyed;
54
64
  private constructor();
55
65
  /**
56
66
  * Initialize the WASM runtime with the given configuration.
@@ -81,10 +91,12 @@ export declare class MeerkatRuntime {
81
91
  /**
82
92
  * Register a tool callback on the WASM module.
83
93
  *
84
- * **Must be called before {@link init} or {@link initFromMobpack}** because
85
- * the tool dispatcher is built during initialization.
94
+ * Runtime state must already be initialized.
86
95
  *
87
- * @param wasm - The WASM module (same one passed to init).
96
+ * Prefer the instance method when possible so registration is clearly scoped
97
+ * to the active runtime.
98
+ *
99
+ * @param wasm - The WASM module used by the active runtime.
88
100
  * @param name - Tool name.
89
101
  * @param description - Human-readable tool description.
90
102
  * @param schema - JSON Schema for tool input.
@@ -94,12 +106,13 @@ export declare class MeerkatRuntime {
94
106
  /**
95
107
  * Register a fire-and-forget tool on the WASM module.
96
108
  *
97
- * **Must be called before {@link init} or {@link initFromMobpack}.**
109
+ * Runtime state must already be initialized.
98
110
  *
99
111
  * When the agent calls this tool, it receives `"acknowledged"` immediately
100
112
  * and continues processing. The host should watch `ToolCallRequested` events
101
113
  * in the event stream to capture args and act on them. Any response (e.g.
102
- * human approval) comes back via {@link Mob.sendMessage}.
114
+ * human approval) comes back through the normal session or mob member send
115
+ * APIs.
103
116
  *
104
117
  * @param wasm - The WASM module (same one passed to init).
105
118
  * @param name - Tool name the agent will call.
@@ -107,15 +120,23 @@ export declare class MeerkatRuntime {
107
120
  * @param schema - JSON Schema for tool input parameters.
108
121
  */
109
122
  static registerFireAndForgetTool(wasm: WasmModule, name: string, description: string, schema: JsonSchema): void;
110
- /** Clear all registered tool callbacks on the WASM module. */
123
+ /** Clear all registered tool callbacks on the active WASM runtime. */
111
124
  static clearTools(wasm: WasmModule): void;
125
+ /** Tear down the embedded runtime and invalidate browser-side handles. */
126
+ destroy(): void;
127
+ /** Register a tool callback on this initialized runtime instance. */
128
+ registerTool(name: string, description: string, schema: JsonSchema, callback: ToolCallback): void;
129
+ /** Register a fire-and-forget tool on this initialized runtime instance. */
130
+ registerFireAndForgetTool(name: string, description: string, schema: JsonSchema): void;
131
+ /** Clear all runtime-scoped JS tools from this initialized runtime instance. */
132
+ clearTools(): void;
112
133
  /** Create a mob from a definition. */
113
134
  createMob(definition: MobDefinition): Promise<Mob>;
114
135
  /** List all active mobs. */
115
136
  listMobs(): Promise<MobStatus[]>;
116
137
  /** Wire two agents across different mobs for cross-mob comms. */
117
138
  wireCrossMob(mobA: string, meerkatA: string, mobB: string, meerkatB: string): Promise<void>;
118
- /** Create a direct (non-mob) session. */
139
+ /** Create a direct session façade backed by a real runtime session identity. */
119
140
  createSession(config: SessionConfig): Session;
120
141
  /** Inspect a mobpack archive without loading it. */
121
142
  inspectMobpack(mobpackBytes: Uint8Array): unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
package/dist/runtime.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { Mob } from './mob.js';
2
2
  import { Session } from './session.js';
3
3
  /** Expected WASM runtime version — must match the compiled binary. */
4
- const EXPECTED_VERSION = '0.4.13';
4
+ const EXPECTED_VERSION = '0.5.0';
5
5
  /**
6
6
  * Convert a camelCase config object to the snake_case expected by WASM.
7
7
  *
@@ -32,7 +32,7 @@ function sessionToWasm(config) {
32
32
  openai_base_url: config.openaiBaseUrl,
33
33
  gemini_base_url: config.geminiBaseUrl,
34
34
  comms_name: config.commsName,
35
- host_mode: config.hostMode,
35
+ keep_alive: config.keepAlive,
36
36
  labels: config.labels,
37
37
  additional_instructions: config.additionalInstructions,
38
38
  app_context: config.appContext,
@@ -41,6 +41,7 @@ function sessionToWasm(config) {
41
41
  /** Entry point for the Meerkat WASM runtime in the browser. */
42
42
  export class MeerkatRuntime {
43
43
  wasm;
44
+ destroyed = false;
44
45
  constructor(wasm) {
45
46
  this.wasm = wasm;
46
47
  }
@@ -103,10 +104,12 @@ export class MeerkatRuntime {
103
104
  /**
104
105
  * Register a tool callback on the WASM module.
105
106
  *
106
- * **Must be called before {@link init} or {@link initFromMobpack}** because
107
- * the tool dispatcher is built during initialization.
107
+ * Runtime state must already be initialized.
108
108
  *
109
- * @param wasm - The WASM module (same one passed to init).
109
+ * Prefer the instance method when possible so registration is clearly scoped
110
+ * to the active runtime.
111
+ *
112
+ * @param wasm - The WASM module used by the active runtime.
110
113
  * @param name - Tool name.
111
114
  * @param description - Human-readable tool description.
112
115
  * @param schema - JSON Schema for tool input.
@@ -118,12 +121,13 @@ export class MeerkatRuntime {
118
121
  /**
119
122
  * Register a fire-and-forget tool on the WASM module.
120
123
  *
121
- * **Must be called before {@link init} or {@link initFromMobpack}.**
124
+ * Runtime state must already be initialized.
122
125
  *
123
126
  * When the agent calls this tool, it receives `"acknowledged"` immediately
124
127
  * and continues processing. The host should watch `ToolCallRequested` events
125
128
  * in the event stream to capture args and act on them. Any response (e.g.
126
- * human approval) comes back via {@link Mob.sendMessage}.
129
+ * human approval) comes back through the normal session or mob member send
130
+ * APIs.
127
131
  *
128
132
  * @param wasm - The WASM module (same one passed to init).
129
133
  * @param name - Tool name the agent will call.
@@ -133,10 +137,29 @@ export class MeerkatRuntime {
133
137
  static registerFireAndForgetTool(wasm, name, description, schema) {
134
138
  wasm.register_js_tool(name, description, JSON.stringify(schema));
135
139
  }
136
- /** Clear all registered tool callbacks on the WASM module. */
140
+ /** Clear all registered tool callbacks on the active WASM runtime. */
137
141
  static clearTools(wasm) {
138
142
  wasm.clear_tool_callbacks();
139
143
  }
144
+ /** Tear down the embedded runtime and invalidate browser-side handles. */
145
+ destroy() {
146
+ if (this.destroyed)
147
+ return;
148
+ this.wasm.destroy_runtime();
149
+ this.destroyed = true;
150
+ }
151
+ /** Register a tool callback on this initialized runtime instance. */
152
+ registerTool(name, description, schema, callback) {
153
+ this.wasm.register_tool_callback(name, description, JSON.stringify(schema), async (args) => JSON.stringify(await callback(args)));
154
+ }
155
+ /** Register a fire-and-forget tool on this initialized runtime instance. */
156
+ registerFireAndForgetTool(name, description, schema) {
157
+ this.wasm.register_js_tool(name, description, JSON.stringify(schema));
158
+ }
159
+ /** Clear all runtime-scoped JS tools from this initialized runtime instance. */
160
+ clearTools() {
161
+ this.wasm.clear_tool_callbacks();
162
+ }
140
163
  /** Create a mob from a definition. */
141
164
  async createMob(definition) {
142
165
  const mobId = await this.wasm.mob_create(JSON.stringify(definition));
@@ -145,10 +168,16 @@ export class MeerkatRuntime {
145
168
  mob_retire: this.wasm.mob_retire,
146
169
  mob_wire: this.wasm.mob_wire,
147
170
  mob_unwire: this.wasm.mob_unwire,
171
+ mob_wire_target: this.wasm.mob_wire_target,
172
+ mob_unwire_target: this.wasm.mob_unwire_target,
148
173
  mob_list_members: this.wasm.mob_list_members,
149
174
  mob_append_system_context: this.wasm.mob_append_system_context,
150
- mob_send_message: this.wasm.mob_send_message,
175
+ mob_member_send: this.wasm.mob_member_send,
176
+ mob_member_status: this.wasm.mob_member_status,
151
177
  mob_respawn: this.wasm.mob_respawn,
178
+ mob_force_cancel: this.wasm.mob_force_cancel,
179
+ mob_spawn_helper: this.wasm.mob_spawn_helper,
180
+ mob_fork_helper: this.wasm.mob_fork_helper,
152
181
  mob_status: this.wasm.mob_status,
153
182
  mob_lifecycle: this.wasm.mob_lifecycle,
154
183
  mob_events: this.wasm.mob_events,
@@ -170,7 +199,7 @@ export class MeerkatRuntime {
170
199
  async wireCrossMob(mobA, meerkatA, mobB, meerkatB) {
171
200
  await this.wasm.wire_cross_mob(mobA, meerkatA, mobB, meerkatB);
172
201
  }
173
- /** Create a direct (non-mob) session. */
202
+ /** Create a direct session façade backed by a real runtime session identity. */
174
203
  createSession(config) {
175
204
  const handle = this.wasm.create_session_simple(JSON.stringify(sessionToWasm(config)));
176
205
  return new Session(handle, this.wasm.start_turn, this.wasm.get_session_state, this.wasm.destroy_session, this.wasm.poll_events, this.wasm.append_system_context);
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
package/dist/session.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { EventSubscription } from './events.js';
2
- import type { ContentBlock, TurnOptions, TurnResult, EventEnvelope, AppendSystemContextOptions, AppendSystemContextResult } from './types.js';
2
+ import type { ContentBlock, TurnOptions, TurnResult, SessionEvent, SessionState, AppendSystemContextOptions, AppendSystemContextResult } from './types.js';
3
3
  type StartTurnFn = (handle: number, prompt: string, options_json: string) => Promise<string>;
4
4
  type GetSessionStateFn = (handle: number) => string;
5
5
  type DestroySessionFn = (handle: number) => void;
@@ -7,7 +7,7 @@ type PollEventsFn = (handle: number) => string;
7
7
  type AppendSystemContextFn = (handle: number, request_json: string) => string;
8
8
  /** A direct (non-mob) agent session. */
9
9
  export declare class Session {
10
- /** @internal — WASM session handle. */
10
+ /** @internal — browser-local façade handle, not the authoritative session ID. */
11
11
  readonly handle: number;
12
12
  private startTurnFn;
13
13
  private getStateFn;
@@ -15,14 +15,17 @@ export declare class Session {
15
15
  private pollFn;
16
16
  private appendSystemContextFn;
17
17
  private destroyed;
18
+ private cachedSessionId?;
18
19
  /** @internal — use MeerkatRuntime.createSession() instead. */
19
20
  constructor(handle: number, startTurnFn: StartTurnFn, getStateFn: GetSessionStateFn, destroyFn: DestroySessionFn, pollFn: PollEventsFn, appendSystemContextFn: AppendSystemContextFn);
20
21
  /** Run a turn through the agent loop. */
21
22
  turn(prompt: string | ContentBlock[], options?: TurnOptions): Promise<TurnResult>;
22
- /** Get the current session state. */
23
- getState(): unknown;
23
+ /** Get the current runtime-backed session state. */
24
+ getState(): SessionState;
25
+ /** The authoritative runtime session ID behind this local browser handle. */
26
+ get sessionId(): string;
24
27
  /** Poll buffered agent events from the last turn. */
25
- pollEvents(): EventEnvelope[];
28
+ pollEvents(): SessionEvent[];
26
29
  /**
27
30
  * Observe session events through the direct handle's buffered event source.
28
31
  *
@@ -30,7 +33,7 @@ export declare class Session {
30
33
  * the same underlying event buffer as `pollEvents()`, so callers should use
31
34
  * either `pollEvents()` or the returned subscription, not both at once.
32
35
  */
33
- subscribe(): EventSubscription<EventEnvelope>;
36
+ subscribe(): EventSubscription<SessionEvent>;
34
37
  /** Stage runtime system context for application at the next LLM boundary. */
35
38
  appendSystemContext(options: AppendSystemContextOptions): AppendSystemContextResult;
36
39
  /** Destroy the session and release resources. */
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,UAAU,EACV,aAAa,EACb,0BAA0B,EAC1B,yBAAyB,EAC1B,MAAM,YAAY,CAAC;AAGpB,KAAK,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAC7F,KAAK,iBAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;AACpD,KAAK,gBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;AACjD,KAAK,YAAY,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;AAC/C,KAAK,qBAAqB,GAAG,CAC3B,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,KACjB,MAAM,CAAC;AAEZ,wCAAwC;AACxC,qBAAa,OAAO;IAClB,uCAAuC;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,qBAAqB,CAAwB;IACrD,OAAO,CAAC,SAAS,CAAS;IAE1B,8DAA8D;gBAE5D,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,iBAAiB,EAC7B,SAAS,EAAE,gBAAgB,EAC3B,MAAM,EAAE,YAAY,EACpB,qBAAqB,EAAE,qBAAqB;IAU9C,yCAAyC;IACnC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IA0BvF,qCAAqC;IACrC,QAAQ,IAAI,OAAO;IAKnB,qDAAqD;IACrD,UAAU,IAAI,aAAa,EAAE;IAO7B;;;;;;OAMG;IACH,SAAS,IAAI,iBAAiB,CAAC,aAAa,CAAC;IAK7C,6EAA6E;IAC7E,mBAAmB,CACjB,OAAO,EAAE,0BAA0B,GAClC,yBAAyB;IAa5B,iDAAiD;IACjD,OAAO,IAAI,IAAI;IAMf,+CAA+C;IAC/C,IAAI,WAAW,IAAI,OAAO,CAEzB;CACF"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,0BAA0B,EAC1B,yBAAyB,EAC1B,MAAM,YAAY,CAAC;AAGpB,KAAK,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAC7F,KAAK,iBAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;AACpD,KAAK,gBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;AACjD,KAAK,YAAY,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;AAC/C,KAAK,qBAAqB,GAAG,CAC3B,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,KACjB,MAAM,CAAC;AAEZ,wCAAwC;AACxC,qBAAa,OAAO;IAClB,iFAAiF;IACjF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,qBAAqB,CAAwB;IACrD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,eAAe,CAAC,CAAS;IAEjC,8DAA8D;gBAE5D,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,iBAAiB,EAC7B,SAAS,EAAE,gBAAgB,EAC3B,MAAM,EAAE,YAAY,EACpB,qBAAqB,EAAE,qBAAqB;IAU9C,yCAAyC;IACnC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IA0BvF,oDAAoD;IACpD,QAAQ,IAAI,YAAY;IAOxB,6EAA6E;IAC7E,IAAI,SAAS,IAAI,MAAM,CAGtB;IAED,qDAAqD;IACrD,UAAU,IAAI,YAAY,EAAE;IAO5B;;;;;;OAMG;IACH,SAAS,IAAI,iBAAiB,CAAC,YAAY,CAAC;IAQ5C,6EAA6E;IAC7E,mBAAmB,CACjB,OAAO,EAAE,0BAA0B,GAClC,yBAAyB;IAa5B,iDAAiD;IACjD,OAAO,IAAI,IAAI;IAcf,+CAA+C;IAC/C,IAAI,WAAW,IAAI,OAAO,CAEzB;CACF"}
package/dist/session.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { EventSubscription } from './events.js';
2
2
  /** A direct (non-mob) agent session. */
3
3
  export class Session {
4
- /** @internal — WASM session handle. */
4
+ /** @internal — browser-local façade handle, not the authoritative session ID. */
5
5
  handle;
6
6
  startTurnFn;
7
7
  getStateFn;
@@ -9,6 +9,7 @@ export class Session {
9
9
  pollFn;
10
10
  appendSystemContextFn;
11
11
  destroyed = false;
12
+ cachedSessionId;
12
13
  /** @internal — use MeerkatRuntime.createSession() instead. */
13
14
  constructor(handle, startTurnFn, getStateFn, destroyFn, pollFn, appendSystemContextFn) {
14
15
  this.handle = handle;
@@ -41,11 +42,19 @@ export class Session {
41
42
  response: typeof parsed.response === 'string' ? parsed.response : text,
42
43
  };
43
44
  }
44
- /** Get the current session state. */
45
+ /** Get the current runtime-backed session state. */
45
46
  getState() {
46
47
  if (this.destroyed)
47
48
  throw new Error('Session has been destroyed');
48
- return JSON.parse(this.getStateFn(this.handle));
49
+ const state = JSON.parse(this.getStateFn(this.handle));
50
+ this.cachedSessionId = state.session_id;
51
+ return state;
52
+ }
53
+ /** The authoritative runtime session ID behind this local browser handle. */
54
+ get sessionId() {
55
+ if (this.destroyed)
56
+ throw new Error('Session has been destroyed');
57
+ return this.cachedSessionId ?? this.getState().session_id;
49
58
  }
50
59
  /** Poll buffered agent events from the last turn. */
51
60
  pollEvents() {
@@ -65,7 +74,7 @@ export class Session {
65
74
  subscribe() {
66
75
  if (this.destroyed)
67
76
  throw new Error('Session has been destroyed');
68
- return new EventSubscription(() => (this.destroyed ? '[]' : this.pollFn(this.handle)), (raw) => Array.isArray(raw) ? raw : []);
77
+ return new EventSubscription(() => (this.destroyed ? '[]' : this.pollFn(this.handle)), (raw) => (Array.isArray(raw) ? raw : []));
69
78
  }
70
79
  /** Stage runtime system context for application at the next LLM boundary. */
71
80
  appendSystemContext(options) {
@@ -82,12 +91,48 @@ export class Session {
82
91
  destroy() {
83
92
  if (this.destroyed)
84
93
  return;
85
- this.destroyed = true;
86
- this.destroyFn(this.handle);
94
+ try {
95
+ this.destroyFn(this.handle);
96
+ this.destroyed = true;
97
+ }
98
+ catch (error) {
99
+ if (isRuntimeNotInitializedError(error)) {
100
+ this.destroyed = true;
101
+ return;
102
+ }
103
+ throw error;
104
+ }
87
105
  }
88
106
  /** Whether this session has been destroyed. */
89
107
  get isDestroyed() {
90
108
  return this.destroyed;
91
109
  }
92
110
  }
111
+ function isRuntimeNotInitializedError(error) {
112
+ const code = extractErrorCode(error);
113
+ if (code?.toLowerCase() === 'not_initialized') {
114
+ return true;
115
+ }
116
+ const message = error instanceof Error
117
+ ? error.message
118
+ : typeof error === 'string'
119
+ ? error
120
+ : '';
121
+ return /not_initialized/i.test(message);
122
+ }
123
+ function extractErrorCode(error) {
124
+ if (!error || typeof error !== 'object')
125
+ return undefined;
126
+ const record = error;
127
+ if (typeof record.code === 'string') {
128
+ return record.code;
129
+ }
130
+ if (record.cause && typeof record.cause === 'object') {
131
+ const causeCode = record.cause.code;
132
+ if (typeof causeCode === 'string') {
133
+ return causeCode;
134
+ }
135
+ }
136
+ return undefined;
137
+ }
93
138
  //# sourceMappingURL=session.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}