runmat 0.2.9 → 0.2.11

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
@@ -17,6 +17,7 @@ Runs on Windows, macOS, Linux, and Web, across NVIDIA, AMD, Apple Silicon, and I
17
17
  | `enableGpu` | `boolean` | Request GPU acceleration (auto-disabled if `navigator.gpu` is missing). |
18
18
  | `enableJit` | `boolean` | Toggle the JIT tier. |
19
19
  | `telemetryConsent` | `boolean` | Allow or block analytics events (profiling still returns locally). Defaults to `true`. |
20
+ | `logLevel` | `"trace" \| "debug" \| "info" \| "warn" \| "error"` | Sets the wasm runtime's initial tracing filter before any code runs. |
20
21
  | `telemetryId` | `string` | Existing analytics client ID to reuse. |
21
22
  | `wgpuPowerPreference` | `"auto" \| "high-performance" \| "low-power"` | Hint for adapter selection. |
22
23
  | `wgpuForceFallbackAdapter` | `boolean` | Force the WebGPU fallback adapter when the primary device fails. |
package/dist/index.d.ts CHANGED
@@ -7,6 +7,8 @@ export type { WorkspaceHoverOptions, WorkspaceHoverController, HoverFormatState
7
7
  export { createFusionPlanAdapter } from "./fusion-plan.js";
8
8
  export type { FusionPlanAdapter, FusionPlanAdapterOptions } from "./fusion-plan.js";
9
9
  export type LanguageCompatMode = "matlab" | "strict";
10
+ type RunMatPresetLogLevel = "trace" | "debug" | "info" | "warn" | "error";
11
+ export type RunMatLogLevel = RunMatPresetLogLevel | (string & Record<never, never>);
10
12
  export type WasmInitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
11
13
  export interface RunMatSnapshotSource {
12
14
  bytes?: Uint8Array | ArrayBuffer;
@@ -24,6 +26,8 @@ export interface RunMatInitOptions {
24
26
  enableGpu?: boolean;
25
27
  enableJit?: boolean;
26
28
  verbose?: boolean;
29
+ logLevel?: RunMatLogLevel;
30
+ gpuBufferPoolMaxPerKey?: number;
27
31
  telemetryConsent?: boolean;
28
32
  telemetryId?: string;
29
33
  wgpuPowerPreference?: "auto" | "high-performance" | "low-power";
@@ -34,6 +38,8 @@ export interface RunMatInitOptions {
34
38
  scatterTargetPoints?: number;
35
39
  surfaceVertexBudget?: number;
36
40
  emitFusionPlan?: boolean;
41
+ callstackLimit?: number;
42
+ errorNamespace?: string;
37
43
  language?: {
38
44
  compat?: LanguageCompatMode;
39
45
  };
@@ -109,6 +115,7 @@ export interface TraceEvent {
109
115
  tid?: number;
110
116
  traceId?: string;
111
117
  spanId?: string;
118
+ parentSpanId?: string;
112
119
  args?: Record<string, unknown>;
113
120
  }
114
121
  export type TraceEventListener = (entries: TraceEvent[]) => void;
@@ -131,15 +138,6 @@ export type ResumeInputScalar = string | number | boolean | null | undefined;
131
138
  export type ResumeInputValue = ResumeInputScalar | ResumeInputPayload;
132
139
  export type InputHandlerResult = ResumeInputValue | Promise<ResumeInputValue>;
133
140
  export type InputHandler = (request: InputRequest) => InputHandlerResult;
134
- export interface PendingStdinRequest {
135
- id: string;
136
- request: {
137
- prompt: string;
138
- kind: "line" | "keyPress";
139
- echo: boolean;
140
- };
141
- waitingMs: number;
142
- }
143
141
  export interface AxesInfo {
144
142
  handle: number;
145
143
  axesRows: number;
@@ -174,7 +172,7 @@ export interface ExecuteResult {
174
172
  valueText?: string;
175
173
  valueJson?: unknown;
176
174
  typeInfo?: string;
177
- error?: string;
175
+ error?: RunMatErrorDetails;
178
176
  executionTimeMs: number;
179
177
  usedJit: boolean;
180
178
  stdout: StdoutEntry[];
@@ -184,7 +182,31 @@ export interface ExecuteResult {
184
182
  stdinEvents: StdinEventLog[];
185
183
  profiling?: ProfilingSummary;
186
184
  fusionPlan?: FusionPlanSnapshot;
187
- stdinRequested?: PendingStdinRequest;
185
+ }
186
+ export type RunMatErrorKind = "syntax" | "semantic" | "compile" | "runtime";
187
+ export interface RunMatErrorSpan {
188
+ start: number;
189
+ end: number;
190
+ line: number;
191
+ column: number;
192
+ }
193
+ export interface RunMatErrorDetails {
194
+ kind: RunMatErrorKind;
195
+ message: string;
196
+ identifier?: string;
197
+ diagnostic: string;
198
+ span?: RunMatErrorSpan;
199
+ callstack: string[];
200
+ callstackElided?: number;
201
+ }
202
+ export declare class RunMatExecutionError extends Error {
203
+ readonly kind: RunMatErrorKind;
204
+ readonly identifier?: string;
205
+ readonly diagnostic: string;
206
+ readonly span?: RunMatErrorSpan;
207
+ readonly callstack: string[];
208
+ readonly callstackElided?: number;
209
+ constructor(details: RunMatErrorDetails);
188
210
  }
189
211
  export type WorkspaceResidency = "cpu" | "gpu" | "unknown";
190
212
  export interface WorkspaceSnapshot {
@@ -211,8 +233,13 @@ export type WorkspaceMaterializeSelector = string | {
211
233
  name?: string;
212
234
  previewToken?: string;
213
235
  };
236
+ export interface MaterializeSliceOptions {
237
+ start: number[];
238
+ shape: number[];
239
+ }
214
240
  export interface MaterializeVariableOptions {
215
241
  limit?: number;
242
+ slice?: MaterializeSliceOptions;
216
243
  }
217
244
  export interface MaterializedVariable {
218
245
  name: string;
@@ -300,8 +327,6 @@ export interface RunMatSessionHandle {
300
327
  cancelExecution(): void;
301
328
  cancelPendingRequests(): void;
302
329
  setInputHandler(handler: InputHandler | null): Promise<void>;
303
- resumeInput(requestId: string, value: ResumeInputValue): Promise<ExecuteResult>;
304
- pendingStdinRequests(): Promise<PendingStdinRequest[]>;
305
330
  materializeVariable(selector: WorkspaceMaterializeSelector, options?: MaterializeVariableOptions): Promise<MaterializedVariable>;
306
331
  setFusionPlanEnabled(enabled: boolean): void;
307
332
  setLanguageCompat(mode: LanguageCompatMode): void;
@@ -314,6 +339,8 @@ interface NativeInitOptions {
314
339
  enableGpu?: boolean;
315
340
  enableJit?: boolean;
316
341
  verbose?: boolean;
342
+ logLevel?: RunMatLogLevel;
343
+ gpuBufferPoolMaxPerKey?: number;
317
344
  telemetryConsent?: boolean;
318
345
  telemetryId?: string;
319
346
  wgpuPowerPreference?: string;
@@ -321,10 +348,12 @@ interface NativeInitOptions {
321
348
  scatterTargetPoints?: number;
322
349
  surfaceVertexBudget?: number;
323
350
  emitFusionPlan?: boolean;
351
+ callstackLimit?: number;
352
+ errorNamespace?: string;
324
353
  languageCompat?: LanguageCompatMode;
325
354
  }
326
355
  interface RunMatNativeSession {
327
- execute(source: string): ExecuteResult;
356
+ execute(source: string): Promise<ExecuteResult>;
328
357
  resetSession(): void;
329
358
  stats(): SessionStats;
330
359
  clearWorkspace(): void;
@@ -336,18 +365,11 @@ interface RunMatNativeSession {
336
365
  cancelExecution?: () => void;
337
366
  cancelPendingRequests?: () => void;
338
367
  setInputHandler?: (handler: InputHandler | null) => void;
339
- resumeInput?: (requestId: string, value: ResumeInputWireValue) => ExecuteResult;
340
- pendingStdinRequests?: () => PendingStdinRequest[];
341
368
  materializeVariable?: (selector: WorkspaceMaterializeSelectorWire, options?: MaterializeVariableOptionsWire) => MaterializedVariable;
342
369
  setFusionPlanEnabled?: (enabled: boolean) => void;
343
370
  setLanguageCompat?: (mode: LanguageCompatMode) => void;
344
371
  fusionPlanForSource?: (source: string) => FusionPlanSnapshot | null;
345
372
  }
346
- interface ResumeInputWireValue {
347
- kind?: "line" | "keyPress";
348
- value?: string;
349
- error?: string;
350
- }
351
373
  type WorkspaceMaterializeSelectorWire = string | {
352
374
  name?: string;
353
375
  token?: string;
@@ -355,18 +377,23 @@ type WorkspaceMaterializeSelectorWire = string | {
355
377
  };
356
378
  interface MaterializeVariableOptionsWire {
357
379
  limit?: number;
380
+ slice?: {
381
+ start: number[];
382
+ shape: number[];
383
+ };
358
384
  }
359
385
  interface RunMatNativeModule {
360
386
  default: (module?: WasmInitInput | Promise<WasmInitInput>) => Promise<unknown>;
361
387
  initRunMat(options: NativeInitOptions): Promise<RunMatNativeSession>;
362
388
  registerFsProvider?: (provider: RunMatFilesystemProvider) => void;
363
- registerPlotCanvas?: (canvas: HTMLCanvasElement) => Promise<void>;
364
- deregisterPlotCanvas?: () => void;
365
389
  plotRendererReady?: () => boolean;
366
- registerFigureCanvas?: (handle: number, canvas: HTMLCanvasElement) => Promise<void>;
367
- resizeFigureCanvas?: (handle: number, width: number, height: number) => void;
368
390
  renderCurrentFigureScene?: (handle: number) => void;
369
- deregisterFigureCanvas?: (handle: number) => void;
391
+ createPlotSurface?: (canvas: HTMLCanvasElement | OffscreenCanvas) => Promise<number>;
392
+ destroyPlotSurface?: (surfaceId: number) => void;
393
+ resizePlotSurface?: (surfaceId: number, width: number, height: number) => void;
394
+ bindSurfaceToFigure?: (surfaceId: number, handle: number) => void;
395
+ presentSurface?: (surfaceId: number) => void;
396
+ presentFigureOnSurface?: (surfaceId: number, handle: number) => void;
370
397
  onFigureEvent?: (callback: ((event: FigureEvent) => void) | null) => void;
371
398
  newFigureHandle?: () => number;
372
399
  selectFigure?: (handle: number) => void;
@@ -381,24 +408,25 @@ interface RunMatNativeModule {
381
408
  unsubscribeStdout?: (id: number) => void;
382
409
  subscribeRuntimeLog?: (listener: (entry: RuntimeLogEntry) => void) => number;
383
410
  unsubscribeRuntimeLog?: (id: number) => void;
411
+ setLogFilter?: (filter: string) => void;
384
412
  subscribeTraceEvents?: (listener: (entries: TraceEvent[]) => void) => number;
385
413
  unsubscribeTraceEvents?: (id: number) => void;
386
- resumeInput?: (requestId: string, value: ResumeInputWireValue) => ExecuteResult;
387
- pendingStdinRequests?: () => PendingStdinRequest[];
388
414
  }
389
415
  export declare function initRunMat(options?: RunMatInitOptions): Promise<RunMatSessionHandle>;
390
- export declare function attachPlotCanvas(canvas: HTMLCanvasElement): Promise<void>;
391
416
  export declare function plotRendererReady(): Promise<boolean>;
392
- export declare function registerFigureCanvas(handle: number, canvas: HTMLCanvasElement): Promise<void>;
393
- export declare function resizeFigureCanvas(handle: number, widthPx: number, heightPx: number): Promise<void>;
417
+ export declare function createPlotSurface(canvas: HTMLCanvasElement | OffscreenCanvas): Promise<number>;
418
+ export declare function destroyPlotSurface(surfaceId: number): Promise<void>;
419
+ export declare function resizePlotSurface(surfaceId: number, widthPx: number, heightPx: number): Promise<void>;
420
+ export declare function bindSurfaceToFigure(surfaceId: number, handle: number): Promise<void>;
421
+ export declare function presentSurface(surfaceId: number): Promise<void>;
422
+ export declare function presentFigureOnSurface(surfaceId: number, handle: number): Promise<void>;
394
423
  export declare function renderCurrentFigureScene(handle: number): Promise<void>;
395
- export declare function deregisterPlotCanvas(): Promise<void>;
396
- export declare function deregisterFigureCanvas(handle: number): Promise<void>;
397
424
  export declare function onFigureEvent(listener: FigureEventListener | null): Promise<void>;
398
425
  export declare function subscribeStdout(listener: StdoutListener): Promise<number>;
399
426
  export declare function unsubscribeStdout(id: number): Promise<void>;
400
427
  export declare function subscribeRuntimeLog(listener: RuntimeLogListener): Promise<number>;
401
428
  export declare function unsubscribeRuntimeLog(id: number): Promise<void>;
429
+ export declare function setLogFilter(filter: string): Promise<void>;
402
430
  export declare function subscribeTraceEvents(listener: TraceEventListener): Promise<number>;
403
431
  export declare function unsubscribeTraceEvents(id: number): Promise<void>;
404
432
  export declare function figure(handle?: number): Promise<number>;
@@ -422,12 +450,10 @@ interface SnapshotResolution {
422
450
  }
423
451
  declare function resolveSnapshotSource(source?: RunMatSnapshotSource): Promise<SnapshotResolution>;
424
452
  declare function fetchSnapshotFromUrl(url: string): Promise<Uint8Array>;
425
- declare function normalizeResumeInputValue(input: ResumeInputValue): ResumeInputWireValue;
426
453
  export declare const __internals: {
427
454
  resolveSnapshotSource: typeof resolveSnapshotSource;
428
455
  fetchSnapshotFromUrl: typeof fetchSnapshotFromUrl;
429
456
  coerceFigureError: typeof coerceFigureError;
430
- normalizeResumeInputValue: typeof normalizeResumeInputValue;
431
457
  workspaceHover: Record<string, unknown>;
432
458
  setNativeModuleOverride(module: RunMatNativeModule | RunMatNativeSession | null): void;
433
459
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -4,6 +4,24 @@ import { installWebGpuCompatibilityShims } from "./webgpu-shims.js";
4
4
  export { createInMemoryFsProvider, createIndexedDbFsHandle, createIndexedDbFsProvider, createDefaultFsProvider, createRemoteFsProvider, MemoryVolume } from "./fs/index.js";
5
5
  export { createWorkspaceHoverProvider } from "./workspace-hover.js";
6
6
  export { createFusionPlanAdapter } from "./fusion-plan.js";
7
+ export class RunMatExecutionError extends Error {
8
+ kind;
9
+ identifier;
10
+ diagnostic;
11
+ span;
12
+ callstack;
13
+ callstackElided;
14
+ constructor(details) {
15
+ super(details.message);
16
+ this.name = "RunMatExecutionError";
17
+ this.kind = details.kind;
18
+ this.identifier = details.identifier;
19
+ this.diagnostic = details.diagnostic;
20
+ this.span = details.span;
21
+ this.callstack = details.callstack;
22
+ this.callstackElided = details.callstackElided;
23
+ }
24
+ }
7
25
  let loadPromise = null;
8
26
  let nativeModuleOverride = null;
9
27
  async function loadNativeModule(wasmModule) {
@@ -40,10 +58,11 @@ export async function initRunMat(options = {}) {
40
58
  native.registerFsProvider(fsProvider);
41
59
  }
42
60
  if (options.plotCanvas) {
43
- if (typeof native.registerPlotCanvas !== "function") {
44
- throw new Error("The loaded runmat-wasm module does not support WebGPU plotting yet.");
61
+ if (typeof native.createPlotSurface !== "function") {
62
+ throw new Error("The loaded runmat-wasm module does not support WebGPU plotting surfaces yet.");
45
63
  }
46
- await native.registerPlotCanvas(options.plotCanvas);
64
+ // Create a surface for the provided canvas. The caller is responsible for binding/presenting.
65
+ await native.createPlotSurface(options.plotCanvas);
47
66
  }
48
67
  const supportsWebGpu = typeof navigator !== "undefined" && typeof navigator.gpu !== "undefined";
49
68
  const hasExplicitEnableFlag = Object.prototype.hasOwnProperty.call(options, "enableGpu");
@@ -71,6 +90,8 @@ export async function initRunMat(options = {}) {
71
90
  enableGpu: effectiveEnableGpu,
72
91
  enableJit: options.enableJit ?? false,
73
92
  verbose: options.verbose ?? false,
93
+ logLevel: options.logLevel,
94
+ gpuBufferPoolMaxPerKey: options.gpuBufferPoolMaxPerKey,
74
95
  telemetryConsent: options.telemetryConsent ?? true,
75
96
  telemetryId: options.telemetryId,
76
97
  wgpuPowerPreference: options.wgpuPowerPreference ?? "auto",
@@ -78,17 +99,12 @@ export async function initRunMat(options = {}) {
78
99
  scatterTargetPoints: options.scatterTargetPoints,
79
100
  surfaceVertexBudget: options.surfaceVertexBudget,
80
101
  emitFusionPlan: options.emitFusionPlan ?? false,
102
+ callstackLimit: options.callstackLimit,
103
+ errorNamespace: options.errorNamespace,
81
104
  languageCompat: options.language?.compat
82
105
  });
83
106
  return new WebRunMatSession(session);
84
107
  }
85
- export async function attachPlotCanvas(canvas) {
86
- const native = await loadNativeModule();
87
- if (typeof native.registerPlotCanvas !== "function") {
88
- throw new Error("The loaded runmat-wasm module does not support WebGPU plotting yet.");
89
- }
90
- await native.registerPlotCanvas(canvas);
91
- }
92
108
  export async function plotRendererReady() {
93
109
  const native = await loadNativeModule();
94
110
  if (typeof native.plotRendererReady !== "function") {
@@ -96,32 +112,40 @@ export async function plotRendererReady() {
96
112
  }
97
113
  return native.plotRendererReady();
98
114
  }
99
- export async function registerFigureCanvas(handle, canvas) {
115
+ export async function createPlotSurface(canvas) {
100
116
  const native = await loadNativeModule();
101
- if (typeof native.registerFigureCanvas !== "function") {
102
- throw new Error("The loaded runmat-wasm module does not support figure-specific canvases yet.");
103
- }
104
- await native.registerFigureCanvas(handle, canvas);
117
+ requireNativeFunction(native, "createPlotSurface");
118
+ return native.createPlotSurface(canvas);
105
119
  }
106
- export async function resizeFigureCanvas(handle, widthPx, heightPx) {
120
+ export async function destroyPlotSurface(surfaceId) {
107
121
  const native = await loadNativeModule();
108
- requireNativeFunction(native, "resizeFigureCanvas");
109
- native.resizeFigureCanvas(handle, widthPx, heightPx);
122
+ requireNativeFunction(native, "destroyPlotSurface");
123
+ native.destroyPlotSurface(surfaceId);
110
124
  }
111
- export async function renderCurrentFigureScene(handle) {
125
+ export async function resizePlotSurface(surfaceId, widthPx, heightPx) {
112
126
  const native = await loadNativeModule();
113
- requireNativeFunction(native, "renderCurrentFigureScene");
114
- native.renderCurrentFigureScene(handle);
127
+ requireNativeFunction(native, "resizePlotSurface");
128
+ native.resizePlotSurface(surfaceId, widthPx, heightPx);
129
+ }
130
+ export async function bindSurfaceToFigure(surfaceId, handle) {
131
+ const native = await loadNativeModule();
132
+ requireNativeFunction(native, "bindSurfaceToFigure");
133
+ native.bindSurfaceToFigure(surfaceId, handle);
115
134
  }
116
- export async function deregisterPlotCanvas() {
135
+ export async function presentSurface(surfaceId) {
117
136
  const native = await loadNativeModule();
118
- requireNativeFunction(native, "deregisterPlotCanvas");
119
- native.deregisterPlotCanvas();
137
+ requireNativeFunction(native, "presentSurface");
138
+ native.presentSurface(surfaceId);
120
139
  }
121
- export async function deregisterFigureCanvas(handle) {
140
+ export async function presentFigureOnSurface(surfaceId, handle) {
122
141
  const native = await loadNativeModule();
123
- requireNativeFunction(native, "deregisterFigureCanvas");
124
- native.deregisterFigureCanvas(handle);
142
+ requireNativeFunction(native, "presentFigureOnSurface");
143
+ native.presentFigureOnSurface(surfaceId, handle);
144
+ }
145
+ export async function renderCurrentFigureScene(handle) {
146
+ const native = await loadNativeModule();
147
+ requireNativeFunction(native, "renderCurrentFigureScene");
148
+ native.renderCurrentFigureScene(handle);
125
149
  }
126
150
  export async function onFigureEvent(listener) {
127
151
  const native = await loadNativeModule();
@@ -150,6 +174,11 @@ export async function unsubscribeRuntimeLog(id) {
150
174
  requireNativeFunction(native, "unsubscribeRuntimeLog");
151
175
  native.unsubscribeRuntimeLog(id);
152
176
  }
177
+ export async function setLogFilter(filter) {
178
+ const native = await loadNativeModule();
179
+ requireNativeFunction(native, "setLogFilter");
180
+ native.setLogFilter(filter);
181
+ }
153
182
  export async function subscribeTraceEvents(listener) {
154
183
  const native = await loadNativeModule();
155
184
  requireNativeFunction(native, "subscribeTraceEvents");
@@ -260,7 +289,12 @@ class WebRunMatSession {
260
289
  }
261
290
  async execute(source) {
262
291
  this.ensureActive();
263
- return this.native.execute(source);
292
+ try {
293
+ return await this.native.execute(source);
294
+ }
295
+ catch (error) {
296
+ throw coerceRunMatError(error);
297
+ }
264
298
  }
265
299
  async resetSession() {
266
300
  this.ensureActive();
@@ -328,19 +362,6 @@ class WebRunMatSession {
328
362
  }
329
363
  this.native.setInputHandler(handler ? (request) => handler(request) : null);
330
364
  }
331
- async resumeInput(requestId, value) {
332
- this.ensureActive();
333
- requireNativeFunction(this.native, "resumeInput");
334
- const payload = normalizeResumeInputValue(value);
335
- return this.native.resumeInput(requestId, payload);
336
- }
337
- async pendingStdinRequests() {
338
- this.ensureActive();
339
- if (typeof this.native.pendingStdinRequests !== "function") {
340
- return [];
341
- }
342
- return this.native.pendingStdinRequests();
343
- }
344
365
  async materializeVariable(selector, options) {
345
366
  this.ensureActive();
346
367
  requireNativeFunction(this.native, "materializeVariable");
@@ -363,7 +384,12 @@ class WebRunMatSession {
363
384
  if (typeof this.native.fusionPlanForSource !== "function") {
364
385
  throw new Error("The loaded runmat-wasm module does not expose fusionPlanForSource yet.");
365
386
  }
366
- return this.native.fusionPlanForSource(source) ?? null;
387
+ try {
388
+ return this.native.fusionPlanForSource(source) ?? null;
389
+ }
390
+ catch (error) {
391
+ throw coerceRunMatError(error);
392
+ }
367
393
  }
368
394
  }
369
395
  function ensureFsProvider(provider) {
@@ -385,6 +411,46 @@ function requireNativeFunction(native, method) {
385
411
  throw new Error(`The loaded runmat-wasm module does not expose ${String(method)} yet.`);
386
412
  }
387
413
  }
414
+ function isRunMatErrorPayload(value) {
415
+ if (!value || typeof value !== "object") {
416
+ return false;
417
+ }
418
+ const payload = value;
419
+ return (typeof payload.kind === "string" &&
420
+ typeof payload.message === "string" &&
421
+ typeof payload.diagnostic === "string");
422
+ }
423
+ function coerceRunMatError(value) {
424
+ if (isRunMatErrorPayload(value)) {
425
+ return new RunMatExecutionError({
426
+ kind: value.kind,
427
+ message: value.message,
428
+ identifier: value.identifier,
429
+ diagnostic: value.diagnostic,
430
+ span: value.span,
431
+ callstack: value.callstack ?? [],
432
+ callstackElided: value.callstackElided
433
+ });
434
+ }
435
+ if (value instanceof RunMatExecutionError) {
436
+ return value;
437
+ }
438
+ if (value instanceof Error) {
439
+ return new RunMatExecutionError({
440
+ kind: "runtime",
441
+ message: value.message,
442
+ diagnostic: value.message,
443
+ callstack: []
444
+ });
445
+ }
446
+ const message = String(value ?? "RunMat execution failed");
447
+ return new RunMatExecutionError({
448
+ kind: "runtime",
449
+ message,
450
+ diagnostic: message,
451
+ callstack: []
452
+ });
453
+ }
388
454
  function isFigureErrorPayload(value) {
389
455
  return (typeof value === "object" &&
390
456
  value !== null &&
@@ -543,22 +609,6 @@ function toUint8Array(data) {
543
609
  }
544
610
  throw new Error("Unsupported snapshot buffer type");
545
611
  }
546
- function normalizeResumeInputValue(input) {
547
- if (isResumeInputPayload(input)) {
548
- if (typeof input.error === "string") {
549
- return { error: input.error };
550
- }
551
- if (input.kind === "keyPress") {
552
- return { kind: "keyPress" };
553
- }
554
- const raw = input.value ?? input.line;
555
- return { kind: "line", value: coerceResumeValue(raw) };
556
- }
557
- if (input === null || input === undefined) {
558
- return { kind: "line", value: "" };
559
- }
560
- return { kind: "line", value: String(input) };
561
- }
562
612
  function normalizeMaterializeSelector(selector) {
563
613
  if (typeof selector === "string") {
564
614
  const trimmed = selector.trim();
@@ -593,32 +643,41 @@ function normalizeMaterializeOptions(options) {
593
643
  payload.limit = limit;
594
644
  }
595
645
  }
596
- return payload;
597
- }
598
- function coerceResumeValue(value) {
599
- if (value === undefined) {
600
- return "";
646
+ if (options.slice) {
647
+ const start = normalizeSliceVector(options.slice.start, false);
648
+ const shape = normalizeSliceVector(options.slice.shape, true);
649
+ if (start && shape) {
650
+ payload.slice = { start, shape };
651
+ }
601
652
  }
602
- return String(value);
653
+ return payload;
603
654
  }
604
- function isResumeInputPayload(value) {
605
- if (value === null || value === undefined) {
606
- return false;
655
+ function normalizeSliceVector(values, requirePositive = false) {
656
+ if (!Array.isArray(values) || values.length === 0) {
657
+ return undefined;
607
658
  }
608
- if (typeof value !== "object") {
609
- return false;
659
+ const normalized = [];
660
+ for (const raw of values) {
661
+ if (typeof raw !== "number" || !Number.isFinite(raw)) {
662
+ return undefined;
663
+ }
664
+ const base = Math.floor(raw);
665
+ if (requirePositive) {
666
+ if (base <= 0) {
667
+ return undefined;
668
+ }
669
+ normalized.push(base);
670
+ }
671
+ else {
672
+ normalized.push(Math.max(0, base));
673
+ }
610
674
  }
611
- const payload = value;
612
- return ("value" in payload ||
613
- "line" in payload ||
614
- "kind" in payload ||
615
- "error" in payload);
675
+ return normalized;
616
676
  }
617
677
  export const __internals = {
618
678
  resolveSnapshotSource,
619
679
  fetchSnapshotFromUrl,
620
680
  coerceFigureError,
621
- normalizeResumeInputValue,
622
681
  workspaceHover: workspaceHoverInternals,
623
682
  setNativeModuleOverride(module) {
624
683
  nativeModuleOverride = module;