@ttsc/wasm 0.14.0-dev.20260529.2 → 0.14.1

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.
@@ -2,9 +2,9 @@
2
2
  * Filesystem error with a POSIX error code and numeric `errno`.
3
3
  *
4
4
  * Matches the shape of `NodeJS.ErrnoException` so Go's `os` package interprets
5
- * it as a proper `os.PathError` with a numeric error code. Thrown by the
6
- * MemFS implementation when a callback would otherwise pass `null` for an
7
- * impossible filesystem operation (missing path, type mismatch, …).
5
+ * it as a proper `os.PathError` with a numeric error code. Thrown by the MemFS
6
+ * implementation when a callback would otherwise pass `null` for an impossible
7
+ * filesystem operation (missing path, type mismatch, …).
8
8
  */
9
9
  export declare class MemFSError extends Error {
10
10
  code: string;
@@ -5,9 +5,9 @@ exports.MemFSError = void 0;
5
5
  * Filesystem error with a POSIX error code and numeric `errno`.
6
6
  *
7
7
  * Matches the shape of `NodeJS.ErrnoException` so Go's `os` package interprets
8
- * it as a proper `os.PathError` with a numeric error code. Thrown by the
9
- * MemFS implementation when a callback would otherwise pass `null` for an
10
- * impossible filesystem operation (missing path, type mismatch, …).
8
+ * it as a proper `os.PathError` with a numeric error code. Thrown by the MemFS
9
+ * implementation when a callback would otherwise pass `null` for an impossible
10
+ * filesystem operation (missing path, type mismatch, …).
11
11
  */
12
12
  class MemFSError extends Error {
13
13
  code;
@@ -4,18 +4,18 @@ import type { IBootTtscOptions } from "./structures/IBootTtscOptions";
4
4
  * Boot a host-built wasm. Re-entrant only if you reuse the same `host`.
5
5
  *
6
6
  * Concurrent calls with the same `(apiName, wasmUrl)` pair share the same
7
- * in-flight boot. Calls with the same `apiName` but different `wasmUrl`
8
- * are serialized via `bootChainByApiName` so they don't race on the
9
- * shared `globalThis[apiName+"Ready"]` resolver slot. On rejection the
10
- * cache entries are cleared so the next call retries from scratch.
7
+ * in-flight boot. Calls with the same `apiName` but different `wasmUrl` are
8
+ * serialized via `bootChainByApiName` so they don't race on the shared
9
+ * `globalThis[apiName+"Ready"]` resolver slot. On rejection the cache entries
10
+ * are cleared so the next call retries from scratch.
11
11
  *
12
- * **Single-Worker caveat.** Even with the chain, a second boot loaded
13
- * into the SAME Worker after a first boot completes will overlay its
14
- * Go runtime on top of the first — `importScripts(wasmExecUrl)` rebinds
15
- * `globalThis.Go`, and the first wasm's keepalive goroutine keeps
16
- * running through the new runtime's js-bridge tables. The serialization
17
- * is sufficient for the typical use case (one boot per Worker over the
18
- * page's lifetime) but DOES NOT make a Worker safe to host two wasm
19
- * instances at once. Create a fresh Worker per concurrent wasm.
12
+ * **Single-Worker caveat.** Even with the chain, a second boot loaded into the
13
+ * SAME Worker after a first boot completes will overlay its Go runtime on top
14
+ * of the first — `importScripts(wasmExecUrl)` rebinds `globalThis.Go`, and the
15
+ * first wasm's keepalive goroutine keeps running through the new runtime's
16
+ * js-bridge tables. The serialization is sufficient for the typical use case
17
+ * (one boot per Worker over the page's lifetime) but DOES NOT make a Worker
18
+ * safe to host two wasm instances at once. Create a fresh Worker per concurrent
19
+ * wasm.
20
20
  */
21
21
  export declare function bootTtsc(options: IBootTtscOptions): Promise<IBootResult>;
@@ -1,4 +1,6 @@
1
1
  "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.bootTtsc = bootTtsc;
2
4
  // Boots a host-built wasm and returns the JS-side handle.
3
5
  //
4
6
  // Order of operations matters: wasm_exec.js installs default no-op fs/process
@@ -8,37 +10,34 @@
8
10
  // The boot helper is parameterized by `apiName` so any wasm built with
9
11
  // `host.Expose(...)` can be loaded the same way. The base wasm uses "ttsc";
10
12
  // downstream consumers pick their own (e.g. "ttscPlayground", "ttscTypia").
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.bootTtsc = bootTtsc;
13
13
  const createMemFS_1 = require("./createMemFS");
14
14
  /**
15
- * Per-(apiName, wasmUrl) single-flight cache for boots. Keying on apiName
16
- * alone would let a second call with the same apiName but a different
17
- * wasmUrl silently return the cached IBootResult of the first wasm — the
18
- * caller would think they booted a fresh binary while the cached one
19
- * stayed in place. The composite key lets HMR / cache-busting query
20
- * strings get a fresh boot while still single-flighting genuine concurrent
21
- * duplicate calls.
15
+ * Per-(apiName, wasmUrl) single-flight cache for boots. Keying on apiName alone
16
+ * would let a second call with the same apiName but a different wasmUrl
17
+ * silently return the cached IBootResult of the first wasm — the caller would
18
+ * think they booted a fresh binary while the cached one stayed in place. The
19
+ * composite key lets HMR / cache-busting query strings get a fresh boot while
20
+ * still single-flighting genuine concurrent duplicate calls.
22
21
  */
23
22
  const bootsInFlight = new Map();
24
23
  /**
25
- * Per-apiName serialization chain. Two concurrent boots with the same
26
- * apiName but different wasmUrls each install their own `globalThis[apiName
27
- * + "Ready"]` resolver — they would race and the second would overwrite
28
- * the first, stranding the first boot's await. The chain serializes them
29
- * so one boot's Go-side `Ready.Invoke()` always lands on the resolver
30
- * that boot installed.
24
+ * Per-apiName serialization chain. Two concurrent boots with the same apiName
25
+ * but different wasmUrls each install their own `globalThis[apiName
26
+ *
27
+ * - "Ready"]`resolver they would race and the second would overwrite the first,
28
+ * stranding the first boot's await. The chain serializes them so one boot's
29
+ * Go-side`Ready.Invoke()` always lands on the resolver that boot installed.
31
30
  */
32
31
  const bootChainByApiName = new Map();
33
32
  function bootKey(apiName, wasmUrl) {
34
33
  return `${apiName}|${resolveWasmUrl(wasmUrl)}`;
35
34
  }
36
35
  /**
37
- * Resolve `wasmUrl` against the current document base before keying so
38
- * that `./playground.wasm`, `/compiler/playground.wasm`, and the fully
39
- * qualified absolute href all collapse to the same cache entry instead
40
- * of spawning duplicate boots. Falls back to the raw string when no
41
- * base is available (Node-side tests, non-DOM workers).
36
+ * Resolve `wasmUrl` against the current document base before keying so that
37
+ * `./playground.wasm`, `/compiler/playground.wasm`, and the fully qualified
38
+ * absolute href all collapse to the same cache entry instead of spawning
39
+ * duplicate boots. Falls back to the raw string when no base is available
40
+ * (Node-side tests, non-DOM workers).
42
41
  */
43
42
  function resolveWasmUrl(wasmUrl) {
44
43
  try {
@@ -53,19 +52,19 @@ function resolveWasmUrl(wasmUrl) {
53
52
  * Boot a host-built wasm. Re-entrant only if you reuse the same `host`.
54
53
  *
55
54
  * Concurrent calls with the same `(apiName, wasmUrl)` pair share the same
56
- * in-flight boot. Calls with the same `apiName` but different `wasmUrl`
57
- * are serialized via `bootChainByApiName` so they don't race on the
58
- * shared `globalThis[apiName+"Ready"]` resolver slot. On rejection the
59
- * cache entries are cleared so the next call retries from scratch.
55
+ * in-flight boot. Calls with the same `apiName` but different `wasmUrl` are
56
+ * serialized via `bootChainByApiName` so they don't race on the shared
57
+ * `globalThis[apiName+"Ready"]` resolver slot. On rejection the cache entries
58
+ * are cleared so the next call retries from scratch.
60
59
  *
61
- * **Single-Worker caveat.** Even with the chain, a second boot loaded
62
- * into the SAME Worker after a first boot completes will overlay its
63
- * Go runtime on top of the first — `importScripts(wasmExecUrl)` rebinds
64
- * `globalThis.Go`, and the first wasm's keepalive goroutine keeps
65
- * running through the new runtime's js-bridge tables. The serialization
66
- * is sufficient for the typical use case (one boot per Worker over the
67
- * page's lifetime) but DOES NOT make a Worker safe to host two wasm
68
- * instances at once. Create a fresh Worker per concurrent wasm.
60
+ * **Single-Worker caveat.** Even with the chain, a second boot loaded into the
61
+ * SAME Worker after a first boot completes will overlay its Go runtime on top
62
+ * of the first — `importScripts(wasmExecUrl)` rebinds `globalThis.Go`, and the
63
+ * first wasm's keepalive goroutine keeps running through the new runtime's
64
+ * js-bridge tables. The serialization is sufficient for the typical use case
65
+ * (one boot per Worker over the page's lifetime) but DOES NOT make a Worker
66
+ * safe to host two wasm instances at once. Create a fresh Worker per concurrent
67
+ * wasm.
69
68
  */
70
69
  function bootTtsc(options) {
71
70
  const apiName = options.apiName ?? "ttsc";
@@ -154,8 +153,8 @@ function defaultWasmExecUrl(wasmUrl) {
154
153
  *
155
154
  * Go's js/wasm bridge reads `process.pid`, `process.ppid`, and calls
156
155
  * `process.cwd()`. `getuid`/`getgid` and friends return `-1` (root-less).
157
- * `umask` and `getgroups` are never exercised by the compiler but are
158
- * included for completeness so unexpected calls surface as clear errors.
156
+ * `umask` and `getgroups` are never exercised by the compiler but are included
157
+ * for completeness so unexpected calls surface as clear errors.
159
158
  */
160
159
  function createProcessShim() {
161
160
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"bootTtsc.js","sourceRoot":"","sources":["../../src/bootTtsc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bootTtsc.js","sourceRoot":"","sources":["../../src/bootTtsc.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createMemFS = createMemFS;
2
4
  // MemFS implements just enough of the wasm_exec.js fs interface for an
3
5
  // in-browser ttsc wasm to run.
4
6
  //
@@ -15,8 +17,6 @@
15
17
  // Files are stored as Uint8Array. String input passed to writeFile is encoded,
16
18
  // byte input is copied, and readFile returns a copy so callers cannot mutate
17
19
  // stored filesystem state by keeping a reference.
18
- Object.defineProperty(exports, "__esModule", { value: true });
19
- exports.createMemFS = createMemFS;
20
20
  const MemFSError_1 = require("./MemFSError");
21
21
  /** Mode bits exposed by stat. We only differentiate file vs directory. */
22
22
  const S_IFDIR = 0o040000;
@@ -1 +1 @@
1
- {"version":3,"file":"createMemFS.js","sourceRoot":"","sources":["../../src/createMemFS.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createMemFS.js","sourceRoot":"","sources":["../../src/createMemFS.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,7 @@ import type { ITtscResult } from "./structures/ITtscResult";
2
2
  /**
3
3
  * Parse the `result` field of an ITtscResult into the structured payload.
4
4
  *
5
- * The wasm returns JSON as a string because `js.ValueOf` does not handle
6
- * large nested maps efficiently. Callers JSON.parse exactly once at the
7
- * boundary.
5
+ * The wasm returns JSON as a string because `js.ValueOf` does not handle large
6
+ * nested maps efficiently. Callers JSON.parse exactly once at the boundary.
8
7
  */
9
8
  export declare function parseResult<T>(result: ITtscResult): T | null;
@@ -4,9 +4,8 @@ exports.parseResult = parseResult;
4
4
  /**
5
5
  * Parse the `result` field of an ITtscResult into the structured payload.
6
6
  *
7
- * The wasm returns JSON as a string because `js.ValueOf` does not handle
8
- * large nested maps efficiently. Callers JSON.parse exactly once at the
9
- * boundary.
7
+ * The wasm returns JSON as a string because `js.ValueOf` does not handle large
8
+ * nested maps efficiently. Callers JSON.parse exactly once at the boundary.
10
9
  */
11
10
  function parseResult(result) {
12
11
  if (!result.result)
@@ -1 +1 @@
1
- {"version":3,"file":"parseResult.js","sourceRoot":"","sources":["../../src/parseResult.ts"],"names":[],"mappings":";;;AAEA;;;;;;GAMG;AACH,qBAA+B,MAAmB;IAChD,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAM,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"parseResult.js","sourceRoot":"","sources":["../../src/parseResult.ts"],"names":[],"mappings":";;;AAEA;;;;;GAKG;AACH,qBAA+B,MAAmB;IAChD,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAM,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -6,16 +6,15 @@ export interface IBootTtscOptions {
6
6
  /** URL of wasm_exec.js. Defaults to the same directory as wasmUrl. */
7
7
  wasmExecUrl?: string;
8
8
  /**
9
- * GlobalThis property name the wasm binds. Must match the value the wasm
10
- * was built with (the `apiName` passed to `host.Expose`). Defaults to
11
- * `"ttsc"`.
9
+ * GlobalThis property name the wasm binds. Must match the value the wasm was
10
+ * built with (the `apiName` passed to `host.Expose`). Defaults to `"ttsc"`.
12
11
  */
13
12
  apiName?: string;
14
13
  /**
15
- * Optional pre-existing MemFS host. When omitted, a fresh one is created
16
- * and stored on the returned BootResult. Pass an existing host when you
17
- * want to boot multiple wasms over the same filesystem (e.g. base ttsc + a
18
- * typia wasm) so they share project sources.
14
+ * Optional pre-existing MemFS host. When omitted, a fresh one is created and
15
+ * stored on the returned BootResult. Pass an existing host when you want to
16
+ * boot multiple wasms over the same filesystem (e.g. base ttsc + a typia
17
+ * wasm) so they share project sources.
19
18
  */
20
19
  host?: IMemFSHost;
21
20
  }
@@ -1,7 +1,7 @@
1
1
  import type { ITtscBuildOpts } from "./ITtscBuildOpts";
2
+ import type { ITtscFileQuery } from "./ITtscFileQuery";
2
3
  import type { ITtscPluginOpts } from "./ITtscPluginOpts";
3
4
  import type { ITtscPositionQuery } from "./ITtscPositionQuery";
4
- import type { ITtscFileQuery } from "./ITtscFileQuery";
5
5
  import type { ITtscResult } from "./ITtscResult";
6
6
  import type { ITtscSnapshotHandle } from "./ITtscSnapshotHandle";
7
7
  import type { ITtscVersion } from "./ITtscVersion";
@@ -33,8 +33,8 @@ export interface ITtscApi {
33
33
  transform(opts: ITtscBuildOpts): Promise<ITtscResult>;
34
34
  /**
35
35
  * Dispatch a registered plugin's subcommand. Returns the captured stdout /
36
- * stderr (the same streams the native sidecar binary would write to)
37
- * together with the exit code.
36
+ * stderr (the same streams the native sidecar binary would write to) together
37
+ * with the exit code.
38
38
  */
39
39
  plugin(opts: ITtscPluginOpts): Promise<ITtscResult>;
40
40
  /** Names of the plugins this wasm was built with. */
@@ -64,8 +64,8 @@ export interface ITtscApi {
64
64
  */
65
65
  getSourceFileText(opts: ITtscFileQuery): Promise<ITtscResult>;
66
66
  /**
67
- * Diagnostics from the snapshot's program. Pass `file` to filter to a
68
- * single project-relative path.
67
+ * Diagnostics from the snapshot's program. Pass `file` to filter to a single
68
+ * project-relative path.
69
69
  */
70
70
  getDiagnostics(opts: ITtscSnapshotHandle & {
71
71
  file?: string;
@@ -2,8 +2,8 @@ import type { ITtscDiagnostic } from "./ITtscDiagnostic";
2
2
  /**
3
3
  * Structured payload inside `ITtscResult.result` for `build` and `check`.
4
4
  *
5
- * `output` maps emit-destination paths (relative to `cwd`) to file contents.
6
- * It is empty when `check` is called without emit.
5
+ * `output` maps emit-destination paths (relative to `cwd`) to file contents. It
6
+ * is empty when `check` is called without emit.
7
7
  */
8
8
  export interface ITtscCompileResult {
9
9
  diagnostics?: ITtscDiagnostic[];
@@ -1,5 +1,8 @@
1
1
  import type { ITtscFileQuery } from "./ITtscFileQuery";
2
- /** Request shape for `getNodeAtPosition`, `getTypeAtPosition`, `getSymbolAtPosition`. */
2
+ /**
3
+ * Request shape for `getNodeAtPosition`, `getTypeAtPosition`,
4
+ * `getSymbolAtPosition`.
5
+ */
3
6
  export interface ITtscPositionQuery extends ITtscFileQuery {
4
7
  /**
5
8
  * Byte offset into the file's source text. JS callers with a UTF-16
@@ -3,8 +3,8 @@ import type { ITtscDiagnostic } from "./ITtscDiagnostic";
3
3
  * Structured payload inside `ITtscResult.result` for `transform`.
4
4
  *
5
5
  * `typescript` maps source file paths (relative to `cwd`) to their
6
- * post-transform TypeScript text — useful for playgrounds that want to show
7
- * the rewritten source before it is emitted.
6
+ * post-transform TypeScript text — useful for playgrounds that want to show the
7
+ * rewritten source before it is emitted.
8
8
  */
9
9
  export interface ITtscTransformResult {
10
10
  diagnostics?: ITtscDiagnostic[];
@@ -37,9 +37,9 @@ export interface IWasmExecFS {
37
37
  ftruncate(fd: number, length: number, callback: (err: NodeJS.ErrnoException | null) => void): void;
38
38
  /**
39
39
  * `pipe2` is what Go's wasm `os.Pipe()` calls. Returns two fds: a read end
40
- * and a write end. The host's stdout/stderr capture currently uses MemFS
41
- * temp files, but this keeps direct pipe callers compatible with the wasm
42
- * fs surface.
40
+ * and a write end. The host's stdout/stderr capture currently uses MemFS temp
41
+ * files, but this keeps direct pipe callers compatible with the wasm fs
42
+ * surface.
43
43
  */
44
44
  pipe2(flags: number, callback: (err: NodeJS.ErrnoException | null, fds: [number, number]) => void): void;
45
45
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ttsc/wasm",
3
- "version": "0.14.0-dev.20260529.2",
3
+ "version": "0.14.1",
4
4
  "description": "Build in-browser ttsc playgrounds. Compose ttsc + typescript-go with your own plugins via the Go host helper.",
5
5
  "main": "lib/src/index.js",
6
6
  "types": "lib/src/index.d.ts",
@@ -38,7 +38,7 @@
38
38
  "homepage": "https://ttsc.dev",
39
39
  "devDependencies": {
40
40
  "@types/node": "^25.3.0",
41
- "@typescript/native-preview": "7.0.0-dev.20260527.2",
41
+ "@typescript/native-preview": "7.0.0-dev.20260519.1",
42
42
  "rimraf": "^6.1.2"
43
43
  },
44
44
  "scripts": {
package/src/MemFSError.ts CHANGED
@@ -2,9 +2,9 @@
2
2
  * Filesystem error with a POSIX error code and numeric `errno`.
3
3
  *
4
4
  * Matches the shape of `NodeJS.ErrnoException` so Go's `os` package interprets
5
- * it as a proper `os.PathError` with a numeric error code. Thrown by the
6
- * MemFS implementation when a callback would otherwise pass `null` for an
7
- * impossible filesystem operation (missing path, type mismatch, …).
5
+ * it as a proper `os.PathError` with a numeric error code. Thrown by the MemFS
6
+ * implementation when a callback would otherwise pass `null` for an impossible
7
+ * filesystem operation (missing path, type mismatch, …).
8
8
  */
9
9
  export class MemFSError extends Error {
10
10
  public code: string;
package/src/bootTtsc.ts CHANGED
@@ -7,7 +7,6 @@
7
7
  // The boot helper is parameterized by `apiName` so any wasm built with
8
8
  // `host.Expose(...)` can be loaded the same way. The base wasm uses "ttsc";
9
9
  // downstream consumers pick their own (e.g. "ttscPlayground", "ttscTypia").
10
-
11
10
  import { createMemFS } from "./createMemFS";
12
11
  import type { IBootResult } from "./structures/IBootResult";
13
12
  import type { IBootTtscOptions } from "./structures/IBootTtscOptions";
@@ -16,23 +15,22 @@ import type { ITtscApi } from "./structures/ITtscApi";
16
15
  declare const importScripts: (...urls: string[]) => void;
17
16
 
18
17
  /**
19
- * Per-(apiName, wasmUrl) single-flight cache for boots. Keying on apiName
20
- * alone would let a second call with the same apiName but a different
21
- * wasmUrl silently return the cached IBootResult of the first wasm — the
22
- * caller would think they booted a fresh binary while the cached one
23
- * stayed in place. The composite key lets HMR / cache-busting query
24
- * strings get a fresh boot while still single-flighting genuine concurrent
25
- * duplicate calls.
18
+ * Per-(apiName, wasmUrl) single-flight cache for boots. Keying on apiName alone
19
+ * would let a second call with the same apiName but a different wasmUrl
20
+ * silently return the cached IBootResult of the first wasm — the caller would
21
+ * think they booted a fresh binary while the cached one stayed in place. The
22
+ * composite key lets HMR / cache-busting query strings get a fresh boot while
23
+ * still single-flighting genuine concurrent duplicate calls.
26
24
  */
27
25
  const bootsInFlight = new Map<string, Promise<IBootResult>>();
28
26
 
29
27
  /**
30
- * Per-apiName serialization chain. Two concurrent boots with the same
31
- * apiName but different wasmUrls each install their own `globalThis[apiName
32
- * + "Ready"]` resolver — they would race and the second would overwrite
33
- * the first, stranding the first boot's await. The chain serializes them
34
- * so one boot's Go-side `Ready.Invoke()` always lands on the resolver
35
- * that boot installed.
28
+ * Per-apiName serialization chain. Two concurrent boots with the same apiName
29
+ * but different wasmUrls each install their own `globalThis[apiName
30
+ *
31
+ * - "Ready"]`resolver they would race and the second would overwrite the first,
32
+ * stranding the first boot's await. The chain serializes them so one boot's
33
+ * Go-side`Ready.Invoke()` always lands on the resolver that boot installed.
36
34
  */
37
35
  const bootChainByApiName = new Map<string, Promise<unknown>>();
38
36
 
@@ -41,11 +39,11 @@ function bootKey(apiName: string, wasmUrl: string): string {
41
39
  }
42
40
 
43
41
  /**
44
- * Resolve `wasmUrl` against the current document base before keying so
45
- * that `./playground.wasm`, `/compiler/playground.wasm`, and the fully
46
- * qualified absolute href all collapse to the same cache entry instead
47
- * of spawning duplicate boots. Falls back to the raw string when no
48
- * base is available (Node-side tests, non-DOM workers).
42
+ * Resolve `wasmUrl` against the current document base before keying so that
43
+ * `./playground.wasm`, `/compiler/playground.wasm`, and the fully qualified
44
+ * absolute href all collapse to the same cache entry instead of spawning
45
+ * duplicate boots. Falls back to the raw string when no base is available
46
+ * (Node-side tests, non-DOM workers).
49
47
  */
50
48
  function resolveWasmUrl(wasmUrl: string): string {
51
49
  try {
@@ -61,19 +59,19 @@ function resolveWasmUrl(wasmUrl: string): string {
61
59
  * Boot a host-built wasm. Re-entrant only if you reuse the same `host`.
62
60
  *
63
61
  * Concurrent calls with the same `(apiName, wasmUrl)` pair share the same
64
- * in-flight boot. Calls with the same `apiName` but different `wasmUrl`
65
- * are serialized via `bootChainByApiName` so they don't race on the
66
- * shared `globalThis[apiName+"Ready"]` resolver slot. On rejection the
67
- * cache entries are cleared so the next call retries from scratch.
62
+ * in-flight boot. Calls with the same `apiName` but different `wasmUrl` are
63
+ * serialized via `bootChainByApiName` so they don't race on the shared
64
+ * `globalThis[apiName+"Ready"]` resolver slot. On rejection the cache entries
65
+ * are cleared so the next call retries from scratch.
68
66
  *
69
- * **Single-Worker caveat.** Even with the chain, a second boot loaded
70
- * into the SAME Worker after a first boot completes will overlay its
71
- * Go runtime on top of the first — `importScripts(wasmExecUrl)` rebinds
72
- * `globalThis.Go`, and the first wasm's keepalive goroutine keeps
73
- * running through the new runtime's js-bridge tables. The serialization
74
- * is sufficient for the typical use case (one boot per Worker over the
75
- * page's lifetime) but DOES NOT make a Worker safe to host two wasm
76
- * instances at once. Create a fresh Worker per concurrent wasm.
67
+ * **Single-Worker caveat.** Even with the chain, a second boot loaded into the
68
+ * SAME Worker after a first boot completes will overlay its Go runtime on top
69
+ * of the first — `importScripts(wasmExecUrl)` rebinds `globalThis.Go`, and the
70
+ * first wasm's keepalive goroutine keeps running through the new runtime's
71
+ * js-bridge tables. The serialization is sufficient for the typical use case
72
+ * (one boot per Worker over the page's lifetime) but DOES NOT make a Worker
73
+ * safe to host two wasm instances at once. Create a fresh Worker per concurrent
74
+ * wasm.
77
75
  */
78
76
  export function bootTtsc(options: IBootTtscOptions): Promise<IBootResult> {
79
77
  const apiName = options.apiName ?? "ttsc";
@@ -189,8 +187,8 @@ interface IGoInstance {
189
187
  *
190
188
  * Go's js/wasm bridge reads `process.pid`, `process.ppid`, and calls
191
189
  * `process.cwd()`. `getuid`/`getgid` and friends return `-1` (root-less).
192
- * `umask` and `getgroups` are never exercised by the compiler but are
193
- * included for completeness so unexpected calls surface as clear errors.
190
+ * `umask` and `getgroups` are never exercised by the compiler but are included
191
+ * for completeness so unexpected calls surface as clear errors.
194
192
  */
195
193
  function createProcessShim(): Record<string, unknown> {
196
194
  return {
@@ -14,7 +14,6 @@
14
14
  // Files are stored as Uint8Array. String input passed to writeFile is encoded,
15
15
  // byte input is copied, and readFile returns a copy so callers cannot mutate
16
16
  // stored filesystem state by keeping a reference.
17
-
18
17
  import { MemFSError } from "./MemFSError";
19
18
  import type { IFileStats } from "./structures/IFileStats";
20
19
  import type { IMemFSHost } from "./structures/IMemFSHost";
@@ -3,9 +3,8 @@ import type { ITtscResult } from "./structures/ITtscResult";
3
3
  /**
4
4
  * Parse the `result` field of an ITtscResult into the structured payload.
5
5
  *
6
- * The wasm returns JSON as a string because `js.ValueOf` does not handle
7
- * large nested maps efficiently. Callers JSON.parse exactly once at the
8
- * boundary.
6
+ * The wasm returns JSON as a string because `js.ValueOf` does not handle large
7
+ * nested maps efficiently. Callers JSON.parse exactly once at the boundary.
9
8
  */
10
9
  export function parseResult<T>(result: ITtscResult): T | null {
11
10
  if (!result.result) return null;
@@ -7,16 +7,15 @@ export interface IBootTtscOptions {
7
7
  /** URL of wasm_exec.js. Defaults to the same directory as wasmUrl. */
8
8
  wasmExecUrl?: string;
9
9
  /**
10
- * GlobalThis property name the wasm binds. Must match the value the wasm
11
- * was built with (the `apiName` passed to `host.Expose`). Defaults to
12
- * `"ttsc"`.
10
+ * GlobalThis property name the wasm binds. Must match the value the wasm was
11
+ * built with (the `apiName` passed to `host.Expose`). Defaults to `"ttsc"`.
13
12
  */
14
13
  apiName?: string;
15
14
  /**
16
- * Optional pre-existing MemFS host. When omitted, a fresh one is created
17
- * and stored on the returned BootResult. Pass an existing host when you
18
- * want to boot multiple wasms over the same filesystem (e.g. base ttsc + a
19
- * typia wasm) so they share project sources.
15
+ * Optional pre-existing MemFS host. When omitted, a fresh one is created and
16
+ * stored on the returned BootResult. Pass an existing host when you want to
17
+ * boot multiple wasms over the same filesystem (e.g. base ttsc + a typia
18
+ * wasm) so they share project sources.
20
19
  */
21
20
  host?: IMemFSHost;
22
21
  }